顺利升级phpBB后就想:安装最新版然后后台导入数据库会更快捷吗?结果跟预期还是有点差距 ,记手记如下:
安装最新版很快完成,后台查看一下两种情况的数据库发现明显差异,升级后的数据库存储引擎部分是MyISAM、另外一部分是InnoDB,全新安装的全是InnoDB。
1、导出备份数据不含结构,用参数-t:
mysqldump -u用户 -p密码 --databases 论坛原数据库 -t >phpBB.sql
2、编辑器中将phpBB.sql 中的打开数据库命令:use 论坛原数据库改成 use 新数据库
3、新库导入备份数据:
mysql -u用户 -p密码 新数据库<phpBB.sql
此时失败,提示新数据库找不到 captcha_answers 数据表,于是直接复制该表到新库中,想着完成后再删除;此步骤重复了五次,也就是我的论坛新库比原库少了5个数据表。
4、还是没有完成,期间碰到两个数据表的结构不一样:profile_fields_data和topics,经过对比profile_fields_data的数据结构差异比较大,直接在编辑器中将该表数据删除,topics表是新表少了一个字段topic_url,直接在新表添加该字段,待完成后删除。
至此数据库顺利完成导入,打开新安装论坛后一切顺利,于是便将前面新库中添加的五个表删除,topics新表字段topic_url也删除,重新运行新论坛全部正常。
注意,所有行为均为测试,数据重要不建议尝试。