1. 问题

执行 mysql 试图连接数据库时,出现如下错误:

image_1aui0frqg1kq41i4j1odmfef1bbol.png-7.6kB

Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111)

以下记录解决这一问题时所进行的步骤,以供出现类似情况的同学参考。

2. 解决方法

Step1:

执行 cat /etc/my.conf 文件,找到 socket 文件位置:

image_1aui0mkrn9ak11gt165q1ppv1g8l12.png-6.5kB

查看这一路径下是否存在 mysql.sock 文件,如果没有则创建一个:
touch /tmp/mysql.sock

Step2:

进行完第一步后,再执行 mysql,又出现错误:

2.png-13.1kB

执行 service mysqld status/etc/rc.d/init.d/mysqld status 查看 mysql 状态时,出现如下提示:

image_1aui0vq5doamltb1220qgb1vl31r.png-4kB

此时需要执行 rm -f /var/lock/subsys/mysql,此时再执行 service mysqld status 时,提示为:

image_1aui15cq1svmouj1v7u12o7co928.png-4.4kB

Step3:

此时,执行 service mysqld start 试图启动 mysql 时,提示错误:

3.png-11.4kB

此时需要删除 mysql 安装目录下的 /data/mysql-bin.index 文件,此时执行 which mysql 查看 mysql 指令的位置:

image_1aui1cvtn1f681rtmfkh1ii11fp331.png-5.1kB

注意这里的路径是 mysql 指令的位置,mysql 的安装路径为这一路径的上上一级,即 /alidata/server/mysql

接下来执行 rm -f /path/to/mysql/data/mysql-bin.index 即可。

Step4:

此时再执行 service mysqld start 就可以成功启动 mysql 服务了:

image_1aui1h4uq1c8n1isb1rmv71v17m93e.png-6.5kB

3. 参考

  1. 出现Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ 的问题的两种解决方法 - 推酷

  2. Linux启动/停止/重启Mysql数据库的方法 - 博客园

  3. 解决Linux下MySQL启动错误Starting MySQL.Manager of pid-file quit without updating file.

  4. 启动mysql 报错,Starting MySQL.Manager of pid-file quit without updating fi

  5. MySQL: mysql is not running but lock exists 的解决方法

  6. MySQL: mysql is not running but lock exists 的解决方法

  7. Starting MySQL.Manager of pid-file quit without updating file. 的解决方法


dailybird
1.1k 声望73 粉丝

I wanna.