[MySQL] Table dbname/tablename is marked as crashed and should be repaired when using LOCK TABLES
來源 : http://emn178.pixnet.net/blog/post/95064604-%E8%A7%A3%E6%B1%BAtable-'.-dbname-tablename'-is-marked-as-crashed-and-sh
當遇到 Table './dbname/tablename' is marked as crashed and should be repaired when using LOCK TABLES
原因:
資料表的相關檔案由於不明原因發生損壞,而無法正常存取。
解決方案:
可以使用以下兩種方式嘗試修復資料表:
使用SQL語句
REPAIR TABLE tablename
使用myisamchk
使用命令列進入資料表所在目錄,例如
cd /var/lib/mysql/dbname
執行
myisamchk -r tablename
執行過程中可能會遇到以下錯誤
myisamchk: error: myisam_sort_buffer_size is too small
這是修復過程中所需記憶體空間超過預設的空間,可以利用--sort_buffer_size參數指派更大的記憶體,例如:
myisamchk -r tablename --sort_buffer_size=2G
當遇到 Table './dbname/tablename' is marked as crashed and should be repaired when using LOCK TABLES
原因:
資料表的相關檔案由於不明原因發生損壞,而無法正常存取。
解決方案:
可以使用以下兩種方式嘗試修復資料表:
使用SQL語句
REPAIR TABLE tablename
使用myisamchk
使用命令列進入資料表所在目錄,例如
cd /var/lib/mysql/dbname
執行
myisamchk -r tablename
執行過程中可能會遇到以下錯誤
myisamchk: error: myisam_sort_buffer_size is too small
這是修復過程中所需記憶體空間超過預設的空間,可以利用--sort_buffer_size參數指派更大的記憶體,例如:
myisamchk -r tablename --sort_buffer_size=2G
留言
張貼留言