1、编写数据备份脚本

vim mysqldump.sh

#!/bin/bash
docker exec -i 替换为自己MySQL容器id/容器名 mysqldump -uroot -p123456 --port=3306 数据库名称 > /home/myuser/mydb.sql

直接在docker里执行备份则使用:docker exec -it 容器id/容器名 mysqldump -uroot -p123456 --port=3306 数据库名称 > /home/myuser/mydb.sql

2、添加定时任务

vim /etc/crontab

 设置每天1点执行一次,注意替换数据备份脚本路径。可按自己意愿设置cron表达式

0 1 * * * sh /home/shell/mysqldump.sh

3、数据还原

将备份文件copy到容器内:

## docker cp 源文件路径 容器id/容器名:容器内目标路

docker cp /home/myuser/mydb.sql mysql:/etc/mysql

##注意替换容器id/容器名 docker exec -it 容器id/容器名 /bin/bash

docker exec -it mysql /bin/bash
mysql -uroot -p123456

use 数据库名称
source /etc/mysql/mydb.sql

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