防止Postgres 9.2开始

时间:2014-01-01 04:58:07

标签: postgresql ubuntu-12.04

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

  

/etc/init.d/postgresql start

启动9.2和9.3

虽然上面的命令可以接受版本号并成功启动和停止每个版本号,但是我可以使用任何方法使该命令仅启动9.3。

原因是,我现在无法重启系统,但我担心重启时两台服务器都可以启动。

我的短期解决方案是调整端口号以使我的应用程序使用9.3数据库。但是,我想了解更多永久性和强大的解决方案。

提前致谢,

史蒂夫

2 个答案:

答案 0 :(得分:1)

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

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

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

答案 1 :(得分:0)

Steve Harman的回应对我来说也很完美:

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

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

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.