MySQL備份及數據恢復

昨天MySQL意外掛了,重啓不成功。而後悲劇的發現,以前作的磁盤快照規則也不知怎麼沒有生效,數據無備份。html

後來諮詢、搜索,結果:mysql

一、能夠配置兩個參數,忽略檢查,啓動,能夠讀數據。而後導出,刪除文件庫文件,重建數據庫,導入數據:sql

innodb_force_recovery=6
innodb_purge_thread=0

上面參數解釋:數據庫

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):不執行前滾的操做。

 參考:http://www.jb51.net/article/66951.htmsocket

二、簡單的備份:spa

mysqldump --socket=/tmp/mysql.sock -uroot -pPASSWORD databasename | gzip > databasename_`date '+%m-%d-%Y'`.sql.gz
mysqldump --socket=/tmp/mysql.sock -uroot -pPASSWORD databasename > databasename_`date '+%m-%d-%Y'`.sql

 參考:http://www.cnblogs.com/feichexia/p/MysqlDataBackup.html.net

相關文章
相關標籤/搜索