錯誤編號:145
問題分析:
這種情況是不能打開 %s.MYI 造成的,引起這種情況可能的原因有:
1、服務器非正常關機,數據庫所在空間已滿,或一些其它未知的原因,對數據庫表造成了損壞。
2、類 unix 操作系統下直接將數據庫文件拷貝移動會因為文件的屬組問題而產生這個錯誤。
解決方法:
1、修復數據表
可以使用下面的三種方式修復數據表:(第二種方法僅適合獨立主機用戶)
1)通過 tools.php 修復,這個文件的下載地址為:http://www.bkjia.com/a/view/8016.html,然後上傳到服務器的相應程序目錄下,如通過 http://站點地址/tools.php 訪問;
2)使用 myisamchk ,MySQL 自帶了專門用戶數據表檢查和修復的工具 —— myisamchk 。更改當前目錄到 MySQL安裝目錄的 bin 目錄下面,一般情況下只有在這個下面才能運行 myisamchk 命令。常用的修復命令為:
myisamchk -r 數據文件目錄/數據表名.MYI;
myisamchk -r 數據文件目錄/數據表名.MYI;
3)通過 phpMyAdmin 修復, phpMyAdmin 帶有修復數據表的功能,進入到某一個表中後,點擊“操作”,在下方的“表維護”中點擊“修復表”即可。
注意:以上三種修復方式在執行前一定要備份數據庫。
2、修改文件的屬組(僅適合獨立主機用戶)
1)復制數據庫文件的過程中沒有將數據庫文件設置為 MySQL 運行的帳號可讀寫(一般適用於 Linux 和 FreeBSD 用戶)。