mysql啟動錯誤(wù):mysql.sock丟失,mysqld_safe報錯解決方案
我的(de)是CentOS6.3+MySQL5.1.57。重啟了一次服務器(qì)後,使用> mysql -u root -p登(dēng)陸(lù)是出現下麵的錯誤:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
於是(shì),我檢察(chá)mysql狀(zhuàng)態:
> /etc/rc.d/init.d/mysqld status
顯示stop,未運行。
>/etc/rc.d/init.d/mysqld restart
Stopping mysqld: [ OK ]
MySQL Daemon failed to start.
Starting mysqld: [ FAILED]
>ps -ef | grep mysql
root 28221 27474 0 14:18 pts/0 00:00:00 grep mysql 隻有這一條
至此,我(wǒ)可(kě)以(yǐ)確定,mysql無法啟動(dòng)。
我開始排錯,首先發(fā)現/tmp/mysql.sock不存在
>vim /etc/my.cnf
socket=/var/lib/mysql/mysql .sock
/var/lib/mysql/mysql .sock同樣不(bú)存在(zài)
>find / -name mysql.sock
顯示為空,未查詢到mysql.sock文件,mysql.sock文件丟失了(le)。
我看網(wǎng)上有人說mysql.sock套接字文件可以簡單地(dì)通過重啟服務器重新(xīn)創建得到它,
>init 6 重(chóng)啟命令
重啟後發現錯誤還是那樣,沒有任何改變,mysql.sock重啟服務(wù)器未自動生成。
接下來了解到mysql.sock是一個臨時文件(jiàn),在mysql啟動時會自動生成,我的服(fú)務器未啟動(dòng),自然就沒有mysql.sock文件。
我(wǒ)嚐試安全啟動模式,mysqld_safe試圖(tú)通過工作目錄(lù)找到(dào)服務器和數據庫,但mysqld_safe還是失敗。
>mysqld_safe &
Starting mysqld daemon with databases from ....../mysql/var
STOPPING server from pid file .......pid
130802 15:17:11 mysqld ended
各種命令嚐試無效的情況下,我開始了本次最(zuì)大的收獲----學(xué)會看錯誤日(rì)誌。
在錯誤(wù)日誌中(zhōng),啟(qǐ)動失敗的原(yuán)因極為明(míng)顯(xiǎn),file ‘./mysql-bin。000004’ not found,failed to open!
mysql開(kāi)啟了bin日誌功能,到數據庫根目錄查看該文件是存在的,可(kě)能是文件權限的問題。
>chown -R mysql:mysql /....../mysql/var
>mysqld_safe &
>/etc/rc.d/init.d/mysqld restart
Stopping mysqld: [ OK ]
Starting mysqld: [ OK]
成功啟動了!~
此時mysql.sock文(wén)件出現了,在/var/lib/mysql/mysql .sock。如下圖(tú)所示,以”s”開頭的文(wén)件都是socket文件。
> mysql -u root -p
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
/tmp/mysql.sock
解決這個錯誤很(hěn)簡單(dān),因為/tmp/mysql.sock不存在,用這樣的方法(fǎ):
>ln -s /var/lib/mysql/mysql .sock /tmp/mysql .sock
以”l”開頭的文件是軟鏈接文件。或者可以通過修改/etc/my.cnf文件來修(xiū)正它。
成功解(jiě)決了!~
就是這樣一個問題折騰(téng)了我這麽久,錯誤日誌讓它無所遁形。查看錯誤日誌可以明確(què)問(wèn)題所(suǒ)在(zài),而不是像我(wǒ)之前那樣盲目(mù)的(de)找錯。
俗話說授人以(yǐ)魚不如授人以漁,學會查看日誌,你也可以方便快捷(jié)的(de)解決問題了(le)。
錯誤(wù)使人進步,我與這個錯誤鬥爭了四個多小時,對linux的“一切(qiē)皆文件”這(zhè)句話有了更深的了解,對我學習文件係統管理(目錄樹)有很大的幫助,讓(ràng)我的思維真正的從windows操作(zuò)係(xì)統轉向成linux係統。並最(zuì)終解決問題,很有成就感,我喜歡這種感覺。
關鍵詞:mysql
閱讀本文後您有什麽(me)感(gǎn)想? 已(yǐ)有 人給出評價!
- 0
- 0
- 0
- 0
- 0
- 0