惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Y
Y Combinator Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
博客园 - 司徒正美
Blog — PlanetScale
Blog — PlanetScale
博客园 - 聂微东
月光博客
月光博客
量子位
大猫的无限游戏
大猫的无限游戏
Stack Overflow Blog
Stack Overflow Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
The Cloudflare Blog
P
Proofpoint News Feed
B
Blog RSS Feed
美团技术团队
腾讯CDC
C
Check Point Blog
Engineering at Meta
Engineering at Meta
F
Fortinet All Blogs
N
Netflix TechBlog - Medium
Recent Announcements
Recent Announcements
J
Java Code Geeks
S
SegmentFault 最新的问题
WordPress大学
WordPress大学
宝玉的分享
宝玉的分享

博客园 - hangox

Claude Code 自定义状态栏配置指南 如何给 Claude 中的网页做截图 AGP 8.0+ Publish idea 插件兼容 K2 模式 IDEA 不提示 gitlab-ci 字段问题 不要随便使用 npm 源加速站点 Xcode Format Swift 代码 idea Convert File To Kotlin File 多 Commit 问题 ApkList 源问题修复 BCM94360CS2 黑苹果 macOS Sonoma Wifi 不能开启修复 android ConcurrentModificationException 错误 Android Studio 插件分享——Gradle Utilities Android Studio 插件分享——Jadx Class Decompiler templete Android Studio 3.0 新特性 Android SpringAnimator初探 关于Android菜单上的记录 升级到 classpath 'com.android.tools.build:gradle:1.0.0-rc1 OnScrollListenerPro
NginxProxyManager 数据库迁移记录
hangox · 2024-06-17 · via 博客园 - hangox

原因

家里服务器的 NginxMangerProxy 使用的是 SQLite 作为数据库的。虽然数据不是很重要,但是丢了也是挺蛋疼的。考虑改为 MySQL 作为数据库,然后使用定时备份的策略来做数据库多备份。

升级步骤

1. 保存 sqlite 的 database 文件

NginxProxyManager是使用 Portainer 拉起的容器,可以通过 PoratinerVolume 界面直接访问文件内容,如下图

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

2. 使用 mysql 启动新的 NginxProxyManager

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

!!!然后停止掉 nginxproxymanager!!!

3. 使用 Navicat DataTransfer 迁移数据(失败)

原本是想通过 NavicatDataTransfer 功能直接迁移的,就是下图这个功能

实际上使用后会发现日期相关的数据,转移过去后会变成 blob 数据,导致迁移失败

4. 使用 Navicat 复制粘贴(成功)

使用过程发现,全选 SQLite 表中的数据,复制后,直接粘贴到 MySQL 对应的表上,数据可以完整粘贴过去,看着表不多,数据量也少,直接就这样操作完成整个数据库迁移

就像下图这样选择对应的表格复制,然后粘贴到新数据库上一样的表上即可

5. 重新启动 NginxProxyManager

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