修復以損壞的MySQL數據表的實際操作在實際中是我們經常用到的以下的文章主要是介紹正確修復以損壞的MySQL數據表的實際操作步驟以下就是正文的介紹希望會給你帶來一些幫助在此方面
於斷電或非正常關機而導致MySQL(和PHP搭配之最佳組合)數據庫出現錯誤是非常常見的問題有兩種方法一種方法使用MySQL(和PHP搭配之最佳組合)的check table和repair table 的sql語句另一種方法是使用MySQL(和PHP搭配之最佳組合)提供的多個myisamchk isamchk數據檢測恢復工具前者使用起來比較簡便推薦使用
check table 和 repair table
登陸MySQL(和PHP搭配之最佳組合) 終端
MySQL(和PHP搭配之最佳組合) uxxxxx p dbname
> check table tabTest;
如果出現的結果說Status是OK則不用修復如果有Error可以用
> repair table tabTest;
進行修復修復之後可以在用check table命令來進行檢查在新版本的phpMyAdmin裡面也可以使用check/repair的功能
myisamchk isamchk
其中myisamchk適用於MYISAM類型的數據表而isamchk適用於ISAM類型的數據表這兩條命令的主要參數相同一般新的系統都使用MYISAM作為缺省的數據表類型這裡以myisamchk為例子進行說明當發現某個數據表出現問題時可以使用
myisamchk tablenameMYI
進行檢測如果需要修復的話可以使用
myisamchk of tablenameMYI
關於myisamchk的詳細參數說明可以參見它的使用幫助需要注意的時在進行修改時必須確保MySQL(和PHP搭配之最佳組合)服務器沒有訪問這個數據表保險的情況下是最好在進行檢測時把MySQL(和PHP搭配之最佳組合)服務器Shutdown掉
另外可以把下面的命令放在你的rclocal裡面啟動MySQL(和PHP搭配之最佳組合)服務器前
[ x /tmp/MySQL(和PHP搭配之最佳組合)sock ] && /pathtochk/myisamchk of /DATA_DIR/*/*MYI
其中的/tmp/MySQL(和PHP搭配之最佳組合)sock是MySQL(和PHP搭配之最佳組合)監聽的Sock文件位置對於使用RPM安裝的用戶應該是/var/lib/MySQL(和PHP搭配之最佳組合)/MySQL(和PHP搭配之最佳組合)sock對於使用源碼安裝則是/tmp/MySQL(和PHP搭配之最佳組合)sock可以根據自己的實際情況進行變更而pathtochk則是myisamchk所在的位置DATA_DIR是你的MySQL(和PHP搭配之最佳組合)數據庫存放的位置
需要注意的時如果你打算把這條命令放在你的rclocal裡面必須確認在執行這條指令時MySQL(和PHP搭配之最佳組合)服務器必須沒有啟動!
檢測修復所有數據庫(表)
MySQL(和PHP搭配之最佳組合)check A o r p
以上的相關內容就是對修復損壞的MySQL數據表的介紹望你能有所收獲
From:http://tw.wingwit.com/Article/program/MySQL/201311/29506.html