在Ubuntu(Turnkey Linux)上将Postgre 8.4升级到9.1

时间:2012-07-17 14:10:43

标签: postgresql-9.1 postgis postgresql-8.4

我试图让Postgre 9.1工作,因为我需要2.0版本的PostGIS中提供的功能。 Turnkey Linux提供了一个Postgre 8.4设备,该设备运行良好,甚至内置了PostGIS ......但它只有1.2版本。

我遵循了本指南,基本上展示了如何通过apt-get安装9.1,这似乎有效: http://netadminlinux.blogspot.com/2011/11/installing-postgresql-91-on-ubuntu-1104.html

我现在的问题是,虽然安装了8.4和9.1,但我似乎只能访问8.4。我安装了pgadmin3,但我不知道如何访问它,因为默认的Turnkey Appliance设置为托管pgadmin2。

在/etc/init.d/中有两个条目,postgres-8.4。和postgres。我相信第二个是9.1实例,我甚至可以用/etc/init.d/postgres start启动它。我尝试关闭8.4实例,然后启动9.1 ...但是当我尝试使用命令行psql访问服务器时,我收到以下消息:

  

psql:无法连接到服务器:没有这样的文件或目录   服务器在本地运行并接受Unix域套接字上的连接   “/var/run/postgresql/.s.PGSQL.5432”?

我需要对9.1的新实例做些什么才能让它运行?我似乎错过了哪些安装后的步骤?

3 个答案:

答案 0 :(得分:3)

如果您已安装,则应该有两个配置文件:

/etc/postgresql/8.4/main/postgresql.conf
/etc/postgresql/9.1/main/postgresql.conf

每个指令都有不同的port =指令(通常为5432和5433)。

如果版本9.1配置为5433,则可能必须将客户端配置为显式使用5433(对于具有TCP连接的端口或作为unix套接字名称的一部分)。

如果您希望9.1使用默认端口,请将其更改为5432而将另一端更改为5433,停止这两项服务并再次启动它们。 (请注意,这可能会影响在端口5432上使用版本8.4的其他应用程序,如果有的话。)

答案 1 :(得分:0)

你可以尝试删除旧的postgres:

 apt-get purge postgresql-8.4

答案 2 :(得分:0)

当我安装了2个PG实例(8.3 vs 9.1)时,我无法将8.3附带的PG Admin版本连接到9.1服务器实例

所以要小心你没有打开8.x附带的PG Admin版本,你不是要用它来连接到9.x ..因为我得到了相同或类似的msg

psql: could not connect to server: No such file or directory Is the server running locally and accepting connections

我更改了旧PG管理员快捷方式的图标,因此我可以暂时知道我正在使用哪个。使用9.1附带的PG管理员能够连接到它没问题,一旦迁移了所有数据,我确保我卸载了正确的PG和PGAdmin程序