Instalando, configurando e administrando o Postgres

Publicado por Fabio Machado de Oliveira em 08/10/2007

[ Hits: 18.968 ]

 


Instalando, configurando e administrando o Postgres



O PostgreSQL é um poderoso SGDB muito difundido no mundo livre e usando em aplicações que precisam de um bom desempenho.

O PostgreSQL possui pacote *.tgz para o Slackware que facilita sua instalação. Você pode baixar o pacote de instalação no site www.linuxpackages.net, que só tem pacotes para Slackware.

Feito isso, vamos aos passos para sua instalação, configuração e administração.

Passo 1: Instalação do pacote.

# installpkg postgres*.tgz

Passo 2: Criar um grupo no sistema.

# groupadd postgres

Passo 3: Criar um usuário no sistema.

# useradd -g postgres -s /bin/bash -d /var/lib/pgsql postgres

Passo 4: Criar o local onde reside a estrutura do banco.

# mkdir -p /var/lib/pgsql/data

Passo 5: Mudar a permissão

# chown -R postgres:postgres /var/lib/pgsql

Passo 6: Logar como superusuário.

# su postgres

Passo 7: Iniciando a base de dados.

$ initdb -D /var/lib/pgsql/data

Passo 8: Iniciar o servidor.

$ postmaster -i -D /var/lib/pgsql/data > logfile 2>&1 &

ou

# /etc/rc.d/rc.postgres start

Passo 9: Criando um base de dados (Data Bases)

$ createdb postgres

Passo 10: Acessando a base de dados.

$ psql postgres

Pronto... Agora para criar as tabelas e inserir dados nelas é só usar os comandos SQL.

OBS: Para ter acesso você deve logar como superusuário para o usuário postgres.

O Postgres por padrão acessa as bases de dados sem senha, para fazer acesso com senha e melhorar a segurança do dados entre no arquivo pg_hba.conf.

$ psql postgres
postgres=# alter user postgres with encrypted password 'sua-senha';
ALTER USER -> RESPOSTA.

$ vim /var/lib/pgsql/data/pg_hda.conf

Localize mas ultimas linhas a palavra TRUST e mude para md5.

Agora pare o servidor:

$ pg_ctl stop -D /var/lib/pgsql/data/ -s -m fast

ou

# /etc/rc.d/rc.postgres stop

Agora inicie o servidor:

$ postmaster -i -D /var/lib/pgsql/data > logfile 2>&1 &

ou

# /etc/rc.d/rc.postgres start

Pronto, agora só com senha o usuário consegue acessar a base de dados.

Acesso remoto

A porta para acesso remoto do Postgres é a: 5432

Para configurar o acesso remoto entre no arquivo: postgresql.conf

$ vim /var/lib/pgsql/data/postgresql.conf

Localize a linha:

#listen_addresses = '*' -> para aceitar qualquer IP ou HOST do seu servidor

#port = 5432 -> desmarque

Depois entre no arquivo: pg_hda.conf

Este arquivo controla quais host tem permissão de conexão, como os clientes se autenticam, quais usuários do PostgreSQL tem acesso e que banco de dados eles podem acessar.

local DATABASE USER METHOD [OPTION]
host DATABASE USER CIDR-ADDRESS METHOD [OPTION]
hostss1 DATABASE USER CIDR-ADDRESS METHOD [OPTION]
hostnoss1 DATABASE USER CIDR-ADDRESS METHOD [OPTION]

Sendo:
  • tipo de conexão (local ou host)
  • banco de dados (all=todos)
  • usuários (all=todos)
  • IP e mascara (padrão CIDR)
  • método (reject,trust,password,md5,ident same user)

Exemplo 01: Acessa a base de dados sem senha:

host base_de_dados all 192.168.1.1/32 TRUST

Exemplo 02: Acessa a base de dados com senha:

host base_de_dados all 192.168.1.1/32 md5
host all all IP_do_Client/32 md5

Exemplo 03: Restringe acesso externo para o usuário postgres:

local all postgres ident sameuser

Para fazer conexão:

# psql -h 192.168.1.1 database usuário

Outras dicas deste autor

Usando o ZIP no Linux

Scripts de configuração do Slackware

Usando o compilador gcc

Personalizando o Blackbox

Apache2 + PHP +Postgres

Leitura recomendada

Instalação do PostgreSQL no CoLinux-Debian

Função dblink()

Função SQL replace: corrigindo inserções equivocadas

Permitindo conexão ao banco no PostreSQL 8.3

Tradução da documentação da PL/PHP para PostgreSQL

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts