我已安装了以下软件包yum
:
Installed Packages
postgresql92.x86_64 9.2.24-1.65.amzn1 @amzn-updates
postgresql92-libs.x86_64 9.2.24-1.65.amzn1 @amzn-updates
postgresql92-server.x86_64 9.2.24-1.65.amzn1 @amzn-updates
postgresql92-server-compat.x86_64 9.2.24-1.65.amzn1 @amzn-updates
postgresql95.x86_64 9.5.10-1.77.amzn1 @amzn-updates
postgresql95-libs.x86_64 9.5.10-1.77.amzn1 @amzn-updates
postgresql95-server.x86_64 9.5.10-1.77.amzn1 @amzn-updates
但我似乎无法单独控制它们:
/home/ec2-user$ sudo service postgresql95 stop
Stopping postgresql95 service: [ OK ]
/home/ec2-user$ sudo service postgresql95 status
postmaster (pid 43442) is running...
/home/ec2-user$ sudo service postgresql92 status
postmaster (pid 43442) is running...
为什么它们有相同的 pid?
另外我只有 1 个配置文件,位于/var/lib/pgsql9/data/postgresql.conf
。
答案1
首先去这个页并下载适用于 CentOS 6 的适当软件包(正如您提到的使用服务而不是 systemd)
一旦设置完毕,您可以通过推荐安装postgresql92-server
和。postgresql95-server
yum install postgresql92-server postgresql95-server
您必须手动初始化数据库,如下所示service postgresql-9.2 initdb
和service postgresql-9.5 initdb
。这将在中创建 2 个不同的数据库目录/var/lib/pgsql
,9.2
并9.5
在每个数据子目录内初始化一个数据库。
完成此操作后,您可以使用其自己的服务命令service postgresql-9.2 start
和启动每个实例service postgresql-9.5 start
。但不能同时启动它们,因为它们使用相同的 5432 端口。
9.2 端口可以/etc/init.d/postgresql-9.2
用变量 PGPORT 编辑,9.5 端口可以用变量 port 编辑/var/lib/pgsql/9.5/data/postgresql.conf
。因此,您可以同时使用这两个实例。