7

我想让我的 linux 机器上的 postgresql 服务器在系统启动时自动启动。我在 ~/.profile 文件中添加了以下行:

su -c 'pg_ctl start -D /var/lib/pgsql/data ' postgres

但是,在我启动控制台命令之前,postgres 服务器不会启动。然后提示我输入用户'postgres'的密码,然后服务器正确启动。

我想避免启动 linux 控制台和输入“postgres”用户密码这两个 extar 步骤。我怎样才能做到这一点?

4

2 回答 2

3

这是 8.0 手册的摘录,向您展示了如何使用 8.* 和不同的发行版执行此操作:

http://www.postgresql.org/docs/8.0/static/postmaster-start.html

这是最新发布的版本: http ://www.postgresql.org/docs/9.1/static/server-start.html

在 Linux 系统上,添加
/usr/local/pgsql/bin/pg_ctl start -l logfile -D /usr/local/pgsql/data
/etc/rc.d/rc.local查看/etc/rc.local
PostgreSQL
contrib/start-scripts/linux源代码分发中的文件。

检查以“不同的系统在引导时启动守护程序有不同的约定”开头的段落。

希望这可以帮助。
埃德蒙

于 2012-07-29T22:44:31.400 回答
1

通常,您会使用系统的初始化框架来执行此操作。在传统的 unix 上,这意味着/etc/init.d脚本,但在现代的 unix 上,包括主要的 Linux 发行版,它通常是不同的。

话虽如此,在现代 unix 上,使用包管理器安装 PostgreSQL 通常会导致它在启动时启动,因此您甚至不需要这样做。

你使用的是什么 Linux 发行版,你是如何安装 PostgreSQL 的?

于 2012-07-29T22:40:40.060 回答