Compilando o PostgreSQL 8.2 no Debian Lenny
Índice
- Dependências
- Compilando o PostgreSQL
- Criando o usuário postgres e criando o cluster
- Comandos básicos do PostgreSQL
- Instalação em outros sistemas operacionais
- Créditos
A versão 1.X do i-Educar está homologada para funcionar com o banco de dados PostgreSQL em sua versão 8.2. Porém, as distribuições Linux mais atuais (como o Debian e o Ubuntu) não possuem mais suporte a esta versão.
Para instalá-lo, é necessário compilá-lo ou instalar os pacotes pré-compilados de sua distribuição (não é recomendável pois pode quebrar dependências de sistema). Este guia segue a primeira opção, então prepare-se para a compilação.
Faça o download do código fonte do banco (arquivo postgresql-8.2.XX.tar.gz) no site do projeto PostgreSQL. Este guia foi baseado na versão 8.2.11.
Dependências
Para compilar o PostgreSQL, é necessário resolver algumas dependências:
$ apt-get install gcc g++ zlibc $ apt-get install libreadline5-dev zlib1g-dev -y
Compilando o PostgreSQL
Faça o download e compile o código fonte (observe que os dois últimos comandos devem ser dados como root):
$ wget http://wwwmaster.postgresql.org/download/mirrors-ftp/source/v8.2.11/postgresql-8.2.11.tar.gz $ tar -zvxf postgresql-8.2.11.tar.gz $ cd postgresql-8.2.11 $ ./configure --prefix=/usr/local/pgsql --without-readline $ make # make install # cp /usr/local/pgsql/bin/* /usr/bin
Criando o usuário postgres e criando o cluster
Crie o usuário postgres (o super usuário do banco de dados).
# adduser postgres
Crie o diretório do cluster e dê posse para o usuário postgres recém criado:
# mkdir /usr/local/pgsql/data # chown postgres /usr/local/pgsql/data -v
Inicie o cluster:
# su - postgres $ cd /usr/local/pgsql/ $ /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
Teste se o PostgreSQL está realmente funcionando:
$ /usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data
Se o Postgresql estiver realmente funcionando, algo parecido com o trecho abaixo será exibido
LOG: database system was shut down at 2009-08-04 09:02:16 BRT LOG: checkpoint record is at 0/42C424 LOG: redo record is at 0/42C424; undo record is at 0/0; shutdown TRUE LOG: next transaction ID: 0/593; next OID: 10820 LOG: next MultiXactId: 1; next MultiXactOffset: 0 LOG: database system is ready
Para poder parar este último comando, utilize o atalho CTRL+C.
Deslogue do usuário postgres e retorne ao usuário root apenas com o comando $ exit
Copie o script de inicialização do PostgreSQL (está no diretório em que você descompactou o tar.gz). Este comando irá facilitar as ações de iniciar, parar e reiniciar o banco:
# cp contrib/start-scripts/linux /etc/init.d/postgresql # chmod +x /etc/init.d/postgresql
Ative a capacidade a conexões TCP/IP no próprio script de inicialização: Escolha uma das duas formas de editores apresentadas abaixo
Para usar o editor vim (editor via terminal)
# vim /etc/init.d/postgresql
se quiser usar o gedit (editor gráfico
# gedit /etc/init.d/postgresql
Altere as seguintes linhas:
echo -n "Starting PostgreSQL: " su - $PGUSER -c "$DAEMON -D '$PGDATA' &" >>$PGLOG 2>&1
Para:
echo -n "Starting PostgreSQL: " su - $PGUSER -c "$DAEMON -i -D '$PGDATA' &" >>$PGLOG 2>&1
Atencão: observe que apenas foi acrescentado o parâmetro -i antes do -D.
Para verificar se o PostgreSQL está rodando na portão padrão, utilize o comando netstat:
# netstat -avnp |grep 5432
O resultado esperado deverá ser próximo de:
netstat: no support for `AF IPX' on this system. netstat: no support for `AF AX25' on this system. netstat: no support for `AF X25' on this system. netstat: no support for `AF NETROM' on this system.
Comandos básicos do PostgreSQL
Iniciar
# /etc/init.d/postgresql start
Parar
# /etc/init.d/postgresql stop
Reiniciar
# /etc/init.d/postgresql restart
Verificar status
# /etc/init.d/postgresql status
Instalação em outros sistemas operacionais
Este guia foi criado utilizando o Debian Lenny. Usuários Ubuntu não devem ter dificuldades em seguir este guia. Para outras distribuições Linux, verifique a nomenclatura dos pacotes dependentes. Usuários Windows podem simplesmente instalar com o uso do instalador do PostgreSQL.
Créditos
Esse guia foi baseado no manual de instalação do projeto GSAN (necessário cadastro) que também está hospedado no Portal do Software Público Brasileiro.
