新手教程 Centos7安装二进制mysql 及遇到问题记录

Centos7 离线安装mysql 5.6详细步骤 详细安装方法可查看这篇文章

小知识点

linux 安装mysql 是有默认安装位置的分别有:

  • 默认安装位置: /usr/local/ 将下载二进制文件解压后并改名为 mysql 目录(避免一些目录问题)
  • 配置文件位置:/etc/my.cnf 避免错误可将安装后的mysql 目录下 /support-files/my-default.cnf 文件拷贝到 /etc/my.cnf 代码>cp XXXX/support-files/my-default.cnf /etc/my.cnf

遇到问题 汇总##

  • 找到不指定启动目录 无法启动
    解决方案:一般是由于没将安装目录改为mysql 名称引起
    1.到自己所在目录执行启动
    2.修改mysql 默认配置文件为你所在修改的新位置
    3.就是将目录修改成mysql ps:我使用的这个方法
  • 启动时报:
    mysqladmin: unknown variable ‘sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES’
    -解决方案:将配置文件最下面这句话删除
    sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
  • 登录用户时报:
    error: ‘Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.soc’ (2)’
    解决方案:由于在配置文件中加了mysql.soc
    其作用:程序与mysqlserver处于同一台机器,发起本地连接时可用
    1.首先解决不能登录的问题
    解决方法查看这篇文章 测试之后发现虽说能登录了,但是改了数据库root用户密码, 使用密码登录还出现问题,还报这个错。。。
    2.无法使用新密码登录 还报上面错误
    个人分析:我觉的 mysql 启动时会从指定位置寻找mysql.soc文件,虽说我们指定文件了,mysql也找到了,但是他只是说你得告诉你的这个mysql.soc在哪并让我查看验证通过,我才让你登录。
    感觉就像java 里的证书一样,所以咱得把所谓的这个证书去掉,遂停止mysql 服务后 找到my.cnf文件将里面关于mysql.soc的配置去掉,启动并测试使用新密码登录,成功了

–不知道配置这个有何用处,希望看到的人能够大致说明这个配置是干啥的,如何在实际项目中使用?由于对linux 及数据库db不是专长。谢谢~

ps:linux 平时不怎么接触,主要在win在平台编程,遇到这次项目没有运维由我顶上,遇到一堆小坑 遂记录一下 -。-

  • 远程登录问题

update user set password=password(‘你的密码’) where user='root’and host=‘localhost’;
GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘你的密码’ WITH GRANT OPTION;
flush privileges;