阻止PostgreSQL在Ubuntu中启动


28

我使用的是PostgreSQL 9.2,启动系统(Kubuntu)时它将自动运行。

如何避免这种情况?

我需要手动启动它,并且我不希望它在无人值守的情况下启动,因为我需要查看控制台。

Answers:


48

Ubuntu或Debian可以运行PostgreSQL的多个实例,并提供一种自动启动/停止/启动每个集群的特定方式。

应该有一个start.conf内部名为文件/etc/postgresql/9.2/main(或更普遍的是/ etc / postgresql / < 版本 > / < 集群名称 >),其中包含以下不言自明的内容:

#自动启动配置
#auto:在启动脚本中自动启动/停止集群
#manual:不启动/停止init脚本,但允许手动启动
#pg_ctlcluster
#禁用:不允许使用pg_ctlcluster手动启动(这很容易
#被规避,仅是对
#事故)。

汽车

如果将auto替换为manual,则只能在需要时使用以下命令启动此PostgreSQL实例:

sudo pg_ctlcluster 9.2 main start

至于查看控制台,您应该想要的是在使用数据库时在终端中运行它:

tail -f /var/log/postgresql/postgresql-9.2-main.log

3

短期

该命令/usr/sbin/update-rc.d用于启动,停止,启用或禁用服务(即,从/etc/init.d/中删除System-V样式的初始化脚本链接)。

键入man update-rc.d以熟悉该命令及其参数。

以下是来自update-rc.d ubuntu 16.10(yakkety)手册页的一些示例:

update-rc.d -f foobar remove
update-rc.d foobar stop 20 2 3 4 5

然后sudo update-rc.d [service] disable为/etc/init.d/目录中列出的任何服务键入内容。这将阻止[service]在启动时启动。如果您还想立即关闭服务,请尝试sudo service [service] stop

长期

您可能不需要手动运行PostgreSQL即可查看其控制台输出。您只需要记录该输出,并拖尾日志文件。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.