我正在使用CentOS 6.3并安装PostgreSQL 9.1服务器。我使用psql
命令连接到Postgres服务器:
psql -h localhost -U postgres
这是我得到的结果。
postgres=# \c MYDB
psql (8.4.11, server 9.1.7)
WARNING: psql version 8.4, server version 9.1.
Some psql features might not work.
You are now connected to database "MYDB".
MYDB=#
谁能告诉我原因是什么?
更新
即使我卸载了PostgreSQL 9.1服务器,我仍然看到以下命令的结果。
[root@testserver bin]# find / -name 'postgres'
/var/spool/mail/postgres
[root@testserver bin]# find / -name 'psql'
/usr/bin/psql
[root@testserver bin]# which psql
/usr/bin/psql
[root@testserver bin]# which postgres
/usr/bin/which: no postgres in (/usr/lib64/qt- 3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/root/bin)
[root@testserver bin]# psql --version
psql (PostgreSQL) 8.4.11
contains support for command-line editing
[root@testserver bin]#
这里我的意图是,如果您执行which psql
命令,它不应该显示任何输出,如果服务器没有安装。我卸载了Postgres服务器,并删除了/opt/PostgreSQL
文件夹,但我仍然看到它。
1条答案
按热度按时间qyzbxkaa1#
原因是您正在使用
psql
8.4版连接到9.1数据库。大概
PATH
上的默认psql
是旧版本。如果您使用
yum.postgresql.org
安装了9.1,则应查看以下命令的输出:因为您很可能同时安装了9.1和8.4,而较旧的版本被设置为默认版本。如果是这样,请运行:
自动选择较新的版本,或:
以手动选择要运行的项目。
如果您通过其他方式安装了9.1,则需要使用完全显式的
/path/to/9.1/bin/psql
(无论您的9.1安装在何处),或者将您的PATH
更改为在系统默认目录之前指向该bin
目录。