segunda-feira, 14 de novembro de 2011

Acessando base de dados PostgreSQL utilizando RUBY na linha de comando

INTRODUÇÃO: Este tutorial tem o objetivo de demonstrar a utilização do RUBY com a linha de comando. Iremos criar um arquivo contendo um simples programa escrito em código RUBY que faz acesso a uma base de dados em PostgreSQL. Quem quiser deixar alguma sugestão ou crítica, fique a vontade para utilizar os comentários logo abaixo desta postagem.

OBS: Para seguir esse tutorial perfeitamente, é necessário utilizar o Ubuntu Linux 10.10, ter instalado o ambiente de desenvolvimento do RUBY (estamos utilizando a versão 1.9.2) e um banco de dados PostgreSQL (recomendo a versão 9.0 mas poderá ser utilizada a versão 8.4)

PASSO 01: Instalando e configurando o PostgreSQL e o cliente PGADMIN (utilize o terminal do Ubuntu):
$ sudo apt-get install postgresql-8.4 pgadmin3
$ sudo -u postgres psql template1
$ alter user postgres with encrypted password 'SENHA_BANCO';
$ \q
$ sudo /etc/init.d/postgresql restart


PASSO 02: Instalando o suporte do RUBY ao PostgreSQL (utilize o terminal do Ubuntu):
$ gem install pg 

OBS: Caso sua rede esteja protegida com um proxy não transparente, tente utilizar o comando abaixo:
$ gem install pg --http-proxy http://USUARIO_PROXY:SENHA_PROXY@ENDERECO_PROXY:PORTA_PROXY

PASSO 03: Agora que o POSTGRES e o PGADMIN estão instalados, você poderá procurar o PGADMIN em sua área de trabalho e criar uma simples base de dados chamada BANCO e inserir alguns dados:
BEGIN;
CREATE TABLE pessoa (
    id serial primary key,
    nome varchar,
    datanasc date
);
INSERT INTO pessoa (nome, datanasc) VALUES ('Jefferson', '1980-06-12');
INSERT INTO pessoa (nome, datanasc) VALUES ('Daniel', '1981-03-23');
INSERT INTO pessoa (nome, datanasc) VALUES ('Bruno', '1982-05-05');
INSERT INTO pessoa (nome, datanasc) VALUES ('Eduardo', '1984-08-10');
INSERT INTO pessoa (nome, datanasc) VALUES ('Viviane', '1981-02-22'); 
COMMIT;


PASSO 04: Agora crie em sua pasta de projetos o arquivo teste_postgres.rb com o seguinte conteúdo abaixo (você poderá cria-lo em qualquer local de sua pasta /home/USUARIO e utilizar o GEDIT em ambiente gráfico ou o PICO no terminal):
require 'pg'
conn = PGconn.connect('ENDERECO_BANCO', PORTA_BANCO, nil, nil, 'BANCO', 'USUARIO_BANCO', 'SENHA_BANCO')
res = conn.exec("SELECT id, nome, to_char(datanasc, 'DD/MM/YYYY') as nascimento FROM pessoa")
res.each do |r|
    puts "#{r['id']} - #{r['nome']} - #{r['nascimento']}"
end
res.clear
conn.close


PASSO 05: Para executar o programa acima, abra o terminal e execute o comando abaixo:
$ cd /home/USUARIO_SO/CAMINHO_ATE_ARQUIVO/
$ ruby teste_postgres.rb


OBS: Após executar o último comando, o programa irá exibir todos os dados inseridos no PASSO 03. 
CONCLUSÃO: Este tipo de programação é muito útil para trabalhar com scripts de migração ou manutenção de dados de forma ágil e transparente para o usuário final. Obviamente o RUBY fornece técnicas ou estruras de programação mais robustas para desenvolver programas profissionais que será foco de futuros tutoriais neste mesmo blog.

REFERÊNCIAS:

01. Ruby Programming Language - http://www.ruby-lang.org
02. PostgreSQL - http://www.postgresql.org
03. PG - http://rubygems.org/gems/pg
04. UBUNTU - http://www.ubuntu.com

quinta-feira, 10 de novembro de 2011

Instalando ambiente de desenvolvimento Ruby (redes com proxy não transparente)


INTRODUÇÃO: Este tutorial tem o objetivo de instalar a linguagem de programação RUBY em estações de trabalho GNU/Linux em redes que utilizam PROXY não transparente. Quem quiser deixar alguma sugestão ou crítica, fique a vontade para utilizar os comentários logo abaixo desta postagem. Caso tenha interesse em instalar este ambiente em redes com proxy transparente, consulte o tutorial neste link: http://embuar.blogspot.com/#!/2011/11/instalando-ambiente-de-desenvolvimento.html

PASSO 01: Abra o terminal de seu UBUNTU. A versão utilizada neste tutorial foi a 10.10 Maverick Meerkat para processadores AMD64.

PASSO 02: Abra o arquivo de configuração do APT utilizando o programa PICO:
$ sudo pico /etc/apt/apt.conf

PASSO 03: Modifique as linhas no arquivo apt.conf para ficar com uma estrutura semelhante a apresentada abaixo. Em seguida utilize o comando CTRL+O para salvar e CTRL+X para sair (não esqueça de confirmar):
Acquire::http::proxy "http://USUARIO:SENHA@DOMINIO_OU_IP:PORTA/";
Acquire::ftp::proxy "ftp://USUARIO:SENHA@DOMINIO_OU_IP:PORTA/";
Acquire::https::proxy "https://USUARIO:SENHA@DOMINIO_OU_IP:PORTA/";

PASSO 04: Será necessário instalar as ferramentas GIT (controle de versão) e CURL (ferramenta de transferência de dados com sintaxe de URL). Execute o seguinte comando em seu terminal:
$ sudo apt-get install git-core curl


PASSO 05: Configure seu GIT para funcionar corretamente com o PROXY
$ sudo git config --global http://USUARIO:SENHA@DOMINIO_OU_IP:PORTA


PASSO 06: Faça o download do RVM para gerenciar seu ambiente de desenvolvimento (a URL com o instalador pode ter sido modificada, consulte o site http://beginrescueend.com para mais informações)
$ bash < <(curl --proxy http://USUARIO:SENHA@DOMINIO_OU_IP:PORTA -L https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)


PASSO 07: Após este passo, será necessário executar o comando abaixo para executar o RVM
$ /home/USUARIO/.rvm/bin/rvm


PASSO 08: Abra o arquivo .bashrc de seu usuário utilizando o programa PICO
$ pico ~/.bashrc


PASSO 09: Adicione as seguintes linhas no final do arquivo .bashrc em seguida utilize o comando CTRL+O para salvar e CTRL+X para sair (não esqueça de confirmar)
# ativa o RVM
if [[ -s "$HOME/.rvm/scripts/rvm" ]] ; then
     source "$HOME/.rvm/scripts/rvm"
fi


PASSO 10: Feche o terminal e abra-o novamente. Agora o comando do RVM poderá ser executado desta forma:
$ rvm


PASSO 11: O comando abaixo exibirá os requisitos mínimos/dependências para executar o RUBY:
$ rvm requirements


PASSO 12: Em meu computador, o comando anterior me informou para executar a seguinte linha de comando para instalar o RUBY (isto pode variar de computador para computador):
$ sudo apt-get install build-essential openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev automake libtool bison subversion


PASSO 13: Em seguida, vamos instalar uma versão estável do RUBY (1.9.2). Obs: o comando abaixo poderá demorar algum tempo dependendo da velocidade de sua INTERNET.
$ rvm install ruby-1.9.2 --proxy http://USUARIO:SENHA@DOMINIO_OU_IP:PORTA


PASSO 14: O comando abaixo irá configurar a versão 1.9.2 como a versão padrão de seu RUBY:
$ rvm --default use 1.9.2


PASSO 15: Testando o Ruby:
$ ruby -v


CONCLUSÃO: Deste ponto em diante, seu ambiente de desenvolvimento está pronto para trabalhar com o RUBY 1.9.2. Além disto, instalamos uma ferramenta (o RVM) para gerenciar outras versões do ruby que poderão ser instaladas paralelamente assim como o GIT que poderá ser utilizado para fazer controle de versões de seus códigos.

REFERÊNCIAS:
01. Ruby Programming Language - http://www.ruby-lang.org
02. RVM (Ruby Version Manager) - http://beginrescueend.com/
03. GIT - http://git-scm.com/
04. cURL - http://curl.haxx.se/
05. UBUNTU - http://www.ubuntu.com/

AGRADECIMENTOS:
01. Maurício Linhares - http://twitter.com/mauriciojr
02. LinuxFI - http://www.linuxfi.com.br/

quarta-feira, 9 de novembro de 2011

Instalando ambiente de desenvolvimento Ruby (sem proxy)


INTRODUÇÃO: Este é mais um tutorial em português feito para auxiliar iniciantes (assim como eu mesmo) a utilizarem a linguagem de programação RUBY em suas estações de trabalho GNU/Linux. Tentarei manter uma certa frequência nas postagens neste blog como incentivo ao meu próprio aprendizado. Quem quiser deixar alguma sugestão ou crítica, fique a vontade para utilizar os comentários logo abaixo desta postagem.

PASSO 01: Abra o terminal de seu UBUNTU. A versão utilizada neste tutorial foi a 10.10 Maverick Meerkat para processadores AMD64.

PASSO 02: Será necessário instalar as ferramentas GIT (controle de versão) e CURL (ferramenta de transferência de dados com sintaxe de URL). Execute o seguinte comando em seu terminal:
$ sudo apt-get install git-core curl


PASSO 03: Faça o download do RVM para gerenciar seu ambiente de desenvolvimento (a URL com o instalador pode ter sido modificada, consulte o site http://beginrescueend.com para mais informações) 
$ bash < <(curl -L https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)


PASSO 04: Após este passo, será necessário executar o comando abaixo para executar o RVM
$ /home/USUARIO/.rvm/bin/rvm


PASSO 05: Abra o arquivo .bashrc de seu usuário utilizando o programa PICO
$ pico ~/.bashrc


PASSO 06: Adicione as seguintes linhas no final do arquivo .bashrc e em seguida utilize o comando CTRL+O para salvar e CTRL+X para sair (não esqueça de confirmar)
# ativa o RVM
if [[ -s "$HOME/.rvm/scripts/rvm" ]] ; then
     source "$HOME/.rvm/scripts/rvm"
fi


PASSO 07: Feche o terminal e abra-o novamente. Agora o comando do RVM poderá ser executado desta forma:
$ rvm


PASSO 08: O comando abaixo exibirá os requisitos mínimos/dependências para executar o RUBY: 
$ rvm requirements


PASSO 09: Em meu computador, o comando anterior me informou para executar a seguinte linha de comando para instalar o RUBY (isto pode variar de computador para computador):
$ sudo apt-get install build-essential openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev automake libtool bison subversion


PASSO 10: Em seguida, vamos instalar uma versão estável do RUBY (1.9.2). Obs: o comando abaixo poderá demorar algum tempo dependendo da velocidade de sua INTERNET.
$ rvm install ruby-1.9.2


PASSO 11: O comando abaixo irá configurar a versão 1.9.2 como a versão padrão de seu RUBY:
$ rvm --default use 1.9.2


PASSO 12: Testando o Ruby:
$ ruby -v


CONCLUSÃO: Deste ponto em diante, seu ambiente de desenvolvimento está pronto para trabalhar com o RUBY 1.9.2. Além disto, instalamos uma ferramenta (o RVM) para gerenciar outras versões do ruby que poderão ser instaladas paralelamente assim como o GIT que poderá ser utilizado para fazer controle de versões de seus códigos. No próximo tutorial demonstrarei como fazer a instalação destas ferramentas em redes com proxy.


REFERÊNCIAS:
01. Ruby Programming Language - http://www.ruby-lang.org
02. RVM (Ruby Version Manager) - http://beginrescueend.com/
03. GIT - http://git-scm.com/
04. cURL - http://curl.haxx.se/
05. UBUNTU - http://www.ubuntu.com/


AGRADECIMENTOS:
01. Maurício Linhares - http://twitter.com/mauriciojr
02. LinuxFI - http://www.linuxfi.com.br/