最近发布的项目操作系统使用的windows server 2012 ,数据库使用的是PostGresql9.4,数据库本身没有自动备份的功能,现在觉得最简单的实现方式就是利用windows的任务计划程序来每天定时的执行脚本来备份数据库。
网上一搜一大把,好多人都说已经用过,而且有实例,但拿下了之后不是运行不起来(不知道我系统的原因,还是版本不一致),就是不符合我想要的结果(我想要的是和PostGresql自带的备份功能结果一样的.backup文件格式,网上大多数rar或者sql),这里综合别人的写法和官网实例写出下面的bat文件,运行正常,做个备忘。
一、参考文章
二、windows 任务计划程序(网上一搜一大把,这边就不写具体链接啦)
三、改装后正常运行行的bat脚本文件
@ECHO OFF @setlocal enableextensions @cd /d "%~dp0" SET PGPATH=C:\"Program Files"\Postgresql\9.4\bin\pg_dump SET SVPATH=D:\ SET PRJDB=zckj 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,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
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。