postgresql 服務損壞,我該如何重新創建服務?
我最近被騙執行其中一個系統資料庫清理程序(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 命令。