mysql停止修復 innodb force

2021-10-18 05:33:58 字數 1081 閱讀 1844

[mysqld]

innodb_force_recovery=1 #可以設定1-6

innodb_purge_thread=0 #如果上邊的配置值大於1,此處就要設定為0,否則就會出現innodb: waiting for the background threads to start的錯誤

配置檔案的引數:innodb_force_recovery

innodb_force_recovery影響整個innodb儲存引擎的恢復狀況。預設為0,表示當需要恢復時執行所有的恢復操作(即校驗資料頁/purge?undo/insert?buffer?merge/rolling?back&forward),當不能進行有效的恢復操作時,mysql有可能無法啟動,並記錄錯誤日誌;

innodb_force_recovery可以設定為1-6,大的數字包含前面所有數字的影響。當設定引數值大於0後,可以對錶進行select,create,drop操作,但insert,update或者delete這類操作是不允許的。

1(srv_force_ignore_corrupt):忽略檢查到的corrupt頁。

2(srv_force_no_background):阻止主線程的執行,如主線程需要執行full?purge操作,會導致crash。

3(srv_force_no_trx_undo):不執行事務回滾操作。

4(srv_force_no_ibuf_merge):不執行插入緩衝的合併操作。

5(srv_force_no_undo_log_scan):不檢視重做日誌,innodb儲存引擎會將未提交的事務視為已提交。

6(srv_force_no_log_redo):不執行前滾的操作。

2、重新啟動資料庫,登入mysql備份資料

mysqldump -uroot -p --all-databases> back.sql

3、把之前在my.cnf檔案中新增的兩行**注釋掉,刪除/var/lib/mysql/目錄下的所有檔案,重啟mysql,重啟成功。

4、重新執行mysql的安全指令碼mysql_secure_installation,設定root登入密碼,然後登入mysql進行資料庫的恢復。

source?back.sql;

mysql停止修復 innodb force

本文主要向大家介紹了innodb force recovery強制修復mysql資料庫異常關閉問題,通過具體的內容向大家展現,希望對大家學習mysql資料庫有所幫助。1 在mysql的配置檔案my.cnf裡新增以下 mysqld innodb force recovery 1 可以設定1 6 inn...

mysql 漏洞修復 mysql漏洞修復

lnmp目錄執行 upgrade.sh mysql 需要輸入mysql root密碼進行驗證,驗證不通過將無法進行公升級,驗證通過後可以到 獲取mysql的版本號,輸入後回車確認,如要啟用innodb,輸入y,回車確認,再次回車確認即可開始公升級。會在 root 目錄下生成mysql upgrade...

mysql批量修復 mysql 批量修復

bin bash host name 127.0.0.1 user name user pwd database need optmize table false tables usr local webserver mysql bin mysql h host name u user name p...