Csuper Blog

Csuper Blog

Table ‘xxx’ is read only解决方案
2010-11-07

讲windows中的数据库直接挪到linux服务器上,执行程序,出现如下的错误:

Table ‘xxx’ is read only。

解决方法如下:

1.针对你的数据库检查权限及拥有者

[root@localhost ~]# cd /usr/local/mysql/var/php168

[root@localhost ~]# ll

-r–r—– 1 root root   8806 12月 10  2007 whos_online.frm
-r–r—– 1 root root     0 12月 10  2007 whos_online.MYD
-r–r—– 1 root root   1024 12月 10  2007 whos_online.MYI

2.將*.frm、*.MYD、*.MYI 設定權限660及使用者mysql

[root@localhost discuz]# chmod   660  *.*

[root@localhost discuz]# chown  mysql.mysql  *.*

 

改变数据库目录属性为700
改变数据库中数据的属性为660

 

 

[root@localhost discuz]# ll

-rw-rw—- 1 mysql mysql   8806 12月 10  2007 whos_online.frm
-rw-rw—- 1 mysql mysql   0 12月 10  2007 whos_online.MYD
-rw-rw—- 1 mysql mysql   1024 12月 10  2007 whos_online.MYI

3.重新啟動mysql

[root@localhost discuz]# service mysqld restart
Shutting down MySQL: .                                          [ 成功 ]
Starting MySQL: ……..                                            [ 成功 ]
[root@localhost discuz]# 

发表评论: