自学内容网 自学内容网

Mysql实现定时自动备份(Windows环境)

一.新建数据库备份目录

在这里插入图片描述

二.新建批处理文件

创建批处理文件mysql_backup.bat

@echo off
set BACKUP_DIR=D:\backup
set MYSQL_USER=root
set MYSQL_PASS=123456
set MYSQL_HOST=localhost
set DATABASE_NAME=phoenix
set DATE=%date:~0,4%-%date:~5,2%-%date:~8,2%_%time:~0,2%-%time:~3,2%-%time:~6,2%
set DATE=%DATE: =0%

REM 自己安装mysql的路径
cd C:\Program Files\MySQL\MySQL Server 8.0\bin

REM 创建备份文件
mysqldump -u %MYSQL_USER% -p%MYSQL_PASS% -h %MYSQL_HOST% %DATABASE_NAME% > %BACKUP_DIR%\mysql_backup_%DATABASE_NAME%_%DATE%.sql

REM 压缩备份文件(可选)
REM 你也可以选择使用 zip 或其他压缩工具进行备份压缩
REM 例如使用 7zip
REM "C:\Program Files\7-Zip\7z.exe" a -tzip %BACKUP_DIR%\mysql_backup_%DATE%.zip %BACKUP_DIR%\mysql_backup_%DATE%.sql

REM 删除超过30天的备份文件(可选)
forfiles /p "%BACKUP_DIR%" /m *.sql /d -30 /c "cmd /c del @path"

[mysqldump]
user=user_name
password=password

如果要备份多个数据库

可以通过空格分隔数据库名称。例如,假设你要备份 database1database2,脚本如下

REM 创建备份文件
mysqldump -u %MYSQL_USER% -p%MYSQL_PASS% -h %MYSQL_HOST% database1 database2 > %BACKUP_DIR%\mysql_backup_database1_database2_%DATE%.sql

mysql 5.6 以上版本的数据库可能会报下面错误
mysqldump: [Warning] Using a password on the command line interface can be insecure.

解决办法:

在mysql_backup.bat 最后面加

[mysqldump]

user=user_name
password=password
三.设置 Windows 任务计划程序(Task Scheduler)

步骤:

1.打开“任务计划程序”(按 Win + R 输入 taskschd.msc 并按回车)。

在这里插入图片描述

2.在右侧面板,点击“创建基本任务…"。

在这里插入图片描述

3.设置任务的名称和描述,然后点击“下一步”。

在这里插入图片描述

4.选择任务触发器(选择每天)
在这里插入图片描述

5.设定每天备份的时间,可以选择每天固定的时间

在这里插入图片描述

6.设定好时间后选择启动程序
在这里插入图片描述

7.选择刚刚创建的批处理文件,点击完成

在这里插入图片描述

8.查看备份程序

在这里插入图片描述

9.刚刚设定的时间为每天18:10分,等到18:10分时,可以看到备份目录的数据库信息

在这里插入图片描述


原文地址:https://blog.csdn.net/chengxuyuan316/article/details/144117786

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!