我想通過pgAdmin在pgAgent的特定時間設置批處理文件路徑的步驟。但是,當我運行它失敗,在步驟統計我得到這個輸出pgAgent計劃作業在Windows上失敗
C:\ Windows \ System32下> C:\ PostgreSQL的\ run.bat中 「psql的」不被識別爲一個內部或外部命令, 可操作的程序或批處理文件。
詳情:
Postgresql 9.3.5 on local system account (Current User)
pgAdmin 1.18.1
pgAgent via stack builder with Administrator account (Current User)
在的run.bat我只有兩個聲明
@echo off
psql -h localhost -p 5433 -U postgres -d test -a -f "test.sql"
我PSQL在系統路徑變量,並能夠訪問它CMD。當我手動運行該bat文件時,它正在執行而不會失敗。但是當我在pgAgent作業中給出批處理文件路徑(C:\postgresql\run.bat)
時,它在統計中給出了這個錯誤。
我的配置有什麼問題嗎?爲什麼它總是那麼C:\Windows\system32>
?
編輯:
我的run.bat文件
@ECHO OFF
SET LBSDatabaseName=Test
SET dbHost=localhost
SET dbPort=5434
SET dbUser=postgres
SET logFile=DbInstall.log
SET sqlFolder="D:\SOURCECODE\archivescripts"
"C:\Program Files (x86)\PostgreSQL\9.3\bin\psql.exe" -h "%dbHost%" -p "%dbPort%" -d "%LBSDatabaseName%" -U "%dbUser%" -L "%logFile%" -q -f "%sqlFolder%\Archive.sql"
我Archive.sql
update "Archive".emp set "FirstName"='Srikanth Dyapa';
你需要給其中'psql'位於你的'run.bat' – 2014-09-22 04:35:00
路徑上的所有
hosts
告訴我的絕對路徑的'psql'(在我的例子中是'C:\ Program Files \ PostgreSQL \ 9.3 \ bin \ psql.exe') – 2014-09-22 04:38:09@WingedPanther我試過你的建議,現在我看到它的狀態爲Running,它沒有更新表記錄,可能是什麼問題呢? – 2014-09-22 05:36:11