Mysql 出现:Can't open file: '%s.MYI' 的解决方法

jackxiang 2011-5-1 06:59 | |
错误编号:145
问题分析:
这种情况是不能打开 %s.MYI 造成的,引起这种情况可能的原因有:
1、服务器非正常关机,数据库所在空间已满,或一些其它未知的原因,对数据库表造成了损坏。
2、类 unix 操作系统下直接将数据库文件拷贝移动会因为文件的属组问题而产生这个错误。
解决方法:
1、修复数据表
可以使用下面的三种方式修复数据表:(第二种方法仅适合独立主机用户)
    1)使用 myisamchk ,MySQL 自带了专门用户数据表检查和修复的工具 —— myisamchk 。更改当前目录到 MySQL安装目录的 bin 目录下面,一般情况下只有在这个下面才能运行 myisamchk 命令。常用的修复命令为:
myisamchk -r 数据文件目录/数据表名.MYI;
CODE: [COPY]
      myisamchk -r 数据文件目录/数据表名.MYI;
    2)通过 phpMyAdmin 修复, phpMyAdmin 带有修复数据表的功能,进入到某一个表中后,点击“操作”,在下方的“表维护”中点击“修复表”即可。
    注意:以上三种修复方式在执行前一定要备份数据库。
2、修改文件的属组(仅适合独立主机用户)
    1)复制数据库文件的过程中没有将数据库文件设置为 MySQL  运行的帐号可读写(一般适用于 Linux 和 FreeBSD 用户)。

作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:http://jackxiang.com/post/4267/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!

评论列表
发表评论

昵称

网址

电邮

打开HTML 打开UBB 打开表情 隐藏 记住我 [登入] [注册]