NginxProxyManager 数据库迁移记录
原因
家里服务器的 NginxMangerProxy 使用的是 SQLite 作为数据库的。虽然数据不是很重要,但是丢了也是挺蛋疼的。考虑改为 MySQL 作为数据库,然后使用定时备份的策略来做数据库多备份。
升级步骤
1. 保存 sqlite 的 database 文件
NginxProxyManager是使用 Portainer 拉起的容器,可以通过 Poratiner 的 Volume 界面直接访问文件内容,如下图

点击 Browser,进入到这个界面就能直接下载了

2. 使用 mysql 启动新的 NginxProxyManager
这一步是为了让 NginxProxyManager 自己创建好数据库,这一步只要按下图这样设置好 mysql 的信息直接启动就行

!!!然后停止掉 nginxproxymanager!!!
3. 使用 Navicat DataTransfer 迁移数据(失败)
原本是想通过 Navicat 的 DataTransfer 功能直接迁移的,就是下图这个功能

实际上使用后会发现日期相关的数据,转移过去后会变成 blob 数据,导致迁移失败
4. 使用 Navicat 复制粘贴(成功)
使用过程发现,全选 SQLite 表中的数据,复制后,直接粘贴到 MySQL 对应的表上,数据可以完整粘贴过去,看着表不多,数据量也少,直接就这样操作完成整个数据库迁移
就像下图这样选择对应的表格复制,然后粘贴到新数据库上一样的表上即可

5. 重新启动 NginxProxyManager
这个时候重新启动 NginxProxyManager 就会看到 NginxMangerManager已经完整回复过来


浙公网安备 33010602011771号