/ / Postgis instalar [fechado] - postgresql, postgis

Postgis instalar [fechado] - postgresql, postgis

Eu tenho a versão 8.4.8 do Postgres

select version();
PostgreSQL 8.4.8 on i686-pc-linux-gnu, compiled by GCC gcc-4.4.real (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5, 32-bit

Postgis instalado através do pacote sinápticogerente, (postgis e postgresql-8.4-postgis) tudo parecia ir bem. Então, quando tento verificar a versão do Postgis, as coisas não estão bem. Ambos dão o mesmo erro.

SELECT PostGIS_version();
SELECT PostGIS_full_version();

ERROR:  function postgis_full_version() does not exist
LINE 1: SELECT PostGIS_full_version();
HINT:  No function matches the given name and argument types. You might need to add explicit type casts.

O gerenciador de pacotes afirma que o Postgis está instalado. Como posso verificar se a instalação funcionou ou não funcionou?

Respostas:

29 para resposta № 1

PostGIS precisa ser instalado por banco de dados. Bancos de dados existentes não são alterados automaticamente. Execute o script de instalação da seguinte maneira.

No PostgreSQL 8.4 você também pode precisar criar a linguagem plpgsql. Para 9.0+, é a linguagem procedural padrão e instalada automaticamente. No seu banco de dados:

createlang plpgsql yourdatabase

Não pode fazer mal. Se o plpgsql já estiver instalado, ele produzirá um erro dizendo isso. Vá para o diretório de instalação. No Debian Squeeze, os pacotes contrib estão aqui (podem ser diferentes no Ubuntu). Em um shell:

cd /usr/share/postgresql/8.4/contrib/postgis-1.5

Em seguida, execute (como usuário postgres ou você tem que fornecer username / pw):

psql -d yourdatabase -f postgis.sql
psql -d yourdatabase -f spatial_ref_sys.sql

Você também pode querer instalar os comentários para suas novas funções brilhantes (opcional). No Debian Squeeze, o arquivo de instalação está no diretório principal / contrib:

cd /usr/share/postgresql/8.4/contrib
psql -d yourdatabase -f postgis_comments.sql

Se você quiser que o PostGIS seja instalado com cada novo banco de dados no cluster por padrão, instale-o no seu template1 banco de dados também. Ler mais sobre isso no manual.

Fontes para instalação do PostGIS (no Ubuntu):

http://postgis.net/docs/manual-2.1/postgis_installation.html
http://www.paolocorti.net/2008/01/30/installing-postgis-on-ubuntu/

PostgreSQL 9.1+

Com o PostgreSQL 9.1 ou mais recente você pode usar o mais conveniente CREATE EXTENSION:

CREATE EXTENSION postgis;
CREATE EXTENSION postgis_topology;

Sua distribuição provavelmente está enviando a extensão pronta para instalação. Se não, considere o capítulo "Criando Extensões do PostGIS e Implementando-as" no manual do PostGIS.