Inicial > DB2 / Banco de dados, Linux > Instalando e configurando o PostgreSQL 8.3 no Ubuntu

Instalando e configurando o PostgreSQL 8.3 no Ubuntu

Instalando e configurando o PostgreSQL 8.3 no UbuntuNo meu ambiente de desenvolvimento, eu sempre utilizo dois bancos: o Postgres e o DB2. Basicamente devido ao fato de minha instalação de DB2 ser pesada pois tenho várias configurações de Data Warehouse e um banco muito carregado, o que torna o banco mais pesado para meu simples desktop. Então, para debugar meus softwares, vou com meu postgres levinho mesmo.

Minha idéia aqui é mostrar como instalar e configurar o PostgreSQL 8.3 no Ubuntu 8.04. As configurações são as mesmas para a instalação em Windows, a única diferença obvia é que você irá ter que ir ao site do postgres e baixar o Installer do Windows.

Vamos lá, iniciamos a instalação com o comando:

$ sudo apt-get install postgresql-8.3 postgresql-client-8.3

Recomendo também instalar o pgAdmin, que é uma ferramenta para administrar o postgres:
$ sudo apt-get install pgadmin3 pgadmin3-data

Algo que aconteceu comigo na migração para o Ubuntu 8.04, foi que tive que remover o Postgres 8.2 (apt-get purge postgresql-8.2) para conseguir iniciar o 8.3 corretamente. Se você concluir meus passos aqui e mesmo assim não conseguir conectar no Postgres, recebendo algum erro, provavelmente terá que dar o purge. (talvez com mais tempo de pesquisa eu poderia descobrir qual era o problema… se alguem passar por isso me diga please).

O próximo passo é setar uma senha para o usuário postgres com os seguintes comandos:

sudo su postgres -c psql postgres
ALTER USER postgres WITH PASSWORD ‘password’;
\q

O primeiro comando chama o utilitário psql com o usuário postgres e conecta no postgres especificamente no database postgres.
O segundo comando altera a senha do usuário postgres.
O terceiro comando finaliza o psql.
Note que a palavra password deve ser substituida pela password que você desejar.

Feito a instalação e mudança de senha do usuário postgres, você estará apto a desenvolver um trabalho no seu computador conectando normalmente ao postgres, porém, se a idéia é disponibilizar o acesso ao banco para receber conexões de outras máquinas, você vai ter que alterar dois arquivos para isso. Para isso, vá para o diretório /etc/postgres/8.3/main.

Edite o arquivo postgresql.conf. (dica: se não tiver permissão para editar, va em um terminal e digite “sudo gedit /etc/postgres/8.3/main/postgresql.con”)

Na linha listen_addresses, troque o localhost por *, ficando a linha assim:

listen_addresses = ‘*’

Dessa forma seu postgres vai “escutar” não só conexoes provenientes da sua própria máquina.

A próxima configuração no mesmo arquivo é habilitar a encriptação de passwords, para fazer isso descomente a linha abaixo simplesmente removendo o # da frente dela:

password_encryption = on

Finalmente a próxima configuração é no arquivo pg_hba.conf. Neste arquivo você consegue restringir o acesso ao seu banco de dados por IP. Normalmente queremos liberar o acesso para todos os IPs em uma faixa, no meu exeplo, quero liberar para todas as máquinas da rede 10.5.2.*, então eu adiciono a seguinte linha no meu pg_hba.conf:

host    all    all    10.5.2.0    255.255.0.0    md5

Feito isso, basta reiniciar o postgres com o comando:

sudo /etc/init.d/postgresql-8.3 restart

