0

我正在尝试通过以下方式在 Linux 中连接 mysql 5.6:

[C003@C-003 mysql]$ mysql -u root -p
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

我正在克服错误。我发现了很多提示,但没有一个对我有用,而且我不能为 Live 服务器冒这么大的风险。

一些命令输出如下:

[C003@C-003 mysql]$ service mysql status
ERROR! MySQL is running but PID file could not be found

[C003@C-003 mysql]$ ps -ef|grep mysql
root      1419     1  0 Apr28 ?        00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/lib/mysql/SI-CloudDB-003.pid
mysql     1731  1419  6 Apr28 ?        20:58:36 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/lib/mysql/SI-CloudDB-003.err --pid-file=/var/lib/mysql/SI-CloudDB-003.pid --socket=/var/lib/mysql/mysql.sock --port=3310
501      30843 28738  0 11:41 pts/2    00:00:00 grep mysql
4

3 回答 3

1

如果您更改了默认数据目录位置,则会出现此问题。
在这种情况下,您需要创建软链接。请按照以下步骤操作:

Step1:停止数据库服务

服务 mysqld 停止

第二步:在默认位置创建软链接,即 /var/lib 指向新的数据库数据位置。

ln -s /Data/lib/mysql mysql

Step3:重启mysqld服务

服务 mysqld 重启

你应该能够连接mysql数据库...

于 2018-10-30T06:38:46.303 回答
0

问题已修复。我在 /var/lib/mysql/mysql.sock 创建文件并将所有权设置为 MySQL 用户和组。当尝试关闭服务时,我收到错误“无法通过套接字'/var/mysql/mysql.sock'连接到本地 MySQL 服务器”。我通过kill -9 process_id杀掉mysql后台进程,然后启动mysql服务。现在它工作正常。

于 2016-05-13T09:16:09.523 回答
0

检查 /var/lib/mysql/mysql.sock 是否存在以及文件有什么所有权/权限

于 2016-05-12T12:02:42.493 回答