mysqldump+WinRAR压缩备份数据库

使用mysqldump备份数据库,以下是bat文件代码
@echo off
rem 脚本使用配置开始=======================start
::设置数据库所在ip
set ip=localhost
::设置数据库端口
set port=3306
::设置数据库连接用户(为了保证导出函数,视图,存储过程,触发器请给用户设置权限)
set user=root
::设置数据库连接用户密码(密码中的%需要两个%%转义)
set password="E=eK*Y)gXI@2%%kCd-Atl~RS[[0"
::设置备份文件存储位置
set dataFolder=C:\Users\Administrator\Desktop\mysqlbak
::设置压缩软件WinRAR的安装目录
set winrarPath="C:\Program Files\WinRAR"

rem 通过查询出数据库名称备份sql,可排除不需要备份的数据库
set sql="select schema_name from information_schema.schemata where schema_name in ('bk_sys')"
rem 脚本使用配置结束=======================end

rem 创建存储文件夹
IF NOT EXIST %dataFolder% (
    mkdir %dataFolder%
)

rem 创建时间
set datevar=%date:~0,4%%date:~5,2%%date:~8,2%

rem 查询出需要备份的库名称并保存到alldataBaseName.txt文件
mysql -h %ip% -u%user% -p%password% -P %port% -e %sql% > %dataFolder%\alldataBaseName.txt

rem 创建日期文件夹
if not exist "%dataFolder%\%datevar%\" (
    mkdir "%dataFolder%\%datevar%\"
)

rem 循环备份数据库
for /f "skip=1" %%i in (%dataFolder%\alldataBaseName.txt) do (
    echo 开始备份=======%%i 
    mysqldump -R -u%user% -p%password% -h%ip% -P%port% %%i > %dataFolder%\%datevar%\%%i_%datevar%.sql
)

rem 压缩备份文件
::若压缩文件存在,先删除
if exist "%dataFolder%\%datevar%.rar" (
    del %dataFolder%\%datevar%.rar
)
::使用WinRAR压缩文件并删除源文件
%winrarPath%\Rar.exe a -k -r -s -m5 -ep1 -df %dataFolder%\%datevar%.rar %dataFolder%\%datevar%
rem 删除名称文件
del %dataFolder%\alldataBaseName.txt

echo 备份结束
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值