我在一个企业环境中(运行Debian Linux),没有自己安装它。我使用Navicat或phpPgAdmin访问数据库(如果有帮助的话)。我也没有运行数据库的服务器的shell访问权。
当前回答
如果你在debian/ubuntu系统上有对服务器的shell访问权限(问题中提到op没有,但如果你有的话)
sudo apt-cache policy postgresql
它将输出已安装的版本,
postgresql:
Installed: 9.6+184ubuntu1.1
Candidate: 9.6+184ubuntu1.1
Version table:
*** 9.6+184ubuntu1.1 500
500 http://in.archive.ubuntu.com/ubuntu artful-updates/main amd64 Packages
500 http://in.archive.ubuntu.com/ubuntu artful-updates/main i386 Packages
500 http://security.ubuntu.com/ubuntu artful-security/main amd64 Packages
500 http://security.ubuntu.com/ubuntu artful-security/main i386 Packages
100 /var/lib/dpkg/status
9.6+184ubuntu1 500
500 http://in.archive.ubuntu.com/ubuntu artful/main amd64 Packages
500 http://in.archive.ubuntu.com/ubuntu artful/main i386 Packages
其中Installed: <version>是已安装的postgres包版本。
其他回答
不知道这有多可靠,但你可以自动获得两个版本令牌:
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替换为此命令。
如果你已经在使用for工具(使用DBeaver)来连接PostgreSQL,它将是这样的:
如果Select version()返回Memo,尝试这样使用命令:
Select version::char(100)
or
Select version::varchar(100)
我相信这就是你要找的,
服务器版本:
pg_config --version
客户端版本:
psql --version
执行命令
psql -V
在哪里
V必须大写。
推荐文章
- Linux: kill后台任务
- 模式、表和数据库之间的区别是什么?
- 如何修改Linux系统中打开文件的数量限制?
- 将一列的多个结果行连接为一列,按另一列分组
- errno线程安全吗?
- 我看到VARCHAR(255)如此频繁地使用(而不是其他长度),有什么好的原因吗?
- 如何在Linux中永久导出变量?
- 使用pgadmin连接到heroku数据库
- 在PostgreSQL中快速发现表的行数
- 更改varchar列的大小为较低的长度
- Delete_all vs destroy_all
- 我如何移动一个redis数据库从一个服务器到另一个?
- 如何首次配置postgresql ?
- 检索Linux上单个进程的CPU使用情况和内存使用情况?
- 如何从远程SSH会话发送数据到本地剪贴板