数据是无价的,所以生产环境中定时备份数据库显得尤为重要。备份能防止服务器故障、天灾人祸和人为误操作带来的数据丢失。
上一篇文章我们说了Linux环境下的数据备份。这一篇就把之前留下的坑给填上了。
这一篇我们说一说winserver2012环境下如何做好数据库备份?
工作中虽然大部分生产环境首选服务器是Linux,Linux的性能毋庸置疑。但是也不排除会用的windows server作为服务器的情况
这里呢还是以这几年工作中接触到的几种常见数据库为例吧。
我们可以用一下命令实现helloworld
@echo off echo hello world pause & exit
本来在这里加了一堆批处理常用命令,发现篇幅太长了。那就后面单独弄一篇总结Windows批处理常用命令吧(又给自己挖了一个坑)。
将需要备份的脚本添加到backup.bat中
@echo off echo 当前的盘符及路径:%~dp0 echo 当前的盘符及路径的短文件名格式:%~sdp0 set filename=%date:~0,4%%date:~5,2%%date:~8,2% set expcmd=scott/tiger file=%~dp0\%filename%.dmp owner=scott log=%~dp0\%filename%.log buffer=9999999 echo 导出 >>exe%filename%.log 2>&1 call exp %expcmd% echo 压缩 >>exe%filename%.log 2>&1 7zr a %filename%.dmp.7z %filename%.dmp %filename%.log echo 删除 >>exe%filename%.log 2>&1 del %filename%.dmp
@echo off set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%" D:\MySQL\bin\mysqldump -u root -p123456 --databases db1 > D:\db_backup\db1_%Ymd%.sql @echo on
@ECHO OFF @setlocal enableextensions @cd /d "%~dp0" SET PGPATH=D:\PostgreSQL\9.3\bin\pg_dump SET SVPATH=E:\ SET PRJDB=db1 SET DBUSR=postgres SET DBROLE=postgres FOR /F "TOKENS=1,2,3 DELIMS=/ " %%i IN ('DATE /T') DO SET d=%%i-%%j-%%k FOR /F "TOKENS=1,2,3 DELIMS=: " %%i IN ('TIME /T') DO SET t=%%i%%j%%k SET DBDUMP=%PRJDB%_%d%_%t%.backup @ECHO OFF %PGPATH% -h localhost -p 5432 -U %DBUSR% --role %DBROLE% -w -F c -b -v -f %SVPATH%%DBDUMP% %PRJDB% echo Backup Taken Complete %SVPATH%%DBDUMP% pause --SET SVPATH=E:\ 表示文件存放路径 --SET PRJDB=BaoShan 表示要备份的数据库名称 --%PGPATH% -h localhost -p 5432 -U %DBUSR% --role %DBROLE% -w -F c -b -v -f %SVPATH%%DBDUMP% %PRJDB% 表示本机执行
@echo off set SrcDir=E:\mongodb4.1.7\backup forfiles /p %SrcDir% /s /m *.* /d -7 /c "cmd del /c /f /q /a @path" set path=%path%;E:\mongodb4.1.7\bin set Ymd=%date:~,4%%date:~5,2%%date:~8,2% mongoexport -d dbcloudresource -c sys_resource -u cloud_resource -p cloud_resource --type=JSON -o E:\mongodb4.1.7\backup\backup_%Ymd%.js set RAR_CMD="C:\Program Files\WinRAR\Rar.exe" %RAR_CMD% a -df "E:\mongodb4.1.7\backup\backup_%Ymd%.rar" "E:\mongodb4.1.7\backup\backup_%Ymd%.js"
① 首先打开系统的管理工具,选择《任务计划程序》
② 点击创建基本任务,输入这个定时任务的名称,比如我这边就是做一个db1数据库的备份
③ 点击下一步选择定时任务执行频率
④ 点击下一步选择任务开始时间 今晚0点10分开始
⑤ 选择执行的操作,此处选择上面已经添加好的backup.bat批处理脚本,因此选择《启动程序》
⑥ 完成