我是靠谱客的博主 愉快咖啡豆,这篇文章主要介绍Windows下bat脚本备份MySQL数据库,现在分享给大家,希望可以做个参考。

MySQL数据库备份bat 脚本链接

https://download.csdn.net/download/qq_15735767/12558587

脚本描述:

1、多个数据库名定义在文件中,脚本通过读取文件,循环获得数据库名称,进行备份

2、备份sql存储在以时间命名的文件夹中,自动压缩并删除压缩前的文件

3、删除前7天的备份文件

具体脚本信息如下:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
@echo off :: 使用mysqldump逐个备份所有数据库到指定目录 :: 注意,实现把所有数据库逐行写入database_info.txt文件,并且该文件和数据库备份目录在同一级 setlocal ENABLEDELAYEDEXPANSION :: 数据库备份目录 set "base_dir=E:MySQL_Back" set ip=xxxxx set user=xxxxx set pass=xxxxx set port=xxxxx set "Ymd=%date:~0,4%%date:~5,2%%date:~8,2%0%time:~1,1%%time:~3,2%%time:~6,2%" :: 存储数据库名,循环使用 set "dbFiles=%base_dir%database_info.txt" :: 保存sql备份成功和失败的数据库 echo backup success info > %base_dir%backup_success.txt echo backup fail info > %base_dir%backup_fail.txt set "successFile=%base_dir%backup_success.txt" set "failFile=%base_dir%backup_fail.txt" :: 以当前时间命名创建目录 md %base_dir%%Ymd%_sql :: 删除7天以前以 _sql.rar 结尾的文件 forfiles /p %base_dir% /m "*_sql.rar" /d -7 /c "cmd /c if @isdir==TRUE (rmdir /q /s @path) else (del /f @path)" >nul 2>nul :: 备份,Utils下有mysqldump工具 cd /d "%base_dir%Utils" echo MySQL Start Backup... for /f %%i in (%dbFiles%) do ( set db=%%i echo !db! mysqldump --no-defaults --force -h%ip% -u%user% -p%pass% -P%port% --databases !db! > %base_dir%%Ymd%_sql!db!.sql 2>nul :: 判断 备份成功或失败记录到相关文件 if errorlevel 0 ( echo !db! Backup finished. >> %successFile% ) else ( echo !db! Backup fail. >> %failFile% ) ) echo MySQL Backup complete! :: 使用Rar工具压缩,取决于服务器安装了什么压缩软件 echo Compressing file, please wait... "%base_dir%WinRARRar.exe" a -ep1 "%base_dir%%Ymd%_sql.rar" "%base_dir%%Ymd%_sql" 2>nul echo Compressed file complete! rmdir /q /s %base_dir%%Ymd%_sql pause

 

最后

以上就是愉快咖啡豆最近收集整理的关于Windows下bat脚本备份MySQL数据库的全部内容,更多相关Windows下bat脚本备份MySQL数据库内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(77)

评论列表共有 0 条评论

立即
投稿
返回
顶部