我有带大数据库的 debian 盒子。
我想用这个数据库做很多有风险的操作。
它是关于更新与此数据库一起使用的软件。
我可以停止数据库 5 分钟,但不能更长时间。
db 文件是 lvm 逻辑卷上的 innodb 文件。
当我进行备份时,我使用 lvm 快照进行备份。
我很确定,我需要多次尝试更新,但总是会出错。
我的想法是:如果我做 lvm 快照(大尺寸),挂载它,启动另一个 mysql 实例并在这个实例上做所有有风险的工作怎么办。
如果出现问题,我只需删除快照并重新开始。
如果一切都正确,并且所有测试都将通过(可能需要 1-2 天) - 我从第二个实例进行备份,并将其移动到第一个实例。
我需要一些东西来启动第二个实例而不接触我的第一个实例。我能用什么?
- 做 debootstrap 和 chroot 吗?
- 安装kvm?
我需要你的建议。
启动第二个 mysql 实例的最简单方法是使用具有不同数据目录、端口号等的单独 my.cnf
比您只需将快照安装在新数据目录下并使用新的 my.cnf 配置文件启动 mysql 即:
沿着这些路线的东西......
类似 FreeBSD 的 Linux 监狱被命名为 LXC ( https://wiki.debian.org/LXC )。我认为它很适合这里。
您将获得具有透明可访问文件系统和可忽略的性能损失的专用系统环境。