segunda-feira, 7 de janeiro de 2008

PostgreSQL - instalando

A tempos atrás instalei o PostgreSQL 8.0 na minha máquina. Lembro que foi um tanto penoso para entender como proceder logo após a instalação dele no sistema, pensei até em escrever aqui mas devido à falta de tempo não escrevi nada, e é o que venho fazer agora.

O material é um tanto escasso em português, e as explicações geralmente confusas. Vou tentar dar um passo-a-passo.

Instalei no Ubuntu 6.06 pelo Synaptic (bem fácil), mas creio que o processo de compilação está bem descrito na documentação do PostgreSQL, então não vou me ater à este processo. O galho me veio após a instalação. Também recomendo que se instale o phppgAdmin, que dá uma interface mais agradável de trabalhar (nesse caso você precisará do Apache2 e do PHP5).

Primeiramente, saiba que quando se instala o PostgreSQL, assim como o Apache, o CUPS, é criado um usuário no sistema, para que este possa iniciar o servidor. É mais uma questão de organização e controle. Não se preocupe com isso, basta saber que o nome do usuário é postgres.

Além de criar este usuário, alguns comandos são adicionados ao sistema. São comandos administrativos que podem ser chamados direto pelo terminal.

Mais um detalhe importante: o PostgreSQL não permite que se crie e faça login com usuários com nomes sugestivos como admin, root, etc... Anotado? Então vamos lá, temos comandos para agir externamente e sabemos que não podemos criar nenhum usuário com nome sugestivo.

Abra um terminal e digite o comando:

$sudo su - postgres createuser seu_nome_de_usuario_do_linux

Se não funcionar dessa forma tente:

$sudo su - postgres
$createuser seu_nome_de_usuario_do_linux

A seguir serão feitas algumas perguntas (o novo usuário poderá criar um super-usuário? o novo usuário poderá criar bancos de dados?...poderá criar um novo usuário?). Responda a estas perguntas (sugiro um não-sim-não).

NOTA: o seu_nome_de_usuário_do_linux irá facilitar sua vida na hora de criar bancos de dados e fazer manutenção.

Temos um usuário criado, mas ele não tem senha ainda.
Faça assim:

$sudo su - postgres psql

Se não der certo tente:

$sudo su - postgres
$psql

Isso irá abrir um outro tipo de terminal, um terminal interativo com o servidor de banco de dados. Entre com a seguinte linha nele:

postgres=#ALTER ROLE seu_nome_de_usuário_do_linux WITH PASSWORD 'sua_senha';

Dê enter (aí você acaba de setar sua senha) e depois digite:

postgres=#\q

E dê enter novamente (para sair do terminal interativo do PostgreSQL).

Pronto. Agora você tem um usuário e senha do PostgreSQL com o qual poderá criar e editar seus bancos de dados no PostgreSQL.

Você pode criar um banco de dados mesmo sem senha com o comando:

$createdb nome_do_banco

Mas para logar pelo phppgAdmin a senha se faz necessária.

Agora vamos supor que você tenha criado um banco com o nome dummy. Para acessá-lo pelo terminal interativo do postgreSQL, basta fazer:

$psql -d dummy

E a partir daí enviar suas queries à este banco.

Espero que isso tenha ajudado a dar o ponta-pé inicial para o uso do PostgreSQL. Abaixo passo alguma informações extras.

Os comandos que podem ser usados direto pelo terminal são:
clusterdb -- cluster a PostgreSQL database
createdb -- create a new PostgreSQL database
createlang -- define a new PostgreSQL procedural language
createuser -- define a new PostgreSQL user account
dropdb -- remove a PostgreSQL database
droplang -- remove a PostgreSQL procedural language
dropuser -- remove a PostgreSQL user account
ecpg -- embedded SQL C preprocessor
pg_config -- retrieve information about the installed version of PostgreSQL
pg_dump -- extract a PostgreSQL database into a script file or other archive file
pg_dumpall -- extract a PostgreSQL database cluster into a script file
pg_restore -- restore a PostgreSQL database from an archive file created by pg_dump
psql -- PostgreSQL interactive terminal
reindexdb -- reindex a PostgreSQL database
vacuumdb -- garbage-collect and analyze a PostgreSQL database

-----------
keepReading

Nenhum comentário:

Postar um comentário