service mysql.server start 启动失败

通过

mysqld_safe --defaults-file=/etc/my.cnf

mysql -S /usr/local/mysql/5.7.17/mysql.sock -u cg -p

命令是可以启动和连接成功的,并且client和server也可以通信,但是这样只能是在同一台linux机器上通信。
如图
server启动成功:
图片描述
client连接成功:
图片描述

但是通过service mysql.server start 启动的时候,就会报错。

请问是哪里没有配置好吗?

报错信息:
图片描述

/etc/my.cnf配置

图片描述

阅读 4.8k
2 个回答

已解决。
解决思路:
讲道理mysql应该是从
--defaults-file 指定的地址去读取配置文件
其次读取
--defaults-file-extra 指定的地方读取配置文件

这两者我都没有指定过,那么,读取的顺序应该是:

/etc/my.cnf

/etc/mysql/my.cnf

~/mysql/my.cnf

..

逐步去读取配置文件,但是启动一直报错pid文件目录找不到。
然而,我/etc/my.cnf指定的pid是
文件是 $base_dir目录,报错却不是这个目录。
因此我估计是配置文件的读取顺序和步骤跟我想象的不一样,所以我删除了其它目录的my.cnf文件。
即:删除了 /etc/mysql[my.cnf]目录

fixed。

结果解决了,但是留下一个问题,为什么首先读取的配置文件不是/etc/my.cnf文件。待了解。

试试service mysql start

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题