Ir para o conteúdo

 Voltar a SGF - Suporte
Tela cheia

Erro ao Criar o BD Template Postgis

9 de Dezembro de 2010, 10:26 , por Desconhecido - | 1 Pessoa seguindo este artigo.
Visualizado 236 vezes

Bom dia!

Estou tendo um problema na hora de criar o banco de dados postgis...

qdo executo o comando

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

retorna um erro dizendo que o diretório ou o arquivo não pode ser executado...

 Instalei o Postgis 1.5 conforme instrução do Manual de Instalação, onde

$ sudo apt-get install postgresql-8.4-postgis

Onde terei errado?
Desde já agradeço a colaboração e parabenizo pela excelência do projeto.

Sem mais,

José Carlos Guimarães Junior
Pref. Municipal de Bueno Brandão (MG)

Autor: José Carlos Guimarães Junior


1414 comentários

  • A98986b95c5dc19327c040cad1818105?only path=false&size=50&d=404Mário Jorge Santos(usuário não autenticado)
    9 de Dezembro de 2010, 11:33

     

    Olá José Carlos, me deparei com o mesmo problema, é o seguinte, se você está usando o ubuntu 10.04, a versão do postgis instalada é a 1.4 e não a 1.5. Nesse caso a pasta /usr/share/postgresql/8.4/contrib/

    outra coisa, antes de fazer o comando 'psql -d postgis -f postgis.sql' , faça 'createlang plpgsql postgis' (sem as aspas simples) para evitar erros.

    Att.

    • 20f2aff8c3607688fbe6c9ffb6a37ebf?only path=false&size=50&d=404José Carlos Guimarães Junior(usuário não autenticado)
      9 de Dezembro de 2010, 12:50

       

      Ok Mário, só que agora, ao executar o createlang...

      ele retorna o seguinte erro:

      createlang: não pode conectar ao banco de dados postgis: FATAL role 'root' não existe..

      Peço desculpa por postar esse tipo de dúvida, só que sou usuário MUITO novo em linux...

      Agradeço desde já sua ajuda.

    • 7d3fab251a723ab048a983481373e970?only path=false&size=50&d=404Francisco Edilson Nascimento(usuário não autenticado)
      9 de Dezembro de 2010, 15:49

       

       Mário Jorge, obrigado aí pela correção, realmente esquecemos de incluir o comando que indicou no manual de instalação.

      postgres@...$createdb postgis

      postgres@...$ createlang plpgsql postgis

      postgres@...$ usr/share/postgresql/8.4/contrib/postgis-1.5$psql -d postgis -f postgis.sql

      • A98986b95c5dc19327c040cad1818105?only path=false&size=50&d=404Mário Jorge Santos(usuário não autenticado)
        9 de Dezembro de 2010, 16:07

         

        Olá Francisco,

        por nada pela correção, aliás encontrei mais alguns detalhes que não constam no manual pra quem está instalando no ubuntu 10.04, como por exemplo a instalação do java, que é diferente da que está no manual, pois o usuário precisa adicionar os repositórios "partner" ao ubuntu para que possa fazer o download do java. E também o diretório onde fica o Tomcat no ubuntu 10.04 é /usr/share/tomcat6/ , fica o aviso para usuários inexperientes não se confundirem. Agora uma dúvida, estou instalando o sgf no ubuntu 10.04 e a instalação está bem sucedida até que chego nessa parte do manual "Execute o script de criação_de_tabelas.sql e carga_de_dados.sql". Como procedo aqui pra executar os arquivos .sql?

        Fica a pergunta e as dicas para a próxima versão do manual de instalação. Valeu!

        • A98986b95c5dc19327c040cad1818105?only path=false&size=50&d=404Mário Jorge Santos(usuário não autenticado)
          9 de Dezembro de 2010, 17:16

           

          Francisco, consegui executar os scripts .sql de criação de tabelas e de população do banco, mas foi na linha de comando mesmo. agora estou com um erro no login, deixei a pergunta no post relacionado chamado "login" aqui do fórum. Se puder me ajudar. Obrigado.

          • 20f2aff8c3607688fbe6c9ffb6a37ebf?only path=false&size=50&d=404José Carlos Guimarães Junior(usuário não autenticado)
            13 de Dezembro de 2010, 14:15

             

            Mário / Francisco

            Quando vou executar o comando psql -d postgis -f postgis.sql

            o sistema retorna o seguinte erro

            ERRO: Transação atual foi interrompida, comandos ignorados até o fim do bloco de transação.

            Que acontece dessa vez???

            • A3a418926d835fec109c9a98c5c40640?only path=false&size=50&d=404Uenderson Ferrari(usuário não autenticado)
              13 de Dezembro de 2010, 15:10

               

              Grande, repita os passos:

              Execute os comandos abaixo estando logado como posgtgres... (su - postgres)

              1) "createlang plpgsql postgis"

              Provavelmente aparecerá a mensagem:

              createlang: linguagem "plpgsql" já está instalada no banco de dados "postgis"

              2) "psql -d postgis -f /usr/share/postgresql/8.4/contrib/postgis-1.5/postgis.sql"

               

              3) "psql -d postgis -f /usr/share/postgresql/8.4/contrib/postgis-1.5/spatial_ref_sys.sql"

               

              4) "psql -c "ALTER USER sgf WITH PASSWORD 'sgf'" -d sgf"

               

              5) Reinicie o tomcat e postgresql;

               

               

              Teste com o usuário "adm" e senha "12345".

               

               

               

              P.S. Retire as aspas para os comandos.

              • 20f2aff8c3607688fbe6c9ffb6a37ebf?only path=false&size=50&d=404José Carlos Guimarães Junior(usuário não autenticado)
                15 de Dezembro de 2010, 9:12

                 

                Beleza Uenderson...

                Até o item 3 da sua lista ocorreu tudo bem...

                Só q no item 4 onde psql -c "ALTER USER sgf WITH PASSWORD 'sgf'" -d sgf

                Diz q o banco de dados sgf não existe...

                No manual não encontrei como devo criar esse banco nem usuário... como crio o banco, crio o usuário e uso o template postgis no pgAdmin3??? E como devo proceder para executar os scripts sql criação_de_tabelas e carga_de_dados???

                 Desde já agradeço sua ajuda!!!

                Valeu!!!

                • 9aa2751c2c1c26323edfbfe706b3077e?only path=false&size=50&d=404Andre Aragão Mattei(usuário não autenticado)
                  15 de Dezembro de 2010, 12:15

                   

                  Prezado José Carlos,

                      Vc precisa fazer a carga dos arquivos que estão neste link: www.​soft​ware​publ​ico.​gov.​br/d​otlr​n/cl​ubs/​sgf/​file​-sto​rage​/ind​ex?f​olde​r_id​=237​3937​8

                     Neste local tem os scripts de criação do BD, tabelas, dados necessários, etc... Sem isso não da para fazer a continuação da integração com o PostGis.

                      Caso você já tenha feito a carga de dados completa do SGF, vc precisa verificar, via pgadmin, se o postgis aparece na árvore de navegação e se vc consegue ver as tabelas do PostGis pela interface do pgadmin. Se não puder ver é porque deu erro na instalação do PostGis.

                   

                   

                   

                  • 20f2aff8c3607688fbe6c9ffb6a37ebf?only path=false&size=50&d=404José Carlos Guimarães Junior(usuário não autenticado)
                    15 de Dezembro de 2010, 15:22

                     

                    André...como sou usuário quase leigo em linux, executei a seguinte sequencia de comandos...

                    su

                    su postgres

                    $createuser sgf

                    $createdb sgf

                    $psql -c "ALTER USER sgf WITH PASSWORD 'sgf'" -d sgf

                    Com isso eu criei o usuário 'sgf' o banco de dados 'sgf' e atribui o usuário ao banco???
                    Caso eu esteja enganado, como devo procedar para realizar o q o último item do manual de instrução pede?

                    Agora que comando dou para executar os scripts sql criação_de_tabelas e carga_de_dados.sql???

                    Obrigado pela ajuda pessoal.

                    • Dbf9982fa8f6b595105825cf5c909b6c?only path=false&size=50&d=404Gilberto Caetano de Andrade(usuário não autenticado)
                      15 de Dezembro de 2010, 18:00

                       

                      José Carlos,

                      O requisito para o SGF é um banco com opções de geoprocessamento abilitadas[1].
                      Para tanto, vc pricisa (com o banco Postgresql 8.2+ já configurado em seu sistema, normalmente com o usuário postgres) instalar um pacote adicional para o Postgresql - postgis.
                      Após instalar as bibliotécas deste pacote(postgis) vc precisa realizar um procedimento adicional, mas precisamente no diretório /usr/share/postgresql/contrib/postgis-1.[4|5]:

                      createdb yourdatabase ----------------> o SGF escolheu postgis
                      createlang plpgsql yourdatabase
                      psql -d yourdatabase -f postgis.sql
                      psql -d yourdatabase -f spatial_ref_sys.sql

                      gilberto@SUGEP-DMASI:~$ su
                      Password:
                      SUGEP-DMASI:/home/gilberto # su - postgres
                      postgres@SUGEP-DMASI:~> cd /usr/share/postgresql/contrib/postgis-1.5

                      postgres@SUGEP-DMASI:/usr/share/postgresql/contrib/postgis-1.5>createdb postgis
                      postgres@SUGEP-DMASI:/usr/share/postgresql/contrib/postgis-1.5>createlang plpgsql postgis
                      postgres@SUGEP-DMASI:/usr/share/postgresql/contrib/postgis-1.5>psql -d postgis -f postgis.sql
                      postgres@SUGEP-DMASI:/usr/share/postgresql/contrib/postgis-1.5>psql -d postgis -f spatial_ref_sys.sql

                      Após completar este procedimento, vc precisa criar um banco de dados com abilidades de geoprocessamento. Isto é feito criando-se um banco a partir de um template(modelo) preexistente, em nosso caso o banco postgis.
                      No manual existe sim estas instruções, mas usando o pgadmin3. Pelo psql ficaria assim:
                      gilberto@SUGEP-DMASI:~$ su
                      Password:
                      SUGEP-DMASI:/home/gilberto # su - postgres
                      postgres@SUGEP-DMASI:~>createuser -s sgf -P
                      postgres@SUGEP-DMASI:~>createdb -T postgis -O sgf sgf
                      postgres@SUGEP-DMASI:~>

                      Não esqueça de criar o schema SGF também antes de realizar a criação dos objetos e a carga dos mesmos.

                      Gilberto
                      [1]http://postgis.refractions.net/documentation/manual-1.5/ch02.html

                      • 20f2aff8c3607688fbe6c9ffb6a37ebf?only path=false&size=50&d=404José Carlos Guimarães Junior(usuário não autenticado)
                        21 de Dezembro de 2010, 10:09

                         

                        Olá Gilberto, antes de mais nada gostaria de agradecer a paciência de vocês com os usuários novatos como eu...

                        Estou tendo uma certa dificuldade na criação do schema e na execução dos scripts sql.

                        Minha dúvida é: como crio o schema sgf, para o banco sgf, e depois seto como usuário o sgf...

                        Pesquisando na net, encontrei as seguintes dicas:

                        logado no postgre, seleciono o banco desta forma

                        $psql \sgf

                        sgf#> CREATE SCHEMA sgf

                        sgf#> CREATE SCHEMA AUTHORIZATION sgf

                        até aí está correto ou estou confundindo tudo???

                        caso esteja, como devo proceder para executar os scripts criacao_de_tabelas, carga_de_dados e triggers.sql?

                        Mais uma vez agradeço a colaboração e faço votos de um feliz natal e próspero ano novo à todos da comunidade,

                        • E8b21ce9c46cc4f4a49974550cbe1063?only path=false&size=50&d=404Davi Antunes Ribeiro(usuário não autenticado)
                          21 de Dezembro de 2010, 15:36

                           

                          Algumas idéias quanto a instalçaão , que após uma peqeuan ajuda para rodar as SQL´s o sisteam esta funcional, apesar que aqui na empresa ainda preciso fazer algumas customizações...:-P

                          está rodando muito bem, obrigado...:P numa VM rodando CentOS 5.5 com os repositórios do remi (http://blog.famillecollet.com/pages/Config-en  ) que possui versõesde ferramentas para dsenvolvimento mais atualizadas que os repos oficiais do CentOS:

                          1º) Instale o Postgre, PostGIS, JDK 1.6 e Tomcat. No meu caso, o comando rpm -qa|grep -i postgre retorna o seguinte:

                          postgresql84-server-8.4.5-1.el5_5.1
                          postgresql84-libs-8.4.5-1.el5_5.1
                          postgresql84-8.4.5-1.el5_5.1
                          postgresql84-devel-8.4.5-1.el5_5.1
                          postgrey-1.32-1.el5.rf
                          postgresql-libs-8.1.22-1.el5_5.1
                          postgresql84-docs-8.4.5-1.el5_5.1

                          Todos este pacotes podem ser instalados através do yum install nomedopacote .

                          Agora quanto ao PostGIS, só consegui fazer rodar baixando ao versão atualizada em post​gis.​refr​acti​ons.​net/​down​load​/pos​tgis​-1.5​.2.t​ar.g​z (URL do projeto: post​gis.​refr​acti​ons.​net/​&nbs​p; ). Pelo RPM o mesmo não disponibiliza a SQL para a criação do banco de dados (o que deve também acontecer com os .deb via apt) , então tive de instalar diretamente do src code. Para instalar, siga as instruções no link post​gis.​refr​acti​ons.​net/​docu​ment​atio​n/&n​bsp; , ao lado direito da tela , substituindo o yourtestdatabase pelo postgis. A localização da SQL é exatamente a mesma que está no Manual.

                          Phppgadmin3 e instalação do BD:  Prefiro o phppgadmin  (via web) que funciona como o phpMyAdmin. Depois de instalado o bd postgis, criei o banco sgf, com o seguinte comando no terminal: createdb sgf --template postgis, no qual o mesmo já vem com o schema public (se voce abrir o schema public via phppgadmin poderá obervar que as tabelas são as mesmas do banco postgis). Depois ,crie o schema sgf e depois rode as SQL´s encontradas em www.​soft​ware​publ​ico.​gov.​br/d​otlr​n/cl​ubs/​sgf/​file​-sto​rage​/ind​ex?f​olde​r_id​=237​3937​8 com o nome scripts_BD.zip, a exemplo do comando do PostGIS mas para o banco sgf.

                          JDK que pode ser baixado no endereço www.​orac​le.c​om/t​echn​etwo​rk/j​ava/​java​se/d​ownl​oads​/ind​ex.h​tml&​nbsp​; . No meu caso, eu jogo a JDK dentro de uma subpasta em /opt . Idem para o Tomcat e para o SGF (cada um no seu quadrado, ou melhor, cada um na sua pasta...:-P):

                          SGF: documentação disponível aqui no portal;

                          Tomcat: Infelizmente mesu repositórios do CentOS me deixaram na mão quanto a versão do Tomcat exigida, o que me fez partir para a ainstalação via código fonte. Baixei então do link disponívell no manual do desenvolvedor, instalei o mesmo dentro de /opt/tomcat e voilá: tomcat rodando...:-PNo meu caso mantive a porta padrão (8080) para não interferir no meu Apache local.

                          JDK ou JRE: COmo meu JDK estava em uma pasta fora do padrão, foi necessário criar um link para a pasta do jdk (segundo instruções do Tomcat):

                          # mkdir /usr/local/java

                          ln -sf /opt/jdk /usr/local/java/j2sdk5.0

                          Sartei o Tomcat e funcionou OK na porta 8080.  Depois copiei o war para a pasta webappps e funcionou OK.

                           

                           

                           

Essa comunidade não possui posts nesse blog