由於我重新啟動 Windows 以安裝更新,Postgres 停止作為服務啟動。我認為這可能是一個權限,所以我給了每個人修改postgres安裝資料夾的能力。然後我嘗試使用啟動來運行資料庫並且它有效。但是,當我嘗試啟動該服務時,我收到以下訊息:本機電腦上的服務已啟動並停止。
然後我嘗試重新安裝Postgres,但它到了最後並且無法啟動。
任何幫助都會很棒。
答案1
我在 v9.4 上遇到了同樣的問題
我發現刪除c:\Program Files(x86)\PostgreSQL\9.4\data\postmaster.pid
然後\postmaster.opts
重新啟動服務可以解決問題。
答案2
切勿在未檢查錯誤日誌的情況下執行任何激烈的操作,例如卸載並重新安裝:
(Windows) C:\Program Files\PostgreSQL<版本>\data\log
問題可能是非常簡單的事情,例如(在我的例子中)IP 位址pg_hba.conf
缺少掩碼 - 在這種情況下盲目卸載可能不起作用。
答案3
問題的解決辦法是完全卸載Postgres並重新安裝。我確保在重新安裝之前從磁碟中刪除了它的所有痕跡。這似乎是讓它發揮作用的唯一方法。
答案4
我使用的是 Windows,我注意到有時日誌不會告訴您出了什麼問題。我發現的一個解決方法是:
在我的系統上,postgres.exe 位於「C:/Program Files/PostgreSQL/16/bin/postgres.exe」。你的應該位於類似的位置。您必須將 16 更改為您自己的 PostgreSQL 版本號。
打開CMD並運行
"C:/Program Files/PostgreSQL/16/bin/postgres.exe" "-D" "C:\Program Files\PostgreSQL\16\data"
輸出將告訴您程式無法正常運作的原因,然後您可以繼續解決問題。
在某些情況下,您會發現您的配置存在一些問題,一旦這些問題修復,程式應該可以正常運行而不會再出現任何問題。