Enjoy!

  1. mestre kame
    maio 19, 2008 às 7:01 pm

    vlw pega dica juliano!
    Só corrigindo, o diretorio correto que está o arquivo postgresql.conf é

    /etc/postgresql/8.3/main

    abraço

  2. maio 23, 2008 às 5:54 pm

    muito bom =D
    me ajudou muito!
    A propósito, sabe onde eu posso conseguir mais informacoes do postgres ? como criar indices, sobre os tipos dos campos? Venho do MySQL e estou me atrapalhando muito com isso 😦
    Abraços

  3. maio 26, 2008 às 11:30 am

    Oi Beto.
    Acho que o melhor lugar pra se conseguir a documentação é aqui: http://www.postgresql.org/docs/

    Abraços,

    Juliano

  4. maio 29, 2008 às 12:50 pm

    Grande Juliano,
    Desculpa te incomodar 😉 Mas como falei estou iniciando no mundo Postgresql agora. Minha grande dificuldade agora é encontrar uma ferramenta semelhante ao DBDesigner pra modelar o banco Postgresql, vc poderia indicar alguma?

    Novamente, muito obrigado.

    • HoTMetal
      abril 17, 2010 às 11:55 am

      pgDesigner, inclusive está no repositório do Ubuntu

  5. maio 29, 2008 às 1:17 pm

    Opa, sugiro o PGAdmin 3.

    Eu coloquei como instalar lá em cima.

    Abraços.

  6. VIPER
    junho 10, 2008 às 4:21 pm

    vELHO MANDO MUIJTO BM VLWWWWW
    !!!!!!!

  7. junho 11, 2008 às 8:02 pm

    Caro Juliano,

    Seu tutorial está ótimo…
    Parabéns!!!

    Abraços.

  8. peduardo
    junho 29, 2008 às 2:42 pm

    Muito bom o tutorial,
    sou iniciante no linux, mas consegui configurar o postgres sem dificuldades.

    Parabens pela iniciativa!

  9. POSTMASTER.conf
    agosto 7, 2008 às 3:12 pm

    Ola, estou implementando uma grade com o toolkit globus4.07 e no tutorial que peguei, ele pede para que eu modifique o arquivo postamaster.conf que se encontra no seguinte caminho:/var/lib/postgres/postmaster.conf mas nao consigo encontrá-lo.

    Um outro problema é que qdo vou criar o usuario globus com o seguinte comando: su postgres -c “createuser -P globus”
    aparece o seguinte erro:
    createuser: não pôde conectar ao banco de dados postgres: could not connect to server: Arquivo ou diretório inexistente
    Is the server running locally and accepting
    connections on Unix domain socket “/var/run/postgresql/.s.PGSQL.5432”?

    Como posso arrumar esse erro?

  10. Leonardo
    setembro 6, 2008 às 12:22 am

    Só para ajudar :

    o comando para alterar a senha : ALTER USER postgres WITH PASSWORD ‘password’; nao funcionou aqui

    basta trocar esse comando por \password

  11. Wesley
    setembro 12, 2008 às 10:23 am

    Olá, ao tentar criar a senha para o Postgre ocorre a seguinte mensagem:

    Error: You must install at least one postgresql-client- package.
    Já instalei a versão client 8.3 uso Ubuntu8.4.

    Alguma dica?

  12. Luis Scapin
    setembro 21, 2008 às 3:31 am

    Valeu pelo tópico chefe. Me ajudou aqui, valeu mesmo. Abraço.

  13. Bprado
    setembro 21, 2008 às 8:33 am

    Estou com o mesmo problema do POSTMASTER, VEJA:

    $ sudo su postgres -c psql postgres
    psql: could not connect to server: Arquivo ou diretório inexistente
    Is the server running locally and accepting
    connections on Unix domain socket “/var/run/postgresql/.s.PGSQL.5432”?

  14. Ivan
    setembro 25, 2008 às 6:34 pm

    Como faço para configurar oo Pg_hba.conf p/ liberar o acesso pra qualquer rede e não somente pra algumas redes como ensina o tutorial.

    Obg!

  15. Wenderson Ferreira
    novembro 28, 2008 às 1:01 am

    Excelente, funcionou belezinha

  16. Jorge Quiterio
    janeiro 8, 2009 às 1:47 pm

    Muito bem explicado !

    mas tenho um problema… sou um nabo no ubuntu e quando edito o ficheiro “postgresql.config” diz que não tenho permissões para gravar as alterações… e não consigo mexer nas permissões do ficheiro…

    obrigado

  17. janeiro 8, 2009 às 3:03 pm

    Opa. Se transforme em root com o comando:

    sudo -i

    digite a senha definida na instalação, e mande bala!

  18. michael
    fevereiro 16, 2009 às 4:40 pm

    show de bola

  19. Bruno Silva
    fevereiro 25, 2009 às 1:08 pm

    Obrigadão tava mesmo a precisar de uma ajuda nisso

    obrigado

  20. Joelias
    março 15, 2009 às 8:36 pm

    Nus…vlw d+ esse tutorial, a dias que eu estava tentando instalar isso na MERDA do rWindows vista. Agora só com essa ajudinha já funcionou no meu UBUNTU!!
    Vlwsssssssssssss

  21. Robson
    abril 6, 2009 às 10:28 pm

    opa blz

    preciso de uma ajuda na instalação, quando entre com
    sudo su postgres -c psql postgres
    da o seguinte erro
    you must install at least one postgresql-client-<version. package

  22. Furlan
    abril 8, 2009 às 1:53 am

    cara aqui ta dando esse erro:

    psql: could not connect to server: Arquivo ou diretório inexistente
    Is the server running locally and accepting
    connections on Unix domain socket “/var/run/postgresql/.s.PGSQL.5432”?

    ja procurei em todo lugar e nao consegui achar uma maneira de arrumar isso 😦 alguem me da uma luz por favor!

  23. junho 9, 2009 às 10:39 pm

    @Leonardo

    Tenta instalar o pacote postgresql-contrib. Comigo funcionou.

    fonte: http://hocuspokus.net/2008/05/install-postgresql-on-ubuntu-804

  24. Carlos Oliveira
    julho 1, 2009 às 10:38 pm

    Olá!

    Eu preciso de aceder a um banco de dados (pgadmin3) que está a rodar noutro pc de minha casa e não estou a conseguir. o que é que preciso de configurar?

  25. julho 2, 2009 às 11:09 am

    Oi Carlos. Tudo indica que falta configurar corretamente o arquivo pg_hba.conf. Tente logar nela localmente para ver se rola, se rola, é o pg_hba.conf mesmo.

  26. Carlos Oliveira
    julho 2, 2009 às 12:20 pm

    Olá! obrigado pela ajuda!
    Depois de uma noite inteira de trabalho consegui descobrir o que se passava! “A ordem que se coloca nos IP no pg_hba.conf é importante…” ou seja agr já consegui com a seguinte alteração:

    # TYPE DATABASE USER CIDR-ADDRESS METHOD

    # IPv4 local connections:
    host all all 127.0.0.1/32 md5
    # IPv6 local connections:
    host all all ::1/128 md5
    host all all 192.168.1.131 md5
    host all all 192.168.1.0 255.255.0.0 md5

    Muito obrigado pela ajuda!
    Espero que este código ajude muita gente:)

  27. Carlos Oliveira
    julho 2, 2009 às 12:23 pm

    o código anterior está errado…
    este é que está certo (sorry!)

    # TYPE DATABASE USER CIDR-ADDRESS METHOD

    # IPv4 local connections:
    host all all 192.168.1.0/24 trust
    host all all 127.0.0.1/32 md5
    # IPv6 local connections:
    host all all 192.168.1.0/24 trust
    host all all ::1/128 md5
    host all all 192.168.1.2 md5

  28. Celso
    agosto 14, 2009 às 7:03 pm

    Muito obrigado,

    Estou tendo meu promeiro contato com postgres e foi fácil com este passo a passo.

    abraços

  29. Pedro
    setembro 17, 2009 às 6:46 pm

    Caro Juliano,
    Tenho instalado em minha máquina o Ubuntu 9.04. Tentei seguir passo a passo suas instruções para instalar o Postgresql 8.3, mas apresentou uma mensagem dizendo: pacote inexistente. Instalei o ubuntu pelo CD que eles me enviaram. Que devo fazer? Onde consigo os pacotes para instalação? Obrigado…

  30. setembro 17, 2009 às 9:48 pm

    Vc deve ter digitado o nome do pacote errado, ou então esta com uma versao mais nova/velha do ubuntu que nao tem o postgres 83.

    Procure com o comando:

    sudo apt-cache search postgresql

    E veja assim o que tem disponivel para instalar.

    []s

  31. setembro 17, 2009 às 9:50 pm

    Pessoal, enviem perguntas no meu novo Blog em http://jmmwrite.blogspot.com/2008/05/instalando-e-configurando-o-postgresql.html

    Lá eu responderei.

  32. janeiro 7, 2010 às 4:42 pm

    ALTER USER postgres WITH PASSWORD ‘password’;

    Tirando essa linha que o password nao esta com aspas simples, ficou show de bola…

    Sempre que vou configurar o SGBD com PGAdmin recorro a esse tipo de documentacao por nao memorizar, Obrigado!

  33. fevereiro 26, 2010 às 8:38 pm

    Quanto executei o primeiro comando no terminal ($ sudo apt-get install postgresql-8.3 postgresql-client-8.3), o mesmo retornou uma msg de erro do tipo: E: Impossível achar pacote postgresql-8.3. O que está errado? O que devo fazer?

    Obrigada!

  34. março 1, 2010 às 8:42 pm

    Oi Sâmia.
    A versão do seu Linux deve ser diferente da minha na época deste tutorial, então você deve procurar a versão que você tem em seu repositorio.

    Use o comando “apt-cache search postgresql”

    Aqui no meu Ubuntu 9.10, que é o mais recente, eu vejo na lista o 8.3 e o 8.4. Execute o comando acima e veja os pacotes. Se não os ver, verifique a versão do seu Ubuntu ou mesmo se é ubuntu.

  35. Gilberto Reinke
    março 13, 2010 às 12:23 pm

    Olá Juliano,
    Grato pelos esclarecimentos.
    Um abraço

  36. maio 18, 2010 às 11:36 am

    Obrigado!

  37. Pablo Madi
    maio 28, 2010 às 1:08 pm

    Valeu!!!
    Ótimo tutorial. Direto, simples e prático! Funcionou blz aqui, com postgres 8.4, no Ubuntu 9.10!
    Show de Bola!!!

  38. Victor
    junho 12, 2010 às 6:55 pm

    Olá! Caso alguém tenha algum problema de autenticação ao utilizar o pgAdmin, como este: ‘Um erro ocorreu:

    Error connecting to the server: FATAL: autentica??o do tipo Ident falhou para usu?rio “postgres”‘

    O motivo desse erro é porque, na hora de “Adicionar conexão a um servidor”, eu não especifiquei o endereço de onde ficaria o servidor. Nesse caso, basta colocar localhost no campo “Máquina”, por exemplo.

    Abraços!

  39. Franzinha
    julho 5, 2010 às 11:48 am

    Muito bom o tuto…..funcionou perfeitamente.

    Obrigada

  40. Henrique
    julho 30, 2010 às 11:10 pm

    Extremamente útil! Obrigado por você compartilhar o conhecimento proposto!

  41. joel
    agosto 8, 2010 às 10:37 pm

    Ola. REalmente a dica funciona e esta bem explicada. Coisa muito dificil na web, pois os postadores acham que todos tem o mesmo nivel de conhecimento e postam soluções que exigem uma base de conhecimentos que a maioria dos usuarios nao tem. Esse tutorial é dez;

  42. setembro 24, 2010 às 3:22 pm

    Cara, muito obrigado pelo post com essa dica, eu estava dependendo dela.
    Abraços!!!!

  43. edmilson
    outubro 26, 2010 às 7:56 pm

    Excelente post! É raro encontrar um que funcione tão bem.

  44. Augusto
    novembro 10, 2010 às 8:56 pm

    Cara,
    Muito bom esse Post, usei ele para configurar meu Postgres, e funcionou beleza.

    Muito sucesso pra ti

  45. Marcelo
    janeiro 9, 2011 às 3:13 pm

    Obrigado pela ajuda!

  46. ivan
    fevereiro 12, 2011 às 3:40 pm

    POSTMASTER.conf :
    Ola, estou implementando uma grade com o toolkit globus4.07 e no tutorial que peguei, ele pede para que eu modifique o arquivo postamaster.conf que se encontra no seguinte caminho:/var/lib/postgres/postmaster.conf mas nao consigo encontrá-lo.
    Um outro problema é que qdo vou criar o usuario globus com o seguinte comando: su postgres -c “createuser -P globus”
    aparece o seguinte erro:
    createuser: não pôde conectar ao banco de dados postgres: could not connect to server: Arquivo ou diretório inexistente
    Is the server running locally and accepting
    connections on Unix domain socket “/var/run/postgresql/.s.PGSQL.5432″?
    Como posso arrumar esse erro?

    Para resolver esse problema no Ubuntu:
    1.
    $ sudo vi /etc/postgresql/8.4/main/postgresql.conf

    2. Localize e altere o parametro Port = 5433 para Port = 5432

    3. Reiniciar o PostGreSql
    $ cd /etc/init.d
    $ sudo ./postgresql-8.4 stop
    $ sudo ./postgresql-8.4 start

    OK! No meu caso funcionou beleza.
    Ivanelson

  47. Lucas
    março 23, 2011 às 9:00 pm

    Olá, instalei o postgres 8.4 via terminal e também instalei o PGadmin3 no ubuntu desktop, o postgres funciona correta mente via terminal mas quando abro o PGadmin3 não parece nenhum servidor como faço para corrigir isso.

  48. Eduardo Marcolino
    abril 17, 2011 às 2:55 am

    Mt Obrigado pela ajuda!

  49. Carlos
    maio 19, 2011 às 5:36 pm

    Estou com um problema com o postgre depois de instalado no Ubuntu 8. Quando executo o primeiro comando do artigo (sudo su postgres -c psql postgres) o postgre pede Senha. Já tentei “postgres” e vazia (“”), mas nada adianta.

    • Carlos
      maio 19, 2011 às 5:40 pm

      Já OK.

  50. Lionel Sousa
    maio 21, 2011 às 5:04 pm

    muito eficiente, valeu.

  51. andru
    novembro 21, 2013 às 5:39 am

    Eu gosto de usar com Postgresql em ubuntu – ferramenta gratuita Valentina Estúdio, faz tudo o que eu preciso, e faz isso muito bem http://www.valentina-db.com/en/valentina-studio-overview

  1. julho 14, 2009 às 4:34 pm
  2. outubro 16, 2009 às 11:47 am
  3. novembro 27, 2009 às 12:31 pm

Deixar mensagem para beto Cancelar resposta