移动 MySQL /var/lib/mysql 到共享卷
Move MySQL /var/lib/mysql to shared volume
我是 运行 Synology nas Docker 中 MySQL 8.0.18 的容器。我只是用它来支持那个盒子上的另一个容器 (Mediawiki)。 MySQL 在路径 /var/lib/mysql
上安装了一个卷。我想将其移动到共享卷,以便我可以使用 File Station 访问它并定期备份它。如何在不破坏 MySQL 的情况下将其移动到下面显示的 docker
共享?
这里是 Synology nas 上的可用共享。
或者,有没有一种方法可以简单地将 /var/lib/mysql 复制到共享的 docker 文件夹?这也适用于定期备份。
谢谢,
拉斯
编辑:按照 Zeitounator 的计划显示结果。在 运行 docker 命令 (2.) 之前,我在 File Station 中创建了 mediawiki_mysql_backups
和 12-29-2019
文件夹。在 运行 2. 和 3. 之后,mysql 中的所有文件都在这里,我现在有一个很好的备份!
- 停止您当前的容器以确保 mysql 不是 运行。
- 创建一个虚拟临时容器,您可以在其中安装 2 个所需的卷。我倾向于使用 busybox 来完成此类任务 =>
docker run -it --rm --name temp_mysql_copy -v mediaviki-mysql:/old-mysql -v /path/to/ttpe/docker:/new-mysql busybox:latest
- 复制所有文件=>
cp -a /old-mysql/* /new-mysql/
- 退出虚拟容器(如果您使用我的上述命令,它将自行清理)
- 使用 mysql:8 图像创建一个新容器,在
/var/lib/mysql
中安装新文件夹(您可能需要在您的 syno docker gui 中执行此操作)。
- 如果一切正常,请删除旧的
mediaviki-mysql
卷
我是 运行 Synology nas Docker 中 MySQL 8.0.18 的容器。我只是用它来支持那个盒子上的另一个容器 (Mediawiki)。 MySQL 在路径 /var/lib/mysql
上安装了一个卷。我想将其移动到共享卷,以便我可以使用 File Station 访问它并定期备份它。如何在不破坏 MySQL 的情况下将其移动到下面显示的 docker
共享?
这里是 Synology nas 上的可用共享。
或者,有没有一种方法可以简单地将 /var/lib/mysql 复制到共享的 docker 文件夹?这也适用于定期备份。
谢谢, 拉斯
编辑:按照 Zeitounator 的计划显示结果。在 运行 docker 命令 (2.) 之前,我在 File Station 中创建了 mediawiki_mysql_backups
和 12-29-2019
文件夹。在 运行 2. 和 3. 之后,mysql 中的所有文件都在这里,我现在有一个很好的备份!
- 停止您当前的容器以确保 mysql 不是 运行。
- 创建一个虚拟临时容器,您可以在其中安装 2 个所需的卷。我倾向于使用 busybox 来完成此类任务 =>
docker run -it --rm --name temp_mysql_copy -v mediaviki-mysql:/old-mysql -v /path/to/ttpe/docker:/new-mysql busybox:latest
- 复制所有文件=>
cp -a /old-mysql/* /new-mysql/
- 退出虚拟容器(如果您使用我的上述命令,它将自行清理)
- 使用 mysql:8 图像创建一个新容器,在
/var/lib/mysql
中安装新文件夹(您可能需要在您的 syno docker gui 中执行此操作)。 - 如果一切正常,请删除旧的
mediaviki-mysql
卷