我正在尝试安排一个批处理文件来备份 postgres 上的数据库。但是,作业卡在状态“r”上,没有任何迹象表明发生了什么,但是创建了一个 0kb 的 SQL 文件。当我手动运行批处理文件时,它执行得非常好。正常的插入语句运行良好
操作系统:Windows 10 postgres v11.4 pg admin v4.9
我正在使用超级用户 postgres 在主机本身上运行它
批处理文件内容:
@ECHO OFF
@setlocal enableextensions
@cd /d "%~dp0"
SET PGPATH=C:\"Program Files"\PostgreSQL\11\bin\
SET SVPATH=D:\pgsqlbak\
SET PRJDB=xxx
SET DBUSR=postgres
SET HOUR=%time:~0,2%%time:~3,2%%time:~6,2%
SET dtStamp1=0%time:~1,1%%time:~3,2%%time:~6,2%
SET dtStamp2=%time:~0,2%%time:~3,2%%time:~6,2%
FOR /F "TOKENS=2,3,4 DELIMS=/ " %%i IN ('DATE /T') DO SET d=%%k%%j%%i
if "%HOUR:~0,1%" == " " (SET dtStamp=%dtStamp1%) else (SET dtStamp=%dtStamp2%)
SET DBDUMP=%PRJDB%_%d%_%dtStamp%.sql
@ECHO OFF
%PGPATH%pg_dump -h 127.0.0.1 -p 5432 -U postgres %PRJDB% > %SVPATH%%DBDUMP%
pgpass:
127.0.0.1:5432:yyy:postgres:password
127.0.0.1:5432:xxx:postgres:password
127.0.0.1:5432:postgres:postgres:password
localhost:5432:yyy:postgres:password
localhost:5432:xxx:postgres:password
localhost:5432:postgres:postgres:password
还想知道如何杀死除了重新启动服务器之外正在运行的作业
对此的任何帮助将不胜感激