Home - www.devmedia.com.br

PostegreSQL no Linux -
Instalação e configuração no Conectiva 10

Nesse artigo apresentaremos um passo a passo de como instalar e configurar o PostgreSQL no sistema operacional Linux e a seguir será descrito como criar o usuário PostgreSQL.

Instalação e configuração

Instalação através de pacote:

1 - Para instalar o POSTGRESQL via pacotes, (que vem com sua distribuição Linux), use o gerenciador de pacotes de sua distribuição. Nesse artigo vamos utilizar o Synaptic em conjunto com a distribuição Conectiva 10. (Figura 1)

Figura 1. Chamando o gerenciador de pacotes no Conectiva 10.

2 – Procure na janela de Seções (lado esquerdo) a opção Banco de Dados (Figura 2). Na janela da direita são listados todos os bancos de dados disponíveis na distribuição em questão, e o PostgreSQL é uma destas opções. Selecione o nome “PostgreSQL” para selecionar e realizar a instalação.

Figura 2. Selecionando a opção Bancos de Dados no gerenciador de pacotes.

3 – Se algum outro pacote for requerido durante a instalação, surgirá uma nova janela pelo qual deve-se confirmá-la clicando no botão marcar (Figura 3).

Figura 3. Pacotes adicionais requeridos.

4 – Na barra superior, clique na opção aplicar (Figura 4), seguido de um outro clique sobre o botão aplicar que aparecerá na tela subseqüente. Esses procedimentos fazem com que a instalação dos pacotes selecionados seja realmente efetuada.

Figura 4. Aplicando as alterações e iniciando a instalação.

Instalação por código fonte:

1 – Baixar o código PostgreSQL no site (www.postgresql.org. ou www.postgresql.org.br )

2 – Abra uma janela do terminal (console) (CTRL + F1) (Figura 5)

Figura 5. O console do Linux.

3 – Digite tar -xzvf <nome do arquivo a ser descompactado>.tar.gz (Figura 6)

EX: tar –xzvf postgresql-8.0.3.tar.gz .

Este comando é usado para descompactar o arquivo do código fonte do POSTGRESQL que foi empacotado com o programa TAR e compactado com o programa GZIP.

Figura 6. Desempacotando e descompactando o arquivo baixado.

4 – Entre no diretório.

Ex: cd postgresql-8.0.3

5 – Execute o comando: ./configure

Este comando, juntamente com os dois próximos, é utilizado em qualquer instalação a partir de um código fonte.  O “./configure” serve para configurar as variáveis e definir configurações nos arquivos fonte de acordo com o sistema e bibliotecas disponíveis.

Após o inicio da configuração poderá ocorrer alguns erros que são facilmente resolvidos através da digitação de comandos sugeridos pelo próprio terminal do sistema. (Figura 7)

Figura 7. Sugestão do próprio terminal. Ex: ./configure –without-readline

Acontecendo um novo erro, repita a linha de comando, acrescido de outra opção sugerida pela compilação.

6 – Execute o comando: “gmake” ou “make”

Deste ponto em diante todos os comandos deverão ser executados obrigatoriamente como usuário ‘root'.

7 – Execute o comando: “gmake install” ou “make install”

Após a execução destes comandos o POSTGRESQL estará instalado em seu sistema Linux, no diretório /usr/local/pgsql

Definindo diretório de dados e Criando o usuário ‘postgres'

Antes de iniciar o servidor de banco de dados é necessário definir onde será armazenada a base de dados, neste artigo optou-se por colocar a base de dados no diretório /var/dados.

1 – Crie o diretório usando o comando mkdir (Figura 8)

Ex: mkdir /var/dados

‘Var' é um diretório já existente. ‘Dados' é o diretório criado.

Figura 8. Criando o diretório que armazenará o banco de dados.

2 – Crie o usuário “postgres” digitando o comando “adduser postgres” (Figura 9).

Este usuário é o administrador do banco de dados, você deve definir uma senha para ele (é o mais aconselhável) digitando “passwd postgres”, seguido da senha escolhida.

Figura 9. Criando o usuário postgres.

3 – Para dar segurança à sua base de dados coloque o diretório /var/dados de propriedade do usuário ‘postgres' com o comando chown postgres /var/dados

4 – Agora vamos preparar o diretório /var/dados para receber nossa base de dados.

 Para isso é necessário entrar no usuário ‘postgres'. Basta usar o comando su – postgres. Este comando abre uma sessão de terminal para o usuário especificado.

Para preparar o diretório usamos o programa “initdb”. Sua sintaxe é a seguinte:

