我在一个企业环境中(运行Debian Linux),没有自己安装它。我使用Navicat或phpPgAdmin访问数据库(如果有帮助的话)。我也没有运行数据库的服务器的shell访问权。
当前回答
不知道这有多可靠,但你可以自动获得两个版本令牌:
psql --version 2>&1 | tail -1 | awk '{print $3}' | sed 's/\./ /g' | awk '{print $1 "." $2}'
所以你可以构建到二进制文件的路径:
/usr/lib/postgresql/9.2/bin/postgres
只需将9.2替换为此命令。
其他回答
在shell psql.exe中执行
\! psql -V
公认的答案是很好的,但如果你需要与PostgreSQL版本进行编程交互,可能更好的做法是:
SELECT current_setting('server_version_num'); -- Returns 90603 (9.6.3)
-- Or using SHOW command:
SHOW server_version_num; -- Returns 90603 too
它将以整数形式返回服务器版本。这是如何在PostgreSQL源代码中测试服务器版本的,例如:
/*
* This is a C code from pg_dump source.
* It will do something if PostgreSQL remote version (server) is lower than 9.1.0
*/
if (fout->remoteVersion < 90100)
/*
* Do something...
*/
更多信息在这里和这里。
执行命令
psql -V
在哪里
V必须大写。
使用pgadmin4,双击Servers > server_name_here > Properties选项卡> Version:
3.5版本:
4.1、4.5版本:
从PostgreSQL运行这个查询: 选择版本();
推荐文章
- 如何检查表上持有哪些锁
- 在MongoDB中查找重复的记录
- 对于PostgreSQL表来说,多大才算太大?
- Spring引导应用程序作为服务
- 如何重定向标准derr和标准输出到不同的文件在同一行脚本?
- Windows和Linux上的c++编译:ifdef开关
- Linux: kill后台任务
- 模式、表和数据库之间的区别是什么?
- 如何修改Linux系统中打开文件的数量限制?
- 将一列的多个结果行连接为一列,按另一列分组
- errno线程安全吗?
- 我看到VARCHAR(255)如此频繁地使用(而不是其他长度),有什么好的原因吗?
- 如何在Linux中永久导出变量?
- 使用pgadmin连接到heroku数据库
- 在PostgreSQL中快速发现表的行数