【问题标题】:Prevent Postgres 9.2 from starting防止 Postgres 9.2 启动
【发布时间】:2014-02-10 02:24:32
【问题描述】:

我已经在 ubuntu 上成功从 9.2 升级到 9.3。不过,

/etc/init.d/postgresql 启动

同时启动 9.2 和 9.3

虽然上述命令可以接受版本号并成功启动和停止每个,但有什么方法可以让这个命令只启动9.3。

原因是,我现在无法重启系统,但重启后恐怕两个服务器都可以启动。

我的短期解决方案是调整端口号以使我的应用程序使用 9.3 数据库。不过,我想了解更持久、更强大的解决方案。

提前致谢,

史蒂夫

【问题讨论】:

标签: postgresql ubuntu-12.04


【解决方案1】:

Ubuntu uses pg_wrapper to manage PostgreSQL installs。请参阅the Ubuntu PostgreSQL wiki 页面。

如果您想真正销毁旧数据,您需要pg_dropcluster 9.2 集群。或者卸载 PostgreSQL 9.2。或者修改/etc/postgresql/9.2/中控制Pg是否启动的配置文件(现在不记得名字了)。它被称为 start.confpg_ctl.conf 之类的。

您可能还想反转配置的端口,以便您的新 9.3 在 5432 上运行,而默认情况下未启动的 9.2 tuns 在 5433 上运行。这是在 postgresql.conf 中。

【讨论】:

  • 感谢您的回复。在 /etc/postgresql/9.2/main/ 目录下,有 start.conf。如果将该文件中的单行从“auto”更改为“disabled”,那么 /etc/init.d/postgresql start 将不会启动 9.2。
  • @SteveHarman 这样就成功了吗?你所追求的还有更多吗?
  • 谢谢克雷格。是的,这已经成功了(至少我需要)
【解决方案2】:

Steve Harman 的回答对我也很有效:

感谢您的回复。在 /etc/postgresql/9.2/main/ 目录下,有 start.conf。如果将该文件中的单行从“auto”更改为“disabled”,那么 /etc/init.d/postgresql start 将不会启动 9.2。 – 史蒂夫哈曼 1 月 1 日 16:55

另一方面,仅供参考,命令输出是服务器的两个版本都在启动(这不是真的,来自服务启动脚本)

user@server:/etc/postgresql/9.3/main$ sudo service postgresql start
 * Starting PostgreSQL 9.1 database server
   ...done.
 * Starting PostgreSQL 9.3 database server
   ...done.

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-05
    • 1970-01-01
    • 2013-01-06
    • 2011-10-27
    • 2014-09-27
    相关资源
    最近更新 更多