mysql中Table is read only的解决
昨天把空间从美国的VPS搬家到岛国从,windows换成linux.导出再导入太麻烦了.于是直接复制物理文件到linux.先创建好linux下面的mysql数据库.再把文件wget过来覆盖掉之后.问题出现了,
在mysql中,Select之类的都正常,但在phpmyadmin优化数据库的时候中提示:Table 'oiplay_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 root -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 root -p flush-tables
运行flush-tables后,read only问题解决.