无法连接到Mysql服务器;Can';t创建/写入pid文件
你好,我似乎无法连接到我的mysql服务器,我得到以下错误无法连接到Mysql服务器;Can';t创建/写入pid文件,mysql,database,Mysql,Database,你好,我似乎无法连接到我的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 rea
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
我在Redhat下也遇到了同样的问题,并且有切换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
我有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
在某些情况下,此错误是因为我们在日志文件/var/log/mysqld.log中拥有错误的权限
chown mysql:mysql /var/run/mysqld
在错过了两个小时的高质量Netflix编程之后,我继续进行并:
chmod -R 777 /usr/local/mysql
chmod -R 777 /usr/local/mysql-5.6.19-osx10.7-x86_64
。。。在OSX小牛上。PITA.请注意,这是不鼓励的,因此答案应该是搜索解决方案的终点(与参考文献的另一个中途停留相比,随着时间的推移,这些参考文献往往会过时)。请考虑在这里添加一个独立的概要,保持链接作为参考。你是说?通过读取链接URL,“在启用selinux的情况下更改默认的mysql数据目录”,我pressume OP的问题是selinux的问题。更改为777当然有效(尝试过了,也成功了),但肯定有一种不太允许的方法。775?不过对我有用…本地机器,没什么好隐瞒的