簡體   English   中英

在Linux Mint Sarah中安裝Postgresql時出錯

[英]Error when install postgresql in linux mint sarah

我想在我的計算機Linux Mint Sarah中安裝postgresql,並完成過程安裝,但是當我在cmd postgres錯誤中鍵入psql時,如下所示:

安裝PostgreSQL時出錯

psql:無法連接到服務器:沒有這樣的文件或目錄服務器是否在本地運行並且在Unix域套接字“ /var/run/postgresql/.s.PGSQL.5432”上接受連接?

我如何解決? 謝謝

該錯誤表明psql實用程序找不到套接字來連接到數據庫服務器。

您可能沒有在后台運行數據庫服務,或者套接字位於其他位置,或者可能需要修復pg_hba.conf。

步驟1:驗證數據庫正在運行

該命令可能因操作系統而異。 但是在大多數* ix系統上,以下方法可以工作,它將在所有正在運行的進程中搜索postgres

ps -ef | grep postgres

在我的系統上,mac osx會吐出來

501   408     1   0  2Jul15 ??         0:21.63 /usr/local/opt/postgresql/bin/postgres -D /usr/local/var/postgres -r /usr/local/var/postgres/server.log

最后一列顯示了用於啟動服務器的命令和選項。

您可以使用以下命令查看可用於啟動postgres服務器的所有選項。

man postgres

從那里,您將看到-D和-r選項分別是datadir和logfilename。 步驟2:如果postgres服務正在運行

使用find搜索套接字的位置,該位置應在/ tmp中

sudo find /tmp/ -name .s.PGSQL.5432

如果postgres正在運行並接受套接字連接,則上面的內容應該告訴您套接字的位置。 在我的機器上,結果是:

/tmp/.s.PGSQL.5432

然后,嘗試使用該文件的位置明確地通過psql連接,例如。

psql -h /tmp/ dbname

步驟3:如果服務正在運行,但是看不到套接字

如果找不到套接字,但看到該服務正在運行,請驗證pg_hba.conf文件是否允許本地套接字。

瀏覽到datadir,您應該找到pg_hba.conf文件。

默認情況下,在文件底部附近,您應該看到以下幾行:

# "local" is for Unix domain socket connections only
local       all       all       trust

如果看不到它,則可以修改文件,然后重新啟動postgres服務。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM