Postgresql 第二个实例的启动脚本?

Postgresql 第二个实例的启动脚本?

我需要在 Linux 启动时运行我的第二个 postgresql 实例。我在 rc.local 中添加了此命令(如在 postgresql 文档中):

/usr/lib/postgresql/9.1/bin/pg_ctl start -l logfile -D /var/lib/postgresql/9.1/main2

但如果我尝试运行 pg_ctl:

cannot be run as root

Please log in (using, e.g., "su") as the (unprivileged) user that will
own the server process.
t, it gives me this error:

我如何指定以 postgres 身份运行该命令,但实际上以 root 身份执行它(因为 root 拥有它)。

或者是否有更好的方法来为 postgresql 制作第二个初始化脚本?

PS(我使用的是 Ubuntu)

答案1

如果您使用的是 Ubuntu(看起来您就是这样的),那么您不需要自己做任何这些事情。

pg_ctlcluster阅读、pg_createcluster、的文档pg_lsclusters。这些是 Ubuntu 软件包的一部分pg_wrapper,提供内置的多个实例和版本的管理。

相关内容