我本以为这已经是顺利迁移完成了,但后来操作的时候,发现只能读取数据库的内容,不能更改写入任何信息,提示#1036 – Table ‘* ‘ is read only (*号为任意表),也就是说表只有只读属性。
通过SSH,给数据库文件777权限,dedeadmin是我的数据库文件夹
chmod -r 0777 /usr/local/mysql/var/dedeadmin/
给数据库目录的所属用户和组改为MySQL
chown -R mysql:mysql dedeadmin
但是这样还不能更改数据库,首先,找到mysqladmin所在位置,一般都在mysql/bin下面,我的在/usr/local/mysql/bin 里面,还需要运行以下命令:
./mysqladmin -u root -p flush-tables
之后输入root账号的密码,马上就好了,没有任何任何提示,然后测试一下,能正常读写,搬家也就顺利完
linux中解决办法
1. 找到数据库文件放置的目录,如/usr/local/mysql/var/xx
2. 更改此数据库下所有文件的所有权:chown mysql.mysql *.*
3. 关闭mysql:killall mysqld
音疯
音疯是昆仑万维推出的一个AI音乐创作平台,每日可以免费生成6首歌曲。
146 查看详情
4. 开启mysql:进入mysql的bin目录,运行 ./mysqld_safe –user=mysql &
实例
前几天我把一个系统挂到服务器上,数据库出现了如下的错误提示
#1036 – Table ‘ ‘ is read only
我把网站传到服务器上,把备份的数据库文件放到/usr/local/mysql/var下面之后,访问某个表时出现权限的问题,后来把数据库的权限改为777,把数据库目录的所属用户和组改为MySQL,错误依然存在。我采用了一下的方法解决了问题。
首先,找到mysqladmin所在位置,一般都在mysql/bin下面,我的在/usr/local/mysql/bin下面。步骤如下:
#cd /usr/local/mysql/bin
#./mysqladmin -u root -p flush-tables
然后输入你的数据库密码,没有任何的错误提示,说明你成功了
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1044198.html
微信扫一扫
支付宝扫一扫