我管理一个旧的ubuntu服务器12.04上有postgresql 9.1。
我成功安装了postgresql 9.6,用于我们想要使用的新应用程序。
我面临的问题是出于某种原因
service postgresql start
* Starting PostgreSQL 9.1 database server
[ OK ]
* Starting PostgreSQL 9.6 database server
[ OK ]
启动9.1服务器和 9.6服务器。
我正在寻找一种只在默认端口上启动9.6服务器的方法。
我看过/etc/inid.d/postgresql。 这个摘录看起来可能是关键。
# versions can be specified explicitly
if [ -n "$2" ]; then
versions="$2 $3 $4 $5 $6 $7 $8 $9"
else
get_versions
fi
看起来我只需要在命令行上传入该版本。
service postgresql start 9.6
是的......它奏效了。
所以我的问题是......如何在重启的情况下自动发生这种情况?
答案 0 :(得分:0)
一种解决方案是删除9.1
apt-get --purge remove postgresql-9.1
并将配置文件中的端口更改为9.6到5432
su postgres
psql
psql (10.3 (Ubuntu 10.3-1.pgdg14.04+1), server 9.6.8)
Type "help" for help.
postgres=#
SHOW config_file;
config_file
------------------------------------------
/etc/postgresql/9.6/main/postgresql.conf
(1 row)
\quit
exit
vi /etc/postgresql/9.6/main/postgresql.conf
/port
将端口更改为5432并写入并关闭配置文件
:wq
service postgresql stop
service postgresql start
答案 1 :(得分:0)
如果您有多个postgresql实例,则可以通过以下命令仅启动一项服务:
systemctl start postgresql@<version>-main
例如,我的PC中安装了版本 11、12和13 。我只能通过以下方式启动版本13:
systemctl start postgresql@13-main
或使用服务命令
service postgresql@13-main start