Instalando, configurando e administrando o Postgres

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

[ Hits: 18.952 ]

 


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 compilador gcc

Scripts de configuração do Slackware

Apache2 + PHP +Postgres

Usando o ZIP no Linux

Personalizando o Blackbox

Leitura recomendada

Script Reindex PostgreSQL com envio de email de notificação

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

Instalando a linguagem procedural PL/PHP no PostgreSQL

Tuning PostgreSQL 9.1 com pgtune - Debian e derivados

Lidando com nulos (NULL) em SQL

  

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