iT邦幫忙

0

[鷹問]InnoDB mysql 死表

前言:
我朋友有遇到關機後在開啟主機,出現多表都是使用中,無法使用的狀態,
所有無法使用的資料表都是InnoDB

有嘗試過:
使用修復表的指令
repair table table\_name
狀況還是一樣,不過目前使用者無法連線到主機,去用這個方法

各位大大是否有遇過這種情況,有什麼方式可以解決嗎??

死表畫面

使用查詢指令跳出錯誤

使用 show processlist; 的狀態

看更多先前的討論...收起先前的討論...
賽門 iT邦超人 1 級 ‧ 2014-02-17 16:47:31 檢舉
不知道關機前或關機後開機前,有沒有對主機的硬體配置做調整或硬體有更動?
InnoDB是相當穩定的環境,除非硬體調整(特別是網路),正常關機應該都不會有這種情況發生。

試試看...
cd /var/lib/mysql/DATABASE  (DATABASE是出問題的資料庫名稱)
myisamchk --safe-recover TABLE  (TABLE是出問題的資料表名稱)


如果不行,就有些麻煩了....找小雨大現場支援看看。
OKOK~!
目前狀態
我找不到(小雨大) 我到不了(訊息傳不到小雨大)
唱歌
CalvinKuo iT邦大師 7 級 ‧ 2014-02-17 17:22:47 檢舉
相當懷疑鷹大call錯人..疑惑
丁小羽
碰碰運氣
看看這篇有沒有用
做菜
OK~~!謝拉~~!海綿大~~等等傳給朋友~~!
已經先用skype傳一些建議給鷹弟了.

1 個回答

6
wiseguy
iT邦超人 1 級 ‧ 2014-02-20 10:50:11
最佳解答

InnoDB table 具有自我修復的功能,無法用修正 MyISAM table 的指令,像是 repair, recover 來修正問題。就算你用 check table 去檢查,可能都回應 OK,無法得知到底問題出在哪。真的遇到 InnoDB 像這樣壞到它自己修不回來,要有心理準備,裡面的資料可能會失去一部份。
請參考這篇做修復動作:
http://www.mysqlperformanceblog.com/2008/07/04/recovering-innodb-table-corruption/

謝謝!強人大大 我馬上把訊息給我朋友試試看~~!

先來結案 朋友那邊還沒回應~~!

我要發表回答

立即登入回答