Instalei o PostgreSQL 9.xe PostGIS 1.5 / 2.0 várias vezes e nunca tive esse problema.
Acabei de instalar um novo servidor CentOS 6.3 e tenho o Postgres 9.3 funcionando conforme o esperado. eu corri
yum install postgis2_93
e eu posso ver os arquivos em
/usr/pgsql-9.3/share/contrib/
no entanto, quando corro
CREATE EXTENSION postgis;
eu recebi
ERROR: could not open extension control file "/usr/pgsql-9.3/share/extension/postgis.control": No such file or directory
os tutoriais ( # 1 , # 2 ) que eu usei não mostram etapas entre instalar o PostGIS e criar a extensão.
o que estou perdendo?
postgresql
postgis-2.0
centos
losthorse
fonte
fonte
find /usr -name postgis.control
e não está presente. Eu posso ver alguns arquivos em share / contrib; no entanto, postgis.control não está entre eles ... o que você sugere que eu faça? esperar por uma correção, fazer a minha própria, outra coisa?postgis-2.1.so
está presente/lib
, isso significa que posso criar meu próprio arquivo postgis.control?Respostas:
Se você puder encontrar um arquivo postgis.sql, poderá executá-lo em seu banco de dados (e no arquivo spatial_ref_sys.sql) para espacializar manualmente seu banco de dados. Relate o arquivo de controle ausente ao empacotador, isso é um grande problema.
fonte
Eu apenas tive o mesmo problema no Ubuntu Server 14.04. Eu instalei a
postgis
extensão dos repositórios oficiais do Ubuntu usandoapt-get install postgis
.Então,
find /usr -name postgis.control
não retornou nenhum resultado.O motivo
extension/postgis.control
não foi instalado porque o postgis-scripts não estava.A solução é instalá-lo.
Em distros do tipo debian:
O gerenciador de pacotes do aptitude determinará automaticamente as versões corretas do pacote a serem instaladas. O postgis-doc também será instalado.
Você pode verificar o sucesso da operação executando o seguinte comando:
No meu servidor, agora ele retorna:
Agora você pode ativar a extensão em qualquer banco de dados no servidor postgres:
CREATE EXTENSION postgis;
Seu esquema público agora contém todos os objetos e funções postgis.
fonte
No Ubuntu 14.04, você também precisa instalar o
postgresql-9.3-postgis-scripts
pacote. Depois que eu corriEu era capaz de executar com sucesso
no meu banco de dados para inicializar o PostGIS.
fonte
Eu tive o mesmo problema, apenas executei o comando
Eu estava usando o Ubuntu 18.04
fonte
Outra fonte que causou o problema pode ser o pacote PostGIS ausente, que pode ser definido no menu de instalação ou no seu caso posteriormente. Para isso, abra o Windows, vá para o PostgreSQL e inicie o Application Stack Builder . Depois selecione PostgreSQL, para que os aplicativos possíveis sejam carregados. Para o pacote PostGIS, você só precisa instalar a extensão adequada ao seu sistema operacional (32 ou 64 bits), basta direcionar para as extensões espaciais .
Afinal aqui as etapas recomendadas:
Agora você pode adicionar a extensão
CREATE EXTENSION postgis;
na sua Consulta SQL.fonte
Encontrei o mesmo problema, acho que o problema é que o pacote postgis2_93 não está instalado no local esperado, como seria esperado pelo postgresql. Você pode tentar usar outro repositório, o que pode fornecer o local correto. Ou você pode procurar adicionar extensões manualmente, especificando o local. No meu caso, o arquivo está em /usr/pgsql-9.4/
fonte
Tive meu pior pesadelo ao instalar o Postgis 2.X no SLES 12 SP1. que não possui pacote compatível no zypper repo
Aqui está como é resolvido na minha instância do servidor Postgres executando 9.4.X
Pacotes pré-requisitos que eu instalei antes do PostGis com base nos erros
Instalando o Postgis
Faça o download do código fonte do postgis ( http://download.osgeo.org/postgis/source/postgis-2.3.0rc1.tar.gz )
Vá para a pasta Post gis ./configure --with-pgconfig = / usr / lib / postgresql94 / bin / pg_config --with-geosconfig = / usr / local / bin / geos-config make make install
agora se você for para o postgress e criar a extensão postgis; vai funcionar
Importante durante a configuração, você deve especificar o caminho da pg-config e o caminho do geosconfig e NÃO DEVE incluir "sem Raster", pois o RASTER desempenha papel principal na criação da extensão postgis
fonte
Para o Ubuntu 16.04, execute este comando:
sudo apt-get install postgis postgresql-9.6-postgis-2.3-scripts
note que você deve especificar o número da sua versão para o postgresql (9.6 no meu caso) e o postgis (2.3 no meu caso).
fonte
Se você estiver usando o brew, desinstale o PostGIS e reinstale-o. Isso criará os arquivos de extensão.
fonte
brew ls --verbose postgis
Em algumas distribuições, as extensões são empacotadas no pacote postgresql-contrib. Isso certamente se aplica ao RedHat / CenOS, onde as extensões estão no postgresql-contrib, em que xx é o número principal e menor de versão sem os pontos finais (postgresql95-contrib para o postgres 9.5).
fonte
Para mim, usando o Fedora 25 e a página 9.5, funcionou quando fiz as seguintes alterações:
Instale o pacote yum postgis
$ yum install postgis2_95
Faça o download do pacote .deb de scripts postgis
Extraia-o e copie os diretórios 'contrib' e 'extension' em usr / share / postgresql / 9.5 extraído para o mesmo caminho no seu pgsql (talvez altere as permissões para).
Reinicie o servidor
fonte
No meu caso (Linux Mint 18.1 Serena), tive que remover
posgresql-9.5
epostgis
instalar recentemente o repositório padrão.E instale a versão 9.6 do repositório PosgreSQL :
Não tenho certeza, a versão tem algo a ver com o
postgis.control
arquivo ausente . Mas eu queria a versão 9.6 de qualquer maneira.fonte