重啟了一次伺服器後,使用》 mysql -u root -p登陸是出現下面的錯誤:
error 2002 (hy000): can't connect to local mysql server through socket '/tmp/mysql.sock' (2)
於是,我檢察mysql狀態:
> /etc/rc.d/init.d/mysqld status
顯示stop,未執行。
>/etc/rc.d/init.d/mysqld restart
stopping mysqld: [ ok ]
starting mysqld: [ failed]
>ps -ef | grep mysql
root 28221 27474 0 14:18 pts/0 00:00:00 grep mysql 只有這一條
至此,我可以確定,mysql無法啟動。
我開始排錯,首先發現/tmp/mysql.sock不存在
>vim /etc/my.cnf
socket=/var/lib/mysql/mysql .sock
/var/lib/mysql/mysql .sock同樣不存在
>find / -name mysql.sock
顯示為空,未查找到mysql.sock檔案,mysql.sock檔案丟失了。
我看網上有人說
mysql.sock套接字檔案
可以簡單地通過重啟伺服器重新建立得到它,
>init 6 重啟命令
重啟後發現錯誤還是那樣,沒有任何改變,mysql.sock重啟伺服器未自動生成。
接下來了解到mysql.sock是乙個臨時檔案,在mysql啟動時會自動生成,我的伺服器未啟動,自然就沒有mysql.sock檔案。
我嘗試安全啟動模式,mysqld_safe試圖通過工作目錄找到伺服器和資料庫,但
mysqld_safe還是失敗。
>mysqld_safe &
starting mysqld daemon with databases from ....../mysql/var
stopping server from pid file .......pid
130802 15:17:11 mysqld ended
各種命令嘗試無效的情況下,我開始了本次最大的收穫----學會看錯誤日誌。
在錯誤日誌中,啟動失敗的原因極為明顯,file 『./mysql-bin。000004』 not found,failed to open!
mysql開啟了bin日誌功能,到資料庫根目錄檢視該檔案是存在的,可能是檔案許可權的問題。
>chown -r mysql:mysql /....../mysql/var
>mysqld_safe &
>/etc/rc.d/init.d/mysqld restart
stopping mysqld: [ ok ]
starting mysqld: [ ok]
成功啟動了!~
此時mysql.sock檔案出現了,在/var/lib/mysql/mysql .sock。如下圖所示,以」s」開頭的檔案都是socket檔案。
> mysql -u root -p
error 2002 (hy000): can't connect to local mysql server through socket '/tmp/mysql.sock' (2)
/tmp/mysql.sock
解決這個錯誤很簡單,因為/tmp/mysql.sock不存在,用這樣的方法:
>ln -s /var/lib/mysql/mysql .sock /tmp/mysql .sock
以」l」開頭的檔案是軟鏈結檔案。或者可以通過修改/etc/my.cnf檔案來修正它。
成功解決了!~
就是這樣乙個問題折騰了我這麼久,錯誤日誌讓它無所遁形。檢視錯誤日誌可以明確問題所在,而不是像我之前那樣盲目的找錯。
俗話說授人以魚不如授人以漁,學會檢視日誌,你也可以方便快捷的解決問題了。
錯誤使人進步,我與這個錯誤鬥爭了四個多小時,對linux的「一切皆檔案」這句話有了更深的了解,對我學習檔案系統管理(目錄樹)有很大的幫助,讓我的思維真正的從windows作業系統轉向成linux系統。並最終解決問題,很有成就感,我喜歡這種感覺。
資料庫無法啟動
e mysql 5.7.15 net start mysql mysql 服務正在啟動 mysql 服務無法啟動。服務沒有報告任何錯誤。請鍵入 net helpmsg 3534 以獲得更多的幫助。方法 這個錯誤沒有仍和日誌記錄,原因是my.ini中datadir所設定的目錄不存在,路徑分隔符需要採用...
docker無法正常啟動
hint some lines were ellipsized,use l to show in full.於是在網上找各種類似錯誤,有說是需要把firewalld.service及selinux關閉。呃,這個的話是能夠導致docker啟動不了,可博主這塊兒不是因為這個原因導致。博主第一時間能想到的...
X Window無法正常啟動
起因 在cmos開啟了雙顯示卡 想通過vgaswitch 來配置使用獨顯,關掉集顯 安裝了nvidia xconfig,執行,自動修改了xorg.conf 重啟電腦,無法進入x,停留在fedora圖示畫面 折騰 進入tty2,再次執行nvidia xconfig,xorg.conf.back被覆蓋 ...