服务器上有多个版本的 postgresql(9.3、9.4 和 9.5),端口不同,我想启动特定版本的 shell。如果我运行 shell:
psql
它返回:
psql (9.5.0, server 9.3.10)
Type "help" for help.
postgres=#
我想我刚刚开始使用 9.5,所以到现在为止;做得很好。但是,当我使用以下命令检查版本时:
select version();
它返回:
version
PostgreSQL 9.3.10 on x86_64-unknown-linux-gnu,
compiled by gcc (Ubuntu 4.8.2-19ubuntu1) 4.8.2, 64-bit
令人困惑的是,我的服务器是 9.3 版?但它运行的是 9.5 版?
答案1
- 9.5 是您正在使用的工具的版本
psql
。每次安装新的 PostgreSQL 时它都会更新。 - 9.3 是您当前连接的 DBMS 的版本。
运行时psql
它只连接到默认端口 5432,所以我猜想 PostgreSQL 9.3 版本在该端口上。尝试使用psql --port=X
并设置X
为不同 PostgreSQL 守护程序的端口;然后您应该会看到不同的版本。