initdb –D <diretório da base de dados>

A opção –D permite que você especifique onde está sua base de dados.

Este comando é para ser executado apenas uma vez. Depois de preparado o diretório, uma nova execução deste comando apagará toda sua base de dados.

Em nosso artigo digitaremos: “/usr/local/pgsql/bin/initdb –D /var/dados”

A Figura 10 mostra a saída produzida por este comando.

Figura 10. Saída do initdb -D.

5 – Agora é necessário iniciar o PostgreSQL (SGBD), que irá monitorar todas as atividades de nossa base de dados, assim como ser o responsável pelos acessos, controle de usuários, etc.

Para isso execute o comando: /usr/local/pgsql/bin/postmaster –D /var/dados &.

O “&” no final é utilizado para deixar o servidor em execução em segundo plano (background), isto faz com que o terminal não fique preso e quando for fechado o servidor pare de ser executado.

Também pode ser utilizado o comando: /usr/local/pgsql/bin/pq_ctl –D /var/dados start.

A opção –D serve para especificar onde está à base de dados.

Particularmente recomendamos a segunda opção. Veja que ele não precisa do “&” pois o “pg_ctl” já se responsabiliza em colocar o servidor em background.

O nome do serviço responsável pela monitoração do banco de dados POSTGRESQL é o “postmaster”.

6 – Para iniciar o servidor durante o boot do sistema, basta colocar o comando de inicialização descrito acima (vide item 5) no arquivo de inicialização de sua distribuição. No Conectiva o arquivo é o “/etc/rc.d/rc.local”.

O problema é que somente o usuário “postgres” pode iniciar o servidor e os comandos iniciados durante o boot são executados como usuário “root”. Para resolver este problema usa-se o comando “su” com a opção “-c”. Isto permitirá que executemos um comando como outro usuário.

Então basta colocar no final arquivo de inicialização a seguinte linha de comando:

su - c “/usr/local/pgsql/bin/pq_ctl –D /var/dados start” postgres

Este artigo foi desenvolvido pelos alunos do curso de sistemas de informação – 6º. Período – UNIG – Itaperuna (Eugênio Inácio, Heber Sathler, Jocimar Amaro) em conjunto com os professores Ricardo Esteves Kneipp e Rodney Cezar de Albuquerque.

Abraços,

Prof. Ricardo E. Kneipp

Prof. Rodney C. de Albuquerque

Entre em contato direto com os autores através do site do Grupo KeepOk Technologies em: http://www.keepok.com.br

 

(1) O Prof. Ricardo E. Kneipp é autor de 3 obras na área de informática, inclusive em banco de dados. É graduado em Ciência da Computação-UCP, pós-graduado em Informática na Educação-UFLA e em Gestão Estratégica-UCAM. Realizou curso de certificação Oracle e é Mestrando em Educação-UNIPLI. É Analista de Sistemas e Professor das Universidades UNIG e FAMINAS, nos cursos de graduação e pós-graduação em Biologia, Engenharia da Computação, Sistemas de Informação, Tecnologia de Processamento de Dados e Ciência da Computação. Ministra as Disciplinas: Bioestatística, Banco de Dados, Linguagens de Programação, Projeto Final, Compiladores e Gerenciamento Eletrônico. É membro da SBC (Sociedade Brasileira de Computação).

(2) O Prof. Rodney C. de Albuquerque é autor de 3 obras na área de informática, inclusive em banco de dados. É graduado em Tecnologia de Processamento de Dados-UVA, pós-graduado em Redes Locais-UNESA e em Marketing-UCAM. Realizou cursos de certificação Microsoft e é Mestrando em Educação-UNIPLI. É Analista de Sistemas e Professor da Universidade-UNIG nos cursos de graduação e pós-graduação em Enfermagem, Fisioterapia, Educação Física, Engenharia da Computação, Sistemas de Informação, Tecnologia de Processamento de Dados e Ciência da Computação. Ministra as Disciplinas: Informática Aplicada, Bioestatística, Metodologia, Banco de Dados, Linguagens de Programação, Projeto Final, Redes de Computadores, Segurança e Auditoria de Sistemas. É membro da SBC (Sociedade Brasileira de Computação).

  PostegreSQL no Linux    
  Funções de Conversão – Parte II    
  Funções de Conversão – Parte I    
  Recover no Oracle    
  BackUp no Oracle - Parte 3    
  BackUp no Oracle - Parte 2    
  BackUp no Oracle    
  Criando Views no Oracle    
  Boas-Vindas    
     

 

Todos os direitos reservados: DevMedia Group
SQL Magazine - 2004