背景
在我工作上一个使用PostgreSQL数据库的项目上需要一个自动化系统来每天执行备份。经过一番研究决定通过创建一个Windows批处理文件并添加到Windows计划任务中来实现。
下面是具体步骤:

怎样配置
第一步:
下载批处理文件。

第二步:
你可以通过一个简单的命令(schtasks /"htmlcode">

schtasks /Create [/S <system> [/U <username> [/P [<password>]]]]
  [/RU <username> [/RP <password>]] /SC <schedule> [/MO <modifier>] [/D <day>]
  [/M <months>] [/I <idletime>] /TN <taskname> /TR <taskrun> [/ST <starttime>]
  [/RI <interval>] [ {/ET <endtime> | /DU <duration>} [/K] [/XML <xmlfile>] [/V1]]
  [/SD <startdate>] [/ED <enddate>] [/IT] [/Z] [/F]
 

查看此命令帮助:
 

schtasks /Create /"htmlcode">
<a href="http://my.oschina.net/echolee1987" target="_blank" rel="nofollow">@ECHO</a> OFF
@setlocal enableextensions<a href="http://my.oschina.net/duini" target="_blank" rel="nofollow">@cd</a> /d "%~dp0"
 
SET PGPATH=C:\"Program Files"\PostgreSQL\9.1\binSET SVPATH=f:SET PRJDB=demo
SET DBUSR=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%.sql<a href="http://my.oschina.net/echolee1987" target="_blank" rel="nofollow">@ECHO</a> OFF
%PGPATH%pg_dump -h localhost -p 5432 -U postgres %PRJDB% > %SVPATH%%DBDUMP%
 
echo Backup Taken Complete %SVPATH%%DBDUMP%

 
初始值

  •     PGPATH - PostgreSQL路径
  •     SVPATH - 备份文件路径
  •     PRJDB - 要备份的数据库名
  •     DBUSR - 数据库用户名


标签:
PostgreSQL

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
评论“在Windows下自动备份PostgreSQL的教程”
暂无“在Windows下自动备份PostgreSQL的教程”评论...