从旧版本的数据库导入
付费版 1.7.x 无法通过在线或离线升级的方式升级到 2.x。2.x 内置了导入命令,可以把 1.7 或 1.7.1 的数据库导入到新安装的 2.x 中,部分数据导入后需要手动补充。
WARNING
- 只支持从付费版 1.7 和 1.7.1 导入,不支持开源版
- 只导入数据库,不包含图片文件。使用本地储存的,请把图片文件手动复制到新站点对应的目录中;使用对象储存的,文件不需要移动
- 请在新安装、还没有创建任何数据的 2.x 站点上执行。导入前会清空角色组、用户、页面、公告等数据表,在已有数据的站点上执行会导致数据混乱
可以迁移的数据
- 驱动:SMTP 邮件、支付(易支付除外)、社会化登录、图片安全
- 角色组和储存:角色组、储存策略、角色组与储存的关联。导入命令无法对应的储存策略会被跳过,这些储存中的图片记录也会跳过
- 用户:用户、用户的订阅和容量、第三方登录的绑定
- 业务数据:套餐、订单、工单及回复、图片、相册、公告、举报、违规记录、页面、意见与反馈
无法迁移的数据
系统设置(应用名称、ICP 备案号、注册和游客上传开关、邮件发件人)、优惠券、点赞记录、订单的部分信息、页面的内容、套餐的赠送容量和角色组设置。
需要调整的数据
导入后请在管理后台检查和补充:
- 套餐:重新设置赠送容量和角色组
- 页面:内容会被替换为"请补充...",需要重新填写
- 图片安全驱动:补充审核驱动的配置
- 系统设置:在「系统设置」→「常规设置」中重新填写应用名称、ICP 备案号等
- 分享:分享记录会被导入,但分享中关联的图片和相册不准确(一个图片分享可能关联到其他分享中的图片),请在后台删除导入的分享,由用户重新创建
如何迁移
安装 2.x 版本
创建一个新站点,按安装安装 2.x。导入期间旧站点不受影响,可以继续运行。
执行迁移
通过 SSH 进入新站点的根目录,执行导入命令:
shell
php artisan app:import按提示选择旧版本的数据库类型,并输入连接信息(SQLite 输入数据库文件的绝对路径;其他数据库输入地址、端口、数据库名称、用户名和密码)。导入过程中请不要中断命令或重启服务器。
导入完成后,可以使用旧版本的管理员账号登录新站点的后台。
