mysql的Table xxxx is read only错误往往是发生在Linux主机上,在网上查了很多资料后终于发现它本质上是个权限问题。
要解决它首先要给mysql的数据库目录加上可写权限,即777
然后到mysql的Bin目录执行刷新
mysqladmin -u <username> -p flush-tables
并且保证mysql安装目录的/var/lib/mysql的目录权限设置为700
(好像说的是data目录)
其间所有文件的权限设置为660(好像说的是data目录里的文件)
(用户所有者 是不是也要变成 mysql mysql)
基本可以解决
另:当我们更改了mysql权限表,我们可以重起服务器(重启这种方法是好的),但更简单的办法是执行
mysqladmin -u <username> -p reload (这种方法 好像不起作用 )