论坛搬家后表只读问题(1036) Table 'common_block' is read only
很多时候搬家都是直接拷贝旧服务器的数据库文件至新服务器的对应目录,这时候经常会碰到论坛前端打不开网页,通过php等脚步语言请求服务器操作数据库则会报500错误,提示表只有读权限。如:(1036) Table 'common_block' is read only
错误原因:一般都是我们将数据库文件从一个服务器或者本地转移到另一个linux机下时,原本我们在mysql新建的库或者表文件是属于mysql用户组和用户的,但是转移后就可能变为root用户组和用户,所以我们再在mysql下操作数据库时,由于只要在mysql操作数据库,不管你原来是以root用户登录linuxOS还是其它用户,统统变为mysql用户,所以要修改转移后的文件为mysql用户组和用户。
1.chown -R mysql:mysql admin修改用户组和用户
2.chmod 666 filename 修改文件读写权限
3.这个很重要
这样还不能更改数据库,首先,找到mysqladmin所在位置,一般都在mysql/bin下面,/usr/local/mysql/bin 里面,还需要运行以下刷新命令:
./mysqladmin -u root -p flush-tables
我的WDCP是在 cd /www/wdlinux/mysql/bin
WDCP后台找到数据表文件列表,全选更改用户组和用户为"mysq",data下面数据库文件夹700,表文件660。
这时候一般不会报错了,但是论坛样式貌似加载不出来,会员也登陆不了。可能是因为恢复的方法不对,后来把旧论坛WEB文件install.lock删了直接重装一遍,再把数据库表全部替换为旧论坛的表(因为比官方的表多很多,之前都是剔除性恢复),按上面一样更新权限与刷新表后竟然可以了。
mysql mysqladmin常用命令
修改root密码
mysqladmin -u root -p123456 password 'YOURNEWPASSWORD'
检查mysql是否在运行
systemctl status mariadb
mysqladmin -u root -p ping
安全关闭
mysqladmin -u root -p shutdown
systemctl stop mariadb
查看mysql运行状态
mysqladmin -uroot -p status
查看版本
mysql -V
mysqladmin -u root -proot version
查看变量的值和状态等
mysqladmin -u root -p extended-status
mysqladmin -u root -p variables
mysqladmin -u root -p processlist
mysqladmin创建删除表操作
mysqladmin -u root -p create databasename
mysqladmin -u root -p drop databasename
重新加载Privileges
mysqladmin -u root -p reload;
mysqladmin -u root -p refresh
MySQL Flush命令
以下是一些有用的刷新命令及其说明。
flush-hosts:从主机缓存中刷新所有主机信息。
flush-tables:刷新所有表。
flush-threads:刷新所有线程缓存。
flush-logs:刷新所有信息日志。
flush-privileges:重新加载授权表(与重新加载相同)。
flush-status:清除状态变量。
# mysqladmin -u root -p flush-hosts
# mysqladmin -u root -p flush-tables
# mysqladmin -u root -p flush-threads
# mysqladmin -u root -p flush-logs
# mysqladmin -u root -p flush-privileges
# mysqladmin -u root -p flush-status
杀掉休眠线程
mysqladmin -u root -p processlist
mysqladmin -u root -p kill 5,10
多命令连接操作
mysqladmin -u root -p processlist status version
连接远程服务
mysqladmin -h 172.16.25.126 -u root -p
停止/开始远程服务器的复制
mysqladmin -u root -p start-slave
mysqladmin -u root -p stop-slave
mysql查看debug
mysqladmin -u root -p debug
页:
[1]