JZGKCHINA
工控技术分享平台
前 言
突然有一天当你看到这个界面你是否会感到惊慌和无助?
希望答案是否。
因为我有备份!!!
下面谈谈mysql在win10系统自动备份以及使用docker安装的mysql的自动备份过程。
01
win10系统mysql自动备份
首先编写一个定时备份mysql数据库.bat脚本以及在C盘新建一个backup文件夹(因为虚拟机只有C盘,实际建议用其他盘)
cd C:\soft\mysql-8.0.30-winx64\bin: 这条命令用于将当前目录更改为 MySQL 的安装目录下的 bin 文件夹,确保脚本能执行 mysqldump 命令,如果不执行切换目录命令可能备份的文件是空的。
-ucyl: 指定要连接 MySQL 的用户名为 cyl。
-p123456: 指定连接 MySQL 的密码为 123456。
edge_comput: 这是要备份的数据库名。
>C:\backup\backup_%date:~0,4%%date:~5,2%%date:~8,2%_%time:~0,2%%time:~3,2%%time:~6,2%.sql。
> 符号用于将命令输出重定向到 C:\backup 文件夹下,文件名格式为 backup_日期_时间.sql。
%date:~0,4%%date:~5,2%%date:~8,2% %time:~0,2%%time:~3,2%%time:~6,2% 是用于获取日期和时间的批处理变量。
手动执行一下bat脚本,则在C盘的backup文件夹下出现备份文件。
下面利用win10自带的任务计划程序来实现定时备份数据库,按下 Win + R 键,然后输入 "taskschd.msc" ,点击 "创建基本任务"按钮,输入任务的名称和描述。
在任务触发器设置中,选择设置计划任务运行的时间和频率。
在操作设置中,选择运行程序并指定之前创建的批处理脚本的路径。
在完成向导后,点击 "完成"按钮,这样就可以用定时任务来自动备份 MySQL 数据库。
02
使用docker安装的mysql的数据备份
在终端命令中输入:mkdir /backup 创建一个backup文件夹
执行docker ps 查看正在运行的容器 其中NAMES:容器的名字
执行:docker exec mysql mysqldump -uroot -p123456 edge_comput > /backup/edge_comput_$(date +%Y%m%d%H%M%S).sql
其中:
docker exec: 用于在运行中的容器内部执行命令。
mysql: 这是要执行命令的容器的名称,即上面提到的NAMES。
mysqldump -uroot -p123456 edge_comput: 这是实际要在容器内执行的命令。
> /backup/edge_comput_$(date +%Y%m%d%H%M%S).sql
$(date +%Y%m%d%H%M%S)是一个命令替换,用于将当前的日期和时间附加到文件名后面。
输入:crontab -e 进入定时任务编辑界面
分别设置每5分钟执行一次和每天零点执行一次
以上是对win10和docker安装mysql进行数据备份的一个介绍,希望对大家有所帮助。