如何检查PostgreSQL版本
PostgreSQL,通常简称为Postgres,是一种开源的通用对象关系数据库管理系统。
在某些情况下,了解系统上已安装和运行PostgreSQL服务器的版本可能很重要。
例如,如果要安装需要特定PostgreSQL版本的应用程序,则需要找出PostgreSQL服务器的版本。
在本文中,我们将说明如何查找系统上正在运行的PostgreSQL服务器的版本。
PostgreSQL版本控制
PostgreSQL版本使用以下方案进行版本控制:
MAJOR.MINOR
例如,在PostgreSQL 12.1中,“ 12”是主要版本,而“ 1”是次要版本。
- 'MAJOR'-从PostgreSQL 10开始,每个新的主要版本都将版本的'MAJOR'部分增加一个,例如10、11或者12. 在PostgreSQL 10之前,主要版本以十进制数字表示,例如9.0或者9.6. 。
- 'MINOR'-次要版本号是版本号的最后一部分。例如,“ 11.4”和“ 11.6”是PostgreSQL版本11的次要版本,而“ 9.6.15”和“ 9.6.16”是PostgreSQL版本9.6的一部分。
具有新功能的PostgreSQL主要版本通常每年交付一次。
每个主要版本的支持期限均为5年。
使用命令行
要找出系统上正在运行的PostgreSQL版本,请使用'--version'或者'-V'选项调用'postgres'命令:
postgres --version
该命令将打印PostgreSQL版本:
postgres (PostgreSQL) 10.6
在此示例中,PostgreSQL服务器的版本为'10 .6'。
如果“ postgres”二进制文件不在系统的PATH中,则会显示一条错误消息,提示“ postgres:找不到命令”。
当未从发行版的标准存储库中安装PostgreSQL软件包时,通常会发生这种情况。
我们可以使用“ locate”或者“ find”命令找到二进制文件的路径:
sudo find /usr -wholename '*/bin/postgres'
sudo updatedblocate bin/postgres
输出应如下所示:
/usr/lib/postgresql/9.6/bin/postgres
找到二进制文件的路径后,就可以使用它来获取PostgreSQL服务器的版本:
/usr/lib/postgresql/9.6/bin/postgres -V
可以使用以下命令找到PostgreSQL客户端实用程序的版本'psql':
psql --version
输出将如下所示:
postgres (PostgreSQL) 10.6
'psql'是一个交互式命令行实用程序,可让我们与PostgreSQL服务器进行交互。
使用SQL Shell
确定PostgreSQL服务器版本的另一种方法是登录服务器SQL提示符并使用SQL语句打印出版本。
我们可以使用pgAdmin之类的GUI客户端或者使用'psql'访问PostgreSQL shell:
sudo -u postgres psql
以下语句显示PostgreSQL服务器版本以及构建信息:
SELECT version();
version ----------------------------------------------------------------------------------------------------------- PostgreSQL 10.6 on x86_64-redhat-linux-gnu, compiled by gcc (GCC) 8.2.1 20160905 (Red Hat 8.2.1-3), 64-bit (1 row)
如果只想获取PostgreSQL服务器版本号,请使用以下查询:
SHOW server_version;
server_version --------------- 10.6 (1 row)