Windows环境下使用MySQL:实现自动定时备份

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

一、编写备份脚本

1

2

3

4

5

6

7

8

9

rem auther:www.yumi-info.com

rem date:20230209

rem ******MySQL backup start********

@echo off

forfiles /p "E:\mysql\MySQL BackUp" /m backup_*.sql -d -30 /c "cmd /c del /f @path"

set "Ymd=%date:~0,4%%date:~5,2%%date:~8,2%0%time:~1,1%%time:~3,2%%time:~6,2%"

"E:\mysql\MySQL Server 5.6\bin\mysqldump" --opt --single-transaction=TRUE --user=root --password=123456 --host=127.0.0.1 --protocol=tcp --port=3306 --default-character-set=utf8 --single-transaction=TRUE --routines --events "yumi_website" > "E:\mysql\MySQL BackUp\backup_%Ymd%.sql"

@echo on

rem ******MySQL backup end********

这是一段很常见的windows批处理脚本文件我来简单解释一下其中的关键部分

1

forfiles /p "E:\mysql\MySQL BackUp" /m backup_*.sql -d -30 /c "cmd /c del /f @path"

forfiles 用来对备份目录下的过期备份进行删除。“E:\mysql\MySQL BackUp”是备份文件所在的路径可以自行修改。“backup_*.sql”指的是该路径下所有以“backup_”开头以“.sql”作为后缀的数据库备份文件。而后面的数字“30”表示30天过期。

1

set "Ymd=%date:~0,4%%date:~5,2%%date:~8,2%0%time:~1,1%%time:~3,2%%time:~6,2%"

使用set命令来定义一个名为“Ymd”的变量这个变量的值就是后面的一大串规则简单说就是当前的日期和时间

1

"E:\mysql\MySQL Server 5.6\bin\mysqldump"

这一行命令就是调用MySQL自带的备份工具了注意这个路径必须写成你自己的“mysqldump.exe”所在的路径一般都是在MySQL安装路径的/bin目录下。而这一行命令后面紧跟着一大串的参数我们挑几个重要的来解释

1

--user=root

连接MySQL数据库服务的账户通常该账户必须具备数据库备份操作的权限。为了简便我们使用了root但是在实际生产环境中并不建议使用root账户避免账户和密码泄露从而造成不必要的麻烦。

1

--password=123456

这是连接MySQL数据库服务的密码

1

--host=127.0.0.1

这是数据库服务所在的服务器ip地址

1

--port=3306

这是数据库服务所在的服务器的端口号

1

--events "yumi_website" > "E:\mysql\MySQL BackUp\backup_%Ymd%.sql"

events参数即实现了将数据库备份到一个指定的文件这一操作。"yumi_website"是需要做备份的数据库而大于号“>”右边的就是我们的备份文件所保存的服务器目录和文件名了。

 

二、设定Windows任务

完成了上述步骤后我们需要添加Windows计划任务。

在Windows Server2012中我们进入服务器管理面板点击右上角菜单栏中的“工具”选择其中的“任务计划程序”

 

 

 

打开了任务计划程序之后我们点击右侧的“创建基本任务”

 

 

然后我们需要填写任务的名称以及描述信息

点击下一步之后我们需要设定任务的执行频率我选择的是“每天”

再次点击“下一步”设置任务执行的时间

 

在“下一步”中我们选择“启动程序”

在之后的对话框中我们需要选择刚才所编写的批处理文件

完成这些步骤后windows会给我们看一下整个任务的概述信息

确定无误之后点击“完成”就可以了。此时我们就会看到在Windows的任务列表里多了一条新的任务

至此在Windows环境下自动备份MySQL的设置就全部完成了。

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: windowsmysql

“Windows环境下使用MySQL:实现自动定时备份” 的相关文章