您好,登錄后才能下訂單哦!
將mysql目錄直接拷貝遷移,過程不詳述,數據庫正常啟動,但是不能正常使用,select查表報表不存在,然后發現日志報錯如下
InnoDB: Doing recovery: scanned up to log sequence number 265335480935
170504 15:56:39 InnoDB: Error: page 311313 log sequence number 265338125392
InnoDB: is in the future! Current system log sequence number 265335480935.
InnoDB: Your database may be corrupt or you may have copied the InnoDB
InnoDB: tablespace but not the InnoDB log files
解決辦法:
在/etc/my.cnf文件的[mysqld]下添加
innodb_force_recovery = 4
重啟mysqld恢復正常,問題解決,記得之后將“innodb_force_recovery = 4”刪掉再重啟一次,否則還會出現問題
關于innodb_force_recovery的一些說明
innodb_force_recovery可以設置為1-6,大的數字包含前面所有數字的影響。
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):不執行前滾的操作。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。