Em breve publicarei um post sobre o uso de metamodelos como fontes de dados no PRD. O post de hoje é para ajudá-lo a se preparar, e não traz nada de novo: como instalar Postgres e as bases da Beltrano S/A.

Esse post é uma atualização das instruções de instalação da base de treinamento Beltrano S/A. Você pode seguir este link para conhecer a Beltrano e como ela foi pensada. O texto a seguir apareceu pela primeira no Capítulo 3 do livro Pentaho na Prática.

Instalando e Configurando um Postgres

Para usar as bases OLTP e DW da Beltrano você precisa ter um Postgres instalado e funcionando, bem como conhecer o usuário root e sua senha. Se você já tem um, clique aqui e pule para etapa seguinte. Caso contrário, siga os passos descritos nesta seção para instalar um Postgres em sua máquina.

Se você usa Windows, continue lendo. Se usa Linux, pule para a próxima seção.

Instalar PostgreSQL no Windows XP

As instruções de instalação no Windows estão disponíveis em um e-Book gratuito.

Capa do e-Book Instalando Postrgres 9.0 no Windows.
Capa do e-Book Instalando Postrgres 9.0 no Windows.

Você pode usar o Calibre ou qualquer outro programa leitor de e-Pubs para lê-lo.


Eu tinha uma licença do WindowsXP e resolvi aproveitá-la para fazer esse tutorial. Pelo mesmo motivo (falta de licença) não existe tutorial para Windows mais novos. Entretanto, a uniformidade entre as versões do Windows deve ser o bastante para que você possa seguir praticamente 100% do tutorial em qualquer versão mais recente do Windows.


Instalar PostgreSQL no Linux

Linux é um sistema operacional com n sabores – distribuições – e é virtualmente impossível cobrir todas. Por isso eu não fiz um livro mostrando como instalar Postgres em Linux, mas fiz para Windows. Vamos ver um passo-a-passo para Debian/Ubuntu. Se não for o suficiente, acesse a página de instalação do PostgreSQL para outros Linuxes.

Esse procedimento funciona em qualquer derivado Debian (como o Ubuntu). Existem opções gráficas, mas a linha de comando é universal e relativamente simples.

  1. Abra um terminal de comandos;
  2. Digite,seguido de \[ENTER\]:
    sudo apt-get install postgresql
    
  3. Se perguntado, responda Y ou S. Assim que a instalação acabar você terá um banco instalado, configurado e em operação, mas vazio;Em seguida, altere a senha do usuário-padrão, postgres, para algo fácil de lembrar (e potencialmente inseguro), como postgres. Faça assim:
  4. Entre na conta de usuário Postgres do sistema operacional (aquele que executa o programa do servidor:)
    sudo su – postgres
    

    Esse usuário do sistema operacional (postgres) tem permissão para acessar o servidor PostgreSQL diretamente. Ele é criado pelo processo de instalação do banco e recebe uma senha aleatória, que nunca é mostrada ao usuário final. Como não sabemos nem a senha do usuário nem a senha do root do banco, precisamos fazer login na conta de sistema operacional postgres com sudo. Você até pode modificar a senha desse usuário, mas não há razão para isso.

  5. Agora entre no programa de interface de linha de comando do PostgreSQL, o PSQL, digitando o comando:
    psql
    
  6. Deve aparecer um prompt, esperando comandos, parecido com isso:
    postgres=#
    

    Pronto, você está no prompt do PSQL. Agora altere a senha do usuário do banco (que é diferente do usuário do sistema operacional no qual o banco é executado):

    ALTER ROLE postgres with password 'postgres';
    

    ROLE é o usuário, e entre as aspas simples está a nova senha – postgres. Se deu tudo certo, deve aparece uma mensagem como:

    ALTER ROLE
    postgres=#
    
  7. Saia do PSQL, digitando \q seguido por \[ENTER\];
  8. Faça logout da conta postgres, digitando exit seguido por \[ENTER\].

Agora você tem um servidor PostgreSQL instalado e pronto para ser usado. Sempre que precisar acessá-lo para algo, comande:

    psql postgres -U postgres

Se ele pedir senha, ela será postgres.

Fazer o Postgres Aceitar Qualquer Conexão


Atenção! O procedimento abaixo vai abrir seu PostgreSQL para acesso por qualquer um na mesma rede em que você está! Lembre-se disso ao criar bancos e gravar dados nele. Essa configuração é útil para desenvolvimento, testes, treinamento, mas é perigosa para ambientes de produção ou no caso de dados sensíveis.


  1. Volte à conta do postgres. Em um terminal, entre novamente:
    sudo su – postgres
    
  2. Abra o arquivo de configuração pg_hba.conf para edição com seu editor de textos favorito. Nosso exemplo usa o nano:
    nano etc/postgresql/X.Y/main/pg_hba.conf
    
  3. Vá até o final do arquivo e insira a seguinte linha:
    host all all 0.0.0.0/0 md5
    

    Isso vai fazer com que o servidor aceite conexões de qualquer IP, desde que forneça usuário (postgres) e senha (postgres) para qualquer banco;

  4. Salve o arquivo (nano: CTRL+O) e depois saia do editor (nano: CTRL+X);
  5. Agora edite o arquivo de configuração do servidor postgres.conf:
    nano etc/postgresql/X.Y/main/postgresql.conf
    
  6. Role o arquivo até encontrar a linha com listen_addresses;
  7. Altere localhost para *. Isso vai fazer com que o servidor passe a ouvir conexões de qualquer IP;
  8. Salve o arquivo (nano: CTRL+O) e depois saia do editor (nano: CTRL+X);
  9. Re-inicie o servidor:
    /etc/init.d/postgresql restart
    
  10. Finalmente saia da conta de usuário postgres:
    exit
    

A partir de agora qualquer cliente PostgreSQL pode se conectar ao seu servidor.


Dica: se você for adotar o PostgreSQL como banco para sua empresa, contrate suporte especializado e treine pelo menos um DBA. Você faria isso com Oracle e MS SQL Server, porque vai deixar de fazer com PostgreSQL (ou MySQL)?


Instalando as Bases

Primeiro, instale as bases:

  1. Baixe-as destes links (clique nos nomes dos bancos:)
    1. Beltrano (OLTP) (arquivo beltrano_oltp_10k_pedidos.backup.zip;)
    2. Beltrano DW (arquivo beltrano_dw.backup.zip;)
    3. Beltrano Log (arquivo beltrano_log.backup.zip;)
  2. Descompacte-as em um diretório conhecido e sem espaços no path. Por exemplo, C:\ no Windows e /opt/beltrano no Linux.
  3. Se você usa Linux, não se esqueça de mudar as permissões dos arquivos (já descompactados) com um chmod 777 *.backup.Usando o PSQL (interface de linha de comando do Postgres), conecte-se ao servidor, crie um banco vazio para cada base e restaure-as neles:
  4. Rode o PSQL:
    1. Windows: rode o programa SQL Shell, que fica em Menu Iniciar -> Programas -> Posgtres <Versão> -> SQL Shell (psql);
    2. Linux: abra um terminal e comande psql -U postgres. Isso vai conectar você ao servidor localhost, porta 5432, banco postgres, com usuário postgres;
  5. Crie o novo banco de dados, comandando:
    1. Beltrano OLTP: CREATE DATABASE beltrano; (inclua o ponto-e-vírgula!);
    2. Beltrano DW: CREATE DATABASE beltrano_dw; (não se esqueça do ponto-e-vírgula!);
    3. Beltrano Log: CREATE DATABASE beltrano_log; (já sabe, não? Ponto-e-vírgula incluso!);
  6. Conecte-se a cada uma das bases recém-criadas e restaure-as. Ou seja, ainda no psql, comande (pressionando \[ENTER\] ao final de cada linha:)
    \c beltrano
    \i /opt/beltrano_oltp_10k_pedidos.backup
    \c beltrano_dw
    \i /opt/beltrano_dw.backup
    \c beltrano_log
    \i /opt/beltrano_log.backup
    

    Cada um destes comandos terá uma resposta. Os comandos \i efetivamente populam o banco, processando cada linha do script, e por isso resulta em uma lista maior de respostas – uma para cada comando do arquivo de backup.


Esse script é para Linux!


Windows: entre os mesmos comandos acima, mas use o caminho c:\, com barra contrária, ao referenciar o arquivo. Por exemplo:

  • \i c:\beltrano_oltp_10K_pedidos.backup
  • \i c:\beltrano_dw.backup
  • \i c:\beltrano_log.backup

Voilà! Bases instaladas e prontas para os exercícios. Você pode comprovar usando o pgAdmin para examinar os bancos e verificar o conteúdo das tabelas.

Bases restauradas (pgAdmin III do Windows.)
Bases restauradas (pgAdmin III do Windows.)

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s