论坛要进行升级,为了防止出现意外,遂进行本地化升级测试,没有问题后进行实际操作!
今天将Linux上的mysql暂停了几分钟,然后备份整个论坛数据库,用rar打包后下载到本机,然后在局域网中的一台linux服务器(为了环境一致)将该数据库导入(之前已经建立了相同的配置的mysql账户以及对应的库名)。然后却遇到了:
Table '[Table]caches' is read only
参考了下网络上的资料(mysqladmin -u <username> -p flush-tables),结合自己管理linux的经验,将论坛数据库对应的文件夹以及里面的所有文件修改为mysql权限:chown -R mysql.mysql /mysql/data/bbs_data
重新刷新网页:
Can not write to cache files, please check directory ./forumdata/ and ./forumdata/cache/ .
看来数据表只读问题已经解决,那么给予上面两个目录www的写入权限:
chown -R www.www /htdocs/www/bbs/forumdata
chown -R www.www /htdocs/www/bbs/forumdata/cache
再次刷新网页,论坛正常了!
摘录一点数据库导入导出资料:
mysql5导出的有default-charact的设置,mysql4不支持,需要加skip-opt参数,如:
mysqldump -uroot -p --default-character-set=gbk -skip-opt databse > hx.sql
如果是搬迁到windows系统下mysql出现该问题,同理,先赋予mysql数据库目录mysql的权限,然后命令行下执行mysqladmin -u root -p flush-tables就可以了!