Configuration

如何在 Fedora 上正確執行 PostgreSQL

  • October 1, 2015

我決定在我的 Fedora 20 上執行 PostgreSQL,所以我做了

sudo yum install postgresql-server.x86_64 postgresql-libs.x86_64 postgresql.x86_64

現在,如果我postgres -D /var/lib/pgsql/data在普通使用者下執行,我會收到Permission denied for "/var/lib/pgsql/data/postgresql.conf",如果我在 root 下嘗試,我會收到一些錯誤,即我不應該在特權使用者下執行 postgres。

我理解這兩個錯誤,但現在它變得很奇怪 -sudo -u postgres postgres -D /var/lib/pgsql/data給了我我錯過的錯誤postgresql.conf- 如果我在 root 下創建它(因為 root 擁有該目錄),它會在啟動期間再次抱怨權限。如果我嘗試執行initdb -D /var/lib/pgsql/data它也不起作用,因為如果權限不正確(目錄歸根使用者所有)。

所以我真的不確定我應該做什麼,我做錯了什麼嗎?因為其中的所有/var/lib/內容都歸 root 所有,並且它是 Fedora 中配置的預設位置(至少對於 postgres 而言),所以在我看來真的搞砸了。

閱讀/usr/share/doc/postgresql/README.rpm-dist,它涵蓋了設置。特別是,它告訴您要創建數據目錄,您必須執行:

postgresql-setup initdb

如果您使用的是來自http://yum.postgresql.org/的 PGDG RPM,而不是 Red Hat 的那些,那就是:

/usr/pgsql-9.3/bin/postgresql93-setup initdb

我目前正在尋找改進官方 PostgreSQL 文件的方法,以使從 Fedora 的 RPM 或 Ubuntu 軟體包等常見軟體包安裝 PostgreSQL 的人更容易。它目前過於關注源安裝。

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