您好我似乎无法连接到我的mysql服务器,我收到以下错误
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (111)
当我查看日志时,它显示以下内容:
130314 12:36:16 [Note] Plugin 'FEDERATED' is disabled.
/usr/sbin/mysqld: Table 'plugin' is read only
130314 12:36:16 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
130314 12:36:16 InnoDB: Initializing buffer pool, size = 8.0M
130314 12:36:16 InnoDB: Completed initialization of buffer pool
130314 12:36:16 InnoDB: Started; log sequence number 13 1336891001
130314 12:36:16 [ERROR] /usr/sbin/mysqld: Can't create/write to file '/var/lib/mysql/live.pid' (Errcode: 13)
130314 12:36:16 [ERROR] Can't start server: can't create PID file: Permission denied
答案 0 :(得分:10)
我有mysql的示例问题。我在root权限下运行但不知道为什么会发生此错误。问题是mysql用户没有权限在/var/run/mysqld
中创建pid文件。
完整日志可能如下所示:
140812 09:35:53 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
140812 9:35:53 InnoDB: Initializing buffer pool, size = 8.0M
140812 9:35:53 InnoDB: Completed initialization of buffer pool
140812 9:35:53 InnoDB: Started; log sequence number 0 197396648
140812 9:35:53 [ERROR] /usr/libexec/mysqld: Can't create/write to file '/var/run/mysqld/mysqld.pid' (Errcode: 13)
140812 9:35:53 [ERROR] Can't start server: can't create PID file: Permission denied
140812 09:35:53 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
因此解决方案是将mysql用户分配到此目录:
# chown mysql:mysql /var/run/mysqld
然后启动mysqld
# service mysqld start
答案 1 :(得分:3)
我在Redhat下遇到了同样的问题,this page有了切换mysql目录的步骤。
service mysqld stop
mkdir /srv/mysql/
chown mysql:mysql /srv/mysql
修改/etc/mysql/my.cnf
并设置datadir=/srv/mysql
& socket=/srv/mysql/mysql.sock
如果您使用SELinux然后最终启动服务器
,则需要执行其他步骤service mysqld start
答案 2 :(得分:2)
在某些情况下,此错误是因为我们在日志文件/var/log/mysqld.log中有错误的权限
chown mysql:mysql /var/run/mysqld
答案 3 :(得分:0)
经过2个小时的质量缺失Netflix编程后,我就开始了:
chmod -R 777 /usr/local/mysql
chmod -R 777 /usr/local/mysql-5.6.19-osx10.7-x86_64
...在OSX Mavericks上。 PITA。