前些天我配置mysql主從時修改了MySQL的配置文件my.cnf,但重啟時總是有問題
提示
Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'
具體原因記不起了,由於時間太久(教訓,以後要及時寫文檔!)
就說說解決辦法吧:
root@zby:~# /etc/init.d/mysql restart 是啟動不了了
網上說可能是/var/run/mysqld的權限的問題,不過,我是通過apt-get install 安裝的,不會出現此問題
root@zby:/var/run/mysqld# ll /var/run/mysqld/
drwxr-xr-x 2 mysql root 80 2011-05-25 09:25 ./
顯示屬主是mysql,沒有問題
此時可以通過下面方法解決:
root@zby:/usr/bin# /usr/bin/mysql_install_db
Installing MySQL system tables...
OK
Filling help tables...
OK
To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system
…………
root@zby:~#/etc/init.d/mysql start
此時不出意外,/var/run/mysql/下就有mysqld.sock文件了
root@zby:~# ls /var/run/mysqld/
mysqld.pid mysqld.sock
mysql_install_db 腳本的目的是生成新的MySQL授權表。它不覆蓋已有的MySQL授權表,並且它不影響任何其它數據。如果你想要重新創建授權表,首先停止mysqld服務器(如果它正運行)