1、首先新建一个bat文件,用来执行数据库备份命令。
内容如下:(路径、IP、文件名等按需指定)
@ECHO OFF
@set DirName=%date:~0,7%
@set FileName=%date:~0,10%_DB_NAME.backup
@if %date:~8,2% == 01 (md E:\DBbackup\"%DirName%")
@if not exist E:\DBbackup\"%DirName%" (md E:\DBbackup\"%DirName%")
@if not exist %DirName% (md %DirName%)
"D:\PostgreSQL\9.1\bin\pg_dump.exe" -i -h xxx.xxx.xxx.xxx -p 5432 -U postgres -Ft -f E:\DBbackup\%FileName% DB_NAME
@ECHO ON
2、执行上边的bat时会要求输入数据库密码,为解决该问题,
需创建postgres密码文件“pgpass.conf”,
内容为“xxx.xxx.xxx.xxx:5432:DB_NAME:postgres:PASSWORD”
放在“D:\PostgreSQL\9.1\data”路径下,
并新建环境变量【PGPASSFILE】值为“D:\PostgreSQL\9.1\data\pgpass.conf”,这样运行时就不需要输入密码了。
3、最后把bat放到任务计划中,每天执行即可。