Table 'xxx'is marked as crashed and last (automatic) repair failed


  維護着一個大型資訊網站,數據量比較大,最近搬到linux服務器下,在生成靜態網站的時候突然發現首頁調用的后台數據全都沒有了。着急了,多年的心血啊。

  第一反應是想着是不是數據被破壞了,丟了一些數據。檢查后發現並不是。

  然后通過phpmyadmin查看archives表的時候提示:Table 'xxx'is marked as crashed and last (automatic) repair failed。這意味着該表被標記為跌宕了。於是想着修復:repair table arvhives,修復卻失敗了。

  只好通過mysql命令行來執行了。

  1)service mysqld stop  停止mysql服務;

  2)cd /var/local/mysql/tbl  切換到該表目錄下(注意:不切換過來會總提示myisamchk一些錯誤導致失敗);

  3)myisamchk -r xxx.MYI  (如果還是提示錯誤,就多加一個參數-f  強制進行。)

[root@localhost tjinfo]# myisamchk -r dede_archives.MYI
- recovering (with sort) MyISAM-table 'dede_archives.MYI'
Data records: 1781
- Fixing index 1
- Fixing index 2
- Fixing index 3
- Fixing index 4

  最后查看,成功!

注意:雖然這樣成功了,但是當你再次添加文章的時候,又會出現這樣的問題,所以長久的解決辦法如下:
        把服務器上的數據導入到本地,然后在本地用myisamchk -r -f *.MYI修復了下,然后導回去。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM