>  기사  >  데이터 베이스  >  Windows下实现PostgreSQL自动备份_MySQL

Windows下实现PostgreSQL自动备份_MySQL

WBOY
WBOY원래의
2016-06-01 13:48:161321검색

bitsCN.com

 

本文介绍怎样创建一个Windows批处理文件来自动备份PostgreSQL数据库。   背景 在我工作上一个使用PostgreSQL数据库的项目上需要一个自动化系统来每天执行备份。经过一番研究决定通过创建一个Windows批处理文件并添加到Windows计划任务中来实现。 下面是具体步骤:   怎样配置 第一步: 下载批处理文件。   第二步: 你可以通过一个简单的命令(schtasks /?查看帮助)或者使用图形界面(开始-控制面板-系统和安全-管理工具-任务计划程序)运行任务计划管理工具,还可以在%SYSTEMROOT%/System32目录下双击Taskschd.msc来启动它。   第三步: 你可以通过向导或通过XML文件导入信息来创建基本任务。向导方式创建方法见任务计划程序帮助,下面介绍下命令行语法: 1 schtasks /Create [/S [/U [/P []]]] 2     [/RU [/RP ]] /SC [/MO ] [/D ] 3     [/M ] [/I ] /TN /TR [/ST ] 4     [/RI ] [ {/ET | /DU } [/K] [/XML ] [/V1]] 5     [/SD ] [/ED ] [/IT] [/Z] [/F]

 

查看此命令帮助: 1 schtasks /Create /?

 

如果在Windows防火墙中远程任务计划管理被禁用而文件和打印共享被启用并且远程注册表服务正在运行,远程计算机上将会被创建一个V1任务即使没有使用参数V1。参数V1表明一个任务对下层系统可见。   使用代码 脚本: 01 @ECHO  OFF 02 @setlocal enableextensions@cd  /d "%~dp0" 03   04 SET PGPATH=C:/"Program Files"/PostgreSQL/9.1/bin/ 05 SET SVPATH=f:/ 06 SET PRJDB=demo 07 SET DBUSR=postgres 08 FOR /F "TOKENS=1,2,3 DELIMS=/ " %%i IN ('DATE /T') DO SET d=%%i-%%j-%%k 09 FOR /F "TOKENS=1,2,3 DELIMS=: " %%i IN ('TIME /T') DO SET t=%%i%%j%%k 10   11 SET DBDUMP=%PRJDB%_%d%_%t%.sql@ECHO  OFF 12 %PGPATH%pg_dump -h localhost -p 5432 -U postgres %PRJDB% > %SVPATH%%DBDUMP% 13   14 echo Backup Taken Complete %SVPATH%%DBDUMP%

 

初始值
  • PGPATH - PostgreSQL路径
  • SVPATH - 备份文件路径
  • PRJDB - 要备份的数据库名
  • DBUSR - 数据库用户名
bitsCN.com
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.