mysql啟動錯誤:mysql.sock丟失

來源:互聯網
上載者:User

   我的是CentOS6.3+MySQL5.1.57。重啟了一次伺服器後,使用> 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 ]

  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 只有這一條

  至此,我可以確定,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系統。並最終解決問題,很有成就感,我喜歡這種感覺。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.