Postgresql 9.4 集群无法在 Debian 上自动启动

Postgresql 9.4 集群无法在 Debian 上自动启动

我有 Debian 8.2 x64 和 Postgresql 9.4(来自 repo)。我已在不同位置重新创建了默认集群,如下所示:

# service postgresql stop
# pg_dropcluster 9.4 main
# pg_createcluster -d /srv/postgresql/data/9.4/main 9.4 main -- -W -A md5
# service postgresql start

然后我可以使用以下命令连接到数据库:

# psql -WU postgres

然后我创建了另一个集群:

# pg_createcluster -d /srv/postgresql/data/9.4/apps -p 5433 9.4 apps -- -W -A md5

我可以用以下方式开始:

# pg_ctlcluster 9.4 apps start

并连接:

# psql -WU postgres -p 5433

但 init 脚本只启动main集群,忽略集群apps,根据手册页,如果/etc/postgresql/9.4/apps/start.conf不存在集群,则假定自动启动集群。但这是我的/etc/postgresql/9.4/apps/start.conf

# Automatic startup configuration
# auto: automatically start/stop the cluster in the init script
# manual: do not start/stop in init scripts, but allow manual startup with
#         pg_ctlcluster
# disabled: do not allow manual startup with pg_ctlcluster (this can be easily
#           circumvented and is only meant to be a small protection for
#           accidents).

auto

所以它也应该启动apps集群或者我误解了什么或者应该设置其他一些选项?

更新

好吧,我认为我已经解决了我的问题:

# apt-get install --reinstall postgresql-common

此后,所有集群都由 init 脚本控制,并且:

# service postgresql start|stop|restart

或者

systemctl start postgresql.service

影响所有集群。这很奇怪,因为第一次安装和重新安装都没有报告任何错误。

相关内容