Search Posts

Mysql的Table “xxxx” is read only错误

mysqlTable xxxx is read only错误看起来意思是这个表是只读的,也就是没有写入的权限

 

要解决它首先要给mysql的数据库目录设置正确的权限

并且保证mysql安装目录的/var/lib/mysql的目录权限设置为700

里面所有的数据名为目录的目录权限设置为777

其内所有文件的权限设置为660

权限设置好之后还有一步也是最重要的一步就是刷新,我在前面设置了N次还是出现同样的问题,后来才发现是数据库没有刷新。

SSH登陆到服务器执行:

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

这里的username是你的数据库用户名,如果你是使用root用户这里不用输入,即

>mysqladmin –p flush-tables

回车后输入密码

然后重启服务器或者重启MYSQL

>mysqladmin –p reload

这样就可以解决这个问题了。

另:如果你是在别的服务器上直接复制过来的MYSQL数据库文件夹,那么还有可能文件拥有者和组有可能也要设置

命令如下:

切换到你的数据库目录下运行

>chown –R mysql:mysql ./* 这样即是设置本目录下所有文件的所属用户和用户组为mysql

 

发表回复