公告版位

問題:

資料庫存取發生錯誤,例如使用mysqldump時出現:

mysqldump: Got error: 145: 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 
文章標籤
創作者介紹

小殘的程式光廊

emn178 發表在 痞客邦 PIXNET 留言(1) 人氣()


留言列表 (1)

發表留言
  • Neil
  • Hi 請問可以借分享嗎?
  • OK

    emn178 於 2015/10/01 13:17 回覆

找更多相關文章與討論