[ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111)]

[ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111)]

背景:

由于我新加了块云盘,挂载到/database下,后期mysql存储数据用这个盘,mysql存储文件的目录是/var/lib/mysql,于是我把这个目录mv到了/database/mysqldb下.由于是rpm安装方式,初次启动则是初始化.我在未启动时先更改了/etc/my.cnf配置文件的路径

[mysqld]

datadir=/database/mysqldb/mysql
socket=/database/mysqldb/mysql/mysql.sock

检查了移动后的目录文件的权限,再执行了一下

[root@long mysqldb]# chown -R mysql.mysql mysql/

在没问题的情况下启动了service mysqld start

初始化成功却登录不进去mysql.报错如下:

[ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111)]

解决问题:

mysql连接一般有两种方式 TCP/IP 和socket

TCP/IP用于远程连接 客户端和服务端的关系

socket连接用于本地服务和数据之间的 管道连接 每次登陆数据库刷新mysql.sock

不能通过mysql.sock连接MySQL问题 这个问题主要提示是,不能通过 ‘/tmp/mysql.sock’连到服务器,

可以通过修改/etc/my.cnf文件来修正它.

于是我在配置文件里加了这行,完美解决,路径都是正确的.后来又在测试环境做了一遍,没问题

[mysql]
socket=/database/mysqldb/mysql/mysql.sock

猜你喜欢

转载自www.cnblogs.com/longren/p/12133164.html