PostgreSQL 啟動失敗的解決方案

環境

Red Hat CloudForms 4.x

問題

postgresql 啟動失敗,並導致evmserverd崩潰。

[----] I, [2016-11-29T03:12:31.816753 #1201:e4f994] INFO -- : MIQ(PostgresAdmin.runcmd_with_logging) Running command... service rh-postgresql94-postgresql start
[----] E, [2016-11-29T03:12:32.886621 #1201:e4f994] ERROR -- : AwesomeSpawn: service rh-postgresql94-postgresql start exit code: 1
[----] E, [2016-11-29T03:12:32.886797 #1201:e4f994] ERROR -- : AwesomeSpawn: Redirecting to /bin/systemctl start rh-postgresql94-postgresql.service
Job for rh-postgresql94-postgresql.service failed because the control process exited with error code. See "systemctl status rh-postgresql94-postgresql.service" and "journalctl -xe" for

根本原因

/var 文件系統使用率100%。

解決方案:

擴展/var文件系統。

補充:WIN10安裝postgresql啟動服務失敗解決

win10安裝postgresql安裝時總是在最後提示安裝失敗,其實這個是不影響使用postgresql的。我使用postgresql時發現總是連不上本地數據庫。在cmd中輸入netstat -ano查看端口,發現本地總是沒有5432這個監聽端口,判斷是服務沒有開啟。

在cmd中進入postgresql下載地方的bin目錄裡。初始化pgsql:

initdb.exe -D ../data

啟動pgsql不要關閉窗口

pg_ctl.exe start -D ..\data

發現有提示

說是permission denied 創建data文件權限不夠。於是對我們下載postgresql的目錄點擊右鍵屬性裡,設置user的權限為完全控制

再次運行命令即可創建成功

之後每次使用pgadmin4前需要在cmd裡切換到下載postgresql的bin目錄下輸入命令

pg_ctl -D ../data -l logfile start

啟動本地監聽服務,即可有5432端口監聽,即可使用pgadmin4連接數據庫。

postgre服務註冊

pg_ctl.exe register -N "pgsql" -D 此處填寫data目錄地址

例如:(這是我的地址)

pg_ctl.exe register -N "pgsql" -D I:\postgresql\data

之後就可以啟動服務瞭

sc start pgsql;

如果cmd報錯說沒有權限,可以嘗試使用管理員啟動cmd。

以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。如有錯誤或未考慮完全的地方,望不吝賜教。

推薦閱讀: