我正在运行一个预装了 PostgreSQL 8.4.20 服务器的 Amazon EC2 CentOS 6.6 服务器实例,我想通过 SSH 使用 pg_upgrade 升级到 9.4.1。
到目前为止我所做的:用 yum 下载并安装 PostgreSQL 9.4.1,配置它。将 postgres 用户配置为在 UNIX 服务器上和两个数据库实例上具有相同的密码。两个数据库实例都运行正常 - 旧的一个在端口 5432 上,新的在 5433 上。
我正在尝试做的事情:
su - postgres
/usr/pgsql-9.4/bin/pg_upgrade
-b /usr/bin/
-B /usr/pgsql-9.4/bin/
-d /var/lib/pgsql/data/
-D /var/lib/pgsql/9.4/data/
这是我对 pg_hba.conf 的问题。使用
TYPE DATABASE USER METHOD
local all all trust
或者
TYPE DATABASE USER METHOD
local all all peer
我无法启动旧服务器,得到:
Performing Consistency Checks
-----------------------------
Checking cluster versions ok
connection to database failed: fe_sendauth: no password supplied
Failure, exiting
使用默认设置
TYPE DATABASE USER METHOD
local all all ident
是允许我启动服务器的唯一方法,但随后出现以下错误:
Performing Consistency Checks
-----------------------------
Checking cluster versions ok
*failure*
Consult the last few lines of "pg_upgrade_server.log" for
the probable cause of the failure.
connection to database failed: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/tmp/.s.PGSQL.50432"?
could not connect to old postmaster started with the command:
"/usr/bin/pg_ctl" -w -l "pg_upgrade_server.log" -D "/var/lib/pgsql/data/" -o "-p 50432 -c autovacuum=off -c autovacuum_freeze_max_age=2000000000 -c listen_addresses='' -c unix_socket_permissions=0700" start
Failure, exiting
在发布此内容之前,我已经连续阅读了超过 10 个小时的所有相关内容,但似乎找不到解决方案。如果您能给我任何提示,将不胜感激。