当前位置:数据库 > Postgres >>

Windows下Postgres数据库自动备份

Windows下Postgres数据库自动备份
 
1、首先新建一个bat文件,用来执行数据库备份命令。
内容如下:(路径、IP、文件名等按需指定)  www.zzzyk.com  
[plain] 
@ECHO OFF   
@set DirName=%date:~0,7%   
@set FileName=%date:~0,10%_<span style="font-family: Arial, Helvetica, sans-serif; color: rgb(255, 0, 0);">DB_NAME</span><span style="font-family: Arial, Helvetica, sans-serif;">.backup </span>  
  
@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 <span style="color:#ff0000;">xxx.xxx.xxx.xxx</span> -p 5432 -U postgres -Ft -f E:\DBbackup\%FileName% <span style="color:#ff0000;">DB_NAME</span>  
  
@ECHO ON   
  www.zzzyk.com  
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放到任务计划中,每天执行即可。
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,