Ubuntu

postgresql 安裝失敗,使用 apt-get

  • February 9, 2016

我在 AWS Ubuntu 映像上執行。

在嘗試設置我的機器時,我使用了 apt-get 來添加和刪除 PostgreSql 及其一些模組。

現在,當我執行時,出現sudo apt-get install postgresql-9.3以下錯誤:

Setting up postgresql-9.3 (9.3.10-0ubuntu0.14.04) ...
update-alternatives: using /usr/share/postgresql/9.3/man/man1/postmaster.1.gz to provide /usr/share/man/man1/postmaster.1.gz (postmaster.1.gz) in auto mode
* Starting PostgreSQL 9.3 database server                                                                                                                                                                                                     * Error: could not exec /usr/lib/postgresql/9.3/bin/pg_ctl /usr/lib/postgresql/9.3/bin/pg_ctl start -D /var/lib/postgresql/9.3/main -s -o  -c config_file="/etc/postgresql/9.3/main/postgresql.conf" : No such file or directory

唯一缺少的文件/目錄是/var/lib/postgresql/9.3/main

我試過:

  1. 添加目錄
  2. 刪除 postgresqlsudo apt-get remove postgresql-9.3並再次安裝

錯誤仍然發生。

我究竟做錯了什麼?我怎樣才能解決這個問題?

我的理解是您在解除安裝時刪除了集群並且它不會自動重新創建。

重新創建集群應該可以解決問題:

mkdir /var/lib/postgresql/9.3/main
chown postgres /var/lib/postgresql/9.3/main
su postgres
/usr/lib/postgresql/9.3/bin/pg_ctl -D /var/lib/postgresql/9.3/main initdb

您可能需要用 ubuntu 上使用的數據庫使用者帳戶替換postgres 。

查看 postgres 手冊以獲取更多資訊: http ://www.postgresql.org/docs/current/static/creating-cluster.html

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