mysql的自动备份批处理脚本(Windows)

@echo off

rem mysql安装路径
set mysql_home=d:\mysql

rem winrar安装路径
set rar_file="c:\Program Files\WinRAR\winrar.exe"

rem 设置备份文件存放路径
set backup_path=e:\mysql_bak

rem 设置备份数据库名
set backup_database=railroad

rem 设置备份生成脚本名
set backup_file=railroad.sql

rem 设置打包文件名
set pack_file=railroad.rar

rem 数据库地址(保留设置,未使用)
set mysql_address=localhost

rem 数据库用户名
set mysql_user=railroad

rem 数据库密码
set mysql_password=railroad

rem 历史备份最大保留天数
set max_savedays=30

rem 执行备份命令导出数据库脚本
%mysql_home%\bin\mysqldump -l -e --hex-blob -u%mysql_user% -p%mysql_password% %backup_database% > %backup_path%\%backup_file%

rem 将导出的数据库脚本打包压缩
%rar_file% m -rr -ag %backup_path%\%pack_file% %backup_path%\%backup_file%

rem 删除老的备份,最大保留天数在max_savedays变量里设置
forfiles -p %backup_path% -m *.rar /d -%max_savedays% /c "cmd /c del /f/q @path"




说明:

mysqldump 参数:-l 锁表,-e 导出单挑insert语句(还原速度更快),--hex-blob支持blob数据导出
恢复时使用命令:mysql -u用户名 -p密码 数据库名 < 备份脚本

rar 参数:m 移动文件到压缩包,-rr 添加恢复记录,-ag 压缩文件自动生成带日期的文件名

forfiles 参数:-p 搜索路径,-m 搜索文件类型,/d -数字 搜索大于多少天数的文件,/c "命令"



说明:
mysqldump 参数:-l 锁表,-e 导出单条insert语句(还原速度更快),--hex-blob支持blob数据导出
恢复时使用命令:mysql -u用户名 -p密码 数据库名 < 备份脚本
rar 参数:m 移动文件到压缩包,-rr 添加恢复记录,-ag 压缩文件自动生成带日期的文件名
forfiles 参数:-p 搜索路径,-m 搜索文件类型,/d -数字 搜索大于多少天数的文件,/c "命令"

你可能感兴趣的:(数据库)