題 postgresql的2個實例,但我真的需要一個


我碰巧在我的機器上安裝了2個postgresql實例:9.1和9.2:

sudo service postgresql status
9.1/main (port 5432): down
9.2/main (port 5433): down

他們位於 /etc/postgresql/9.1/ 和 /etc/postgresql/9.2/。然後我跑 9.2 通過說 sudo service postgresql start 但是這個命令失敗了:

$ psql
psql: could not connect to server: No such file or directory
    Is the server running locally and accepting
    connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

我真的很想用 9.2 只是,我不需要2個實例。

你知道怎麼去除 9.1 安全或製造 9.2 成為主要的默認實例?


3
2017-12-17 08:59


起源




答案:


要刪除9.1實例(假設您不想保留數據):

sudo pg_dropcluster 9.1 main

dpkg --get-selections | grep postgres
sudo apt-get purge postgresql-9.1 postgresql-client-9.1

這可能會這樣做,但偶爾的工具可能會抱怨它更喜歡在端口5432上運行9.2實例。所以關閉9.2實例,編輯配置文件 /etc/postgresql/9.2/main/postgresql.conf 並改變 port = 設置。然後重新啟動它。


4
2017-12-17 23:44





安裝包時 postgresql,你將始終獲得最新版本並保留舊版本。 你可以安裝 postgresql-9.2 忽略更新版本並在您真正想要的時候進行遷移。


0
2017-12-18 10:27