[ERROR] /usr/local/mysql/bin/mysqld: Incorrect information in file:

回复 收藏
数据库长时间没有重启,今天重启后发生故障了。 虽然能启动,也可以命令行进入mysql,但是不管查询什么数据,都会报错:

Incorrect information in file: './dbname/tablename.frm'

一开始没有查看错误日志,琢磨了好久好久,还曾尝试 repair table 但是无果,走了不少弯路。 不经意间查看了错误日志,发现问题所在:

...skipping...
^G/usr/local/mysql/bin/mysqld: Can't create/write to file '/disk1/ibxv7QmF' (Errcode: 13)

这是说,/disk1/ 不能写入,明白了,innodb数据库引擎启动时,会写个临时文件,而mysql会选择最后一个较大的分区,因为我的/disk1/为一个单独分区,而且空间蛮大的,所以它选择了在这个分区写临时文件,可不幸的是,/disk1/ 目录mysql账户并没有写权限,所以出错了,解决办法为:

chmod o+w  /disk1/  再重启mysql,问题解决。
2013-07-16 20:16 举报
已邀请:
0

yang.lin.801109

赞同来自:

收藏,颇具一定实力

回复帖子,请先登录注册

退出全屏模式 全屏模式 回复
评分
可选评分理由: