mysql中Table is read only的解决

一客户的mysql数据库600多M.从windows换成linux.导出再导入太麻烦了.于是直接复制物理文件到linux.先创建好linux下面的mysql数据库.再把文件wget过来覆盖掉之后.问题出现了,
在mysql中,Select之类的都正常,但在phpmyadmin优化数据库的时候中提示:Table 'jieqi_xxxx' is read only,给数据库目录的所属用户和组改为mysql,并加上777的权限,还是一样提示.程序中使用root连接,也是一样的提示....百般SM加鞭策无果.最后想到用myisamchk来检查一下,也提示Table is read only.于是满世界找答案啊...终于功夫不负哥,还真找到了.以下是原文:

I just encountered a similar problem on one of my production servers
this morning. (I'm still investigating the cause.) After doing a
quick bit of Google-searching, this solved my problem:

mysqladmin -u <username> -p flush-tables

By the way: All directories in /var/lib/mysql should have 700
permissions (owned my the mysql user) and everything within those
directories should be 660 (owned by the mysql user and mysql group).


cd /usr/local/mysql/bin


执行如下mysqladmin

./mysqladmin -u <username> -p flush-tables


运行flush-tables后,read only问题解决.

你可能感兴趣的:(mysql)