Windows-Xp

postgresql 服務損壞,我該如何重新創建服務?

  • June 22, 2020

我最近被騙執行其中一個系統資料庫清理程序(RegistryBooster)。

在我嘗試啟動我的 postgres 服務之前,它似乎工作正常。

出於某種原因,“執行檔的路徑”不再在服務屬性頁面上設置,顯然沒有路徑就無法啟動。

如何修復現有服務或僅解除安裝/重新安裝服務而不完全重新安裝 postgres?

postgres 8.4 Windows XP SP3

編輯: 在嘗試解決此問題時,我不小心完全刪除了該服務。所以問題變成了:如何在不重新安裝整個 postgres 的情況下重新安裝服務?

再次感謝…

嘗試在系統資料庫中添加/更改鍵“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\pgsql-8.4\ImagePath”(更改版本和數據目錄):

"C:\Program Files\PostgreSQL\8.4\bin\pg_ctl.exe" runservice -w -N "pgsql-8.4" -D "C:\Program Files\PostgreSQL\8.4\data\"

或執行命令: “C:\Program Files\PostgreSQL\8.4\bin\pg_ctl.exe” runservice -w -N “pgsql-8.4” -D “C:\Program Files\PostgreSQL\8.4\data"

如果沒有幫助,您將需要重新安裝 PostgreSQL。

我有兩個不同的 PostgreSQL 安裝,服務最終自發停止工作,我認為是由於 Windows 重大更新後的權限問題(絕對不是因為系統資料庫清理器!)。

但無論如何,我認為值得指出的是,@pstanton 在對@alvosu 答案的評論中所說的確實是一個更好的答案,即:

要刪除服務:

pg_ctl unregister -N "PostgreSQL 9.6 Server"

(使用您的服務實際擁有的簡稱)

然後重新安裝它

pg_ctl register -N "PostgreSQL 9.6 Server"

-D "C:\Program Files\PostgreSQL\data\pg96"如果您沒有PGDATA設置環境變數,則需要將標誌(或任何正確的路徑)添加到 register 命令。

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