我需要Postgresql 9.3
在除管理员以外的系统用户下运行当前程序postgres
,或者我需要使用Postgresql 9.3
默认用户进行安装admin
Ubuntu 12.04
答案1
在 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
只要用户有写入权限,就可以是任何地方。
此实例与用户无关postgres
,Ubuntu 软件包附带的脚本不会知道或关心它。它完全由启动它的用户管理。它可以与其他实例共存,但每个实例必须有自己的端口(在postgresql.conf
数据目录中定义)。