Windows

Error1053 試圖在 Windows 上將 postgres 作為服務啟動

  • February 18, 2016

我在 windows7 上安裝了 postgres 並嘗試通過控制面板啟動服務。它產生錯誤 1053。

當我嘗試從命令行執行 postgres.exe 時,我收到以下消息:

C:\Program Files (x86)\PostgreSQL\9.0\bin>postgres.exe
2011-07-24 14:02:29 IST LOG:  could not create file "postmaster.opts": Permission denied

預設數據目錄是

C:\Program Files (x86)\PostgreSQL\9.0\data

我已將 PGDATA 環境變數設置為上述目錄。

另外,我已經編輯了pg_hba.conf該目錄中的文件以添加一個新行,如下所示:

local   all postgres    ident  sameuser

我嘗試在 Windows 防火牆中使用允許的 postgresql 伺服器(私有和公共網路都打勾)啟動服務,當這沒有解決問題時,關閉公共和私有網路的防火牆..

仍然無法啟動服務。我嘗試禁用 AVG resident shield。這些都不起作用。

知道該怎麼做嗎?


更新:

我試過這個:

C:\Program Files (x86)\PostgreSQL\9.0\bin>pg_ctl restart
pg_ctl: PID file "C:/Program Files (x86)/PostgreSQL/9.0/data/postmaster.pid" does not exist
Is server running?
starting server anyway
server starting

C:\Program Files (x86)\PostgreSQL\9.0\bin>2011-07-24 16:12:57 IST LOG:  could not create file "postmaster.opts":

仍然沒有運氣。

至於日誌,我在文件夾中找到了 2 個 txt 文件data/pg_log。它們包含安裝後立即發生的事件日誌,而不是我後來啟動 postgres 的嘗試。我已經把它放在這裡了

在 Windows 事件查看器中,我收到了一系列錯誤事件條目,例如http://pastebin.com/K6jUPPAy。它們都包含類似於以下內容的消息:

2011-07-24 12:46:44 IST FATAL:  could not access status of transaction
0 2011-07-24 12:46:44 IST DETAIL:  Could not open file
"pg_notify/0000": Permission denied.

如果還有其他日誌,請告訴我在哪裡可以找到它們。

這只是一個猜測,但可能 PostgreSQL 目錄設置為只讀。閱讀這篇文章了解更多資訊。

我只是遇到了同樣的錯誤,在我的情況下,這是因為我為 posgresql 分配了太多記憶體(sort_mem 和 shared_buffers),並且以某種方式阻止了啟動。我只需要返回並將 posgresql.conf 替換為出廠預設文件。

祝你好運

引用自:https://serverfault.com/questions/294060