Banco de Dados

Compilando o PostgreSQL

O PostgreSQL é um poderoso gerenciador de bancos de dados. Neste artigo vou mostar como compilar o PostgreSQL em seu sistema operacional Linux. No geral, recomendo a utilização dos pacotes que já vem em sua distribuição, porém se você utiliza alguma distribuição (Ex: Slackware) que não vem com pacote nativo para o mesmo, o processo de compilação é bastante simples.

1) Download do código-fonte

Acesse o site http://www.postgresql.org/ftp/source/ e baixe a versão que deseja compilar. No meu caso irei compilar o 8.3.6.

2) Criação do usuário e grupo “postgres”

Primeiramente vamos criar um grupo denominado “postgres”.

root@slackware: ~# groupadd postgres

Agora iremos criar o usuário denominado “postgres”.

root@slackware: ~# mkdir /var/lib/pgsql
root@slackware: ~# chmod 700 /var/lib/pgsql
root@slackware: ~# useradd -g postgres -G postgres -d /var/lib/pgsql -s /bin/bash postgres

3) Descompactando & Compilando o código-fonte

Entre no diretório onde você efetuou o download do PostgreSQL e descompacte-o.

root@slackware: ~# tar xvjf postgresql-8.3.6.tar.bz2 -C /usr/src/.

Agora vamos compilar!

root@slackware: ~# cd /usr/src/postgresql-8.3.6
root@slackware: /usr/src/postgresql-8.3.6# ./configure –prefix=/usr –sysconfdir=/var/lib/pgsql –localstatedir=/var/lib/pgsql –with-openssl –with-libxml –with-libxslt
root@slackware: /usr/src/postgresql-8.3.6# make
root@slackware: /usr/src/postgresql-8.3.6# make install

PS: Na linha do comando “./configure” acima, as opções “–with-openssl –with-libxml –with-libxslt” não são obrigatórias. Você poderá visualizar a lista completa de opções a serem passadas na compilação do PostgreSQL através do comando “./configure –help“.

Protinho! PostgreSQL devidamente compilado e instalado.

4) Setando as permissões para o usuário “postgres” e inicializando o DB

root@slackware: /usr/src/postgresql-8.3.6# chown -R postgres.postgres /var/lib/pgsql
root@slackware: /usr/src/postgresql-8.3.6# su – postgres
postgres@slackware: ~$ initdb -D /var/lib/pgsql/data

postgres@slackware: ~$ logout

Prontinho! Agora só falta o script de inicialização do PostgreSQL.

5) Configurando o script de incialização

root@slackware: /usr/src/postgresql-8.3.6# cp contrib/start-scripts/linux /etc/rc.d/rc.postgresqld
root@slackware:
/usr/src/postgresql-8.3.6# vi /etc/rc.d/rc.postgresqld

Agora vamos modificar as seguintes linhas:

# Installation prefix
prefix=/usr/local/pgsql

Modifique-a para:
prefix=/usr

# Data directory
PGDATA=”/usr/local/pgsql/data”

Modifique-a para:
PGDATA=”/var/lib/pgsql/data”

Salve e saia! Protinho! Agora é só inicializar o PostgreSQL através do comando:

root@slackware: ~# /etc/rc.d/rc.postgresqld start

PostgreSQL funcionando!

Inicializando o mySQL no Slackware

Bem, certamente muitos já passaram por isso: Ao tentar inicializar o mySQL no Slackware se deparou com a mensagem de que o usuário do mySQL não tinha permissão para trabalhar.

Então como resolver isso?

Simples, entre com o usuário root e digite:
# chown -R mysql.mysql /var/lib/mysql

Prontinho! Agora você pode iniciar o mysql através do /etc/rc.d/rc.mysqld

PS: Lembre-se sempre que antes da primeira inicialização do mySQL faz-se necessário executar como root o comando mysql_install_db.