Postgresql

在“postgres”以外的系統使用者下安裝 PostgreSQL?

  • April 4, 2014

我需要在除管理員Postgresql 9.3之外的系統使用者下執行我的目前使用者postgres,或者我需要Postgresql 9.3使用預設使用者admin安裝Ubuntu 12.04

在 Debian/Ubuntu 上安裝的 PostgreSQL 本質上是:

  • 每個版本的一組二進製文件,任何使用者都可以執行這些二進製文件來生成和管理新實例。
  • 每個實例的數據目錄,只有其所有者才能使用。

如果初始情況包括9.3通過 Ubuntu 軟體包安裝的二進製文件,非 postgres Unix 使用者可以通過執行以下操作生成實例:

/usr/lib/postgresql/9.3/bin/initdb --pgdata=$HOME/pginstance [other-options]

然後使用以下命令啟動此實例:

/usr/lib/postgresql/9.3/bin/pg_ctl -D $HOME/pginstance start

並停止它:

/usr/lib/postgresql/9.3/bin/pg_ctl -D $HOME/pginstance stop

顯然$HOME/pginstance可以在使用者有權寫入的任何地方。

此實例與使用者無關,postgresUbuntu 軟體包附帶的腳本不會知道或關心它。它完全由啟動它的使用者管理。它可以與其他實例共存,但每個實例都必須有自己的埠(在postgresql.conf數據目錄中定義)。

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