Reputation: 1752
Hello I cant seem to connect to my mysql server, i get the following error
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (111)
when i checked the logs , it showed me the following :
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
Upvotes: 7
Views: 36919
Reputation: 71
I had the same problem under Redhat and this page had the steps to switch the mysql directory.
service mysqld stop
mkdir /srv/mysql/
chown mysql:mysql /srv/mysql
edit /etc/mysql/my.cnf
and set datadir=/srv/mysql
& socket=/srv/mysql/mysql.sock
Additional steps are required if you are using SELinux and then finally start the server
service mysqld start
Upvotes: 4
Reputation: 423
After 2 hours of missing quality Netflix programming I just went ahead and:
chmod -R 777 /usr/local/mysql
chmod -R 777 /usr/local/mysql-5.6.19-osx10.7-x86_64
... on OSX Mavericks. PITA.
Upvotes: 0
Reputation: 21
In some cases, this error is because we have wrong permissions in log file /var/log/mysqld.log
chown mysql:mysql /var/run/mysqld
Upvotes: 2
Reputation: 3061
I had sample problem with mysql. I run under root permission but don't known why this error happen. The problem is mysql user don't have permission to create pid file in /var/run/mysqld
.
Full log could look like:
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
So the solution is assign mysql user to this directory:
# chown mysql:mysql /var/run/mysqld
and then start mysqld
# service mysqld start
Upvotes: 13