dos文件备份以及mysql数据库备份
场景
偶然有机会维护公司的一个应用系统,最近又有一些需求变更,每次升级都想备份一下,但是本人实在是懒,所以就做bat对文件拷贝以及数据库导出。
准备工作
1.文件copy
2.文件压缩
3.数据库导出
文件copy就使用xcopy,压缩呢,Windows系统,之前安装了一个HaoZip,刚好可以用来压缩文件,数据库呢使用的是mysql,唉就用最简单的mysqldump,越简单越好。
脚本如下
:: 关闭输出、回显
echo off
:: 设置好压文件路径
set hzip_path=D:\Applications\Haozip
:: 根据时间进行命名,获取年月日
set data_time=%date:~0,4%%date:~5,2%%date:~8,2%
:: 设备备份文件基础路
set base_path=D:\dbBack
set host=10.0.41.69
:: 拼接备份文件夹名称
set back_path=%base_path%\back%data_time%
:: 拼接数据库备份文件名称
set cmdb_bakpath=%back_path%\cmd%data_time%.dump
set zippath=%back_path%\db%data_time%.zip
:: 如果文件夹不存在就创建
IF NOT EXIST %back_path% MD %back_path%
set /p dbpwd=请输入数据库密码,然后回车
mysqldump -uroot -p%dbpwd% -h %host% -c --default-character-set=utf8mb4 -B cmdb > %cmdb_bakpath%
:: 复制文件
xcopy %back_path%\*.* %zippath% /s /h /d /c /y /i
::利用好压,压缩文件
%hzip_path%\HaoZipC a -tzip %zippath% %back_path%\*.*
:: 删除原文件
del %cmdb_bakpath%
pause>nul