天天看點

mysql啟動報錯

 mysql啟動報錯的原因常見的有一下幾種:

   1、資料所在分區滿了

   2、pid所在目錄mysql使用者沒有寫權限

   3、存儲引擎為innodb引擎,這個時候啟動的時候需要恢複所有的操作(select,create,drop,insert。update,delete),當不能有效的執行恢複操作的時候,mysql啟動報錯

    早上來上班的時候,被通知整棟大樓要停電,想了一下,公司機房還放了幾台測試機,如果突然斷電的話,會導緻測試機中的虛拟機不可用,趕緊一台一台關機吧,其中有一台虛拟機上裝着mysql,先進去把mysql關掉吧,避免等下開機啟動mysql報錯,然後依次關掉所有的虛拟機,最後主控端

   最終斷電了,來電之後,趕緊起機器 ,一切順利,但是到mysql的時候

mysql啟動報錯

   我了個去,最不願意看到的事還是發生了,一步一步檢測吧

1、檢查磁盤情況

磁盤空間還有很多,排除

2、檢查pid檔案是否存在,并檢視其所在目錄的權限

去相應目錄檢視

mysql啟動報錯

恩是有權限的,等等,我的pid檔案呢?也就是說在啟動的時候,mysql沒有建立pid檔案

手動建立一個試試

更改其屬主屬組

再啟動,還報錯

排除pid的問題

3、由配置檔案可以,mysql存儲引擎中有innodb,可能屬于第三種情況

在配置檔案中添加如下參數,然後啟動

啟動ok

注:

   啟動成功之後, 把配置檔案中該選項注釋掉,然後重新開機資料庫,要不然,很多操作都不支援了

innodb_force_recovery 參數含義如下

   預設為0 表示當需要恢複時,執行所有的恢複操作

   可以設定為1-6,當參數大于0的時候,可以對表進行slect,create,drop操作,但insert,update或者delect這類操作室不允許的

繼續閱讀