Certificado Oracle Exadata 11g
March 30, 2012

É com alegria que compartilho a vocês mais uma conquista.

Hoje prestei e passei na certificação 1Z0-536, recebendo assim o certificado “Oracle Exadata 11g Certitified Implementation Specialist”.

Uma notícia ainda melhor é que a partir de agora vou colocar post’s aqui sobre Exadata, quem estiver interessado acompanhe o blog :)

Um grande abraço e um ótimo final de semana a todos …

Certificação Exadata Flávio Soares

GUOB 1ª Encontro 2012
March 25, 2012

Ontem ocorreu o Primeiro encontro de 2012 do Grupo de Usuários de Tecnologia Oracle do Brasil o GUOB, realizado aqui em São Paulo.

Apesar de ter chegado quase no final do evento, consegui ver a tempo o palestrante Craig A. Shallahamer que despensa comentários. Além da extrema simpatia é um grande conhecedor Oracle, principalmente em performance.

“Craig é um pesquisador, escritor e professor de milhares de profissionais Oracle. Seu foco é Oracle performance management, o que levou a publicar mais de 24 trabalhos técnicos e autoria do livros Oracle Performance Firefighting and Forecasting Oracle Performance, e colaborador regular do seu blog  A Wider View. Craig é o criador e professor do popular  Advanced Oracle Performance Analysis, Oracle Performance Firefightin e Oracle Forecasting, além  de cursos de Predictive Analysis. Depois de nove trabalhando na Oracle Corporation, em que ele co-fundou as principais tecnologias e dos Grupos de desempenho do sistema em 1998, ele deixou a Oracle para iniciar OraPub, Inc. Ele é um educador apaixonado e um instrutor envolvente. Seu estilo de apresentação divertida combina com a sua profundidade de experiências Oracle para fazer com que cada apresentação única. Um Oracle ACE Director, ele ensinou milhares de profissionais Oracle em 6 continentes em 24 países.”  http://www.guob.com.br/

Essa foi a minha primeira participação no GUOB e gostei muito, principalmente por sentir que o evento é muito mais voltado a área técnica. A própria palestra do mito Craig falou sobre o Oracle Buffer Cache Internals, que mostrou os conceitos de como o Oracle realiza o gerenciamento de dados dentro do Buffer Cache.

Consegui até uma foto com o Craig :)

Auto completando com o SQLPlus
March 1, 2012

Está vai para quem sempre quis usar TAB no momento de fazer aquele comando no SQL*Plus.

Já imaginou digitar sel no prompt, apertar a tecla TAB e ele automaticamente completar a palavra select? Bom … isso é totalmente possível, graças ao pacote rlwrap. Além de auto completar é possível deixar um histórico de comandos no SQL*Plus. O histórico eu já mostrei a algum tempo atrás como fazer, veja aqui.

Após de você ter instalado o pacote rlwrap(é possível instalar através do yum [Red Hat, Oracle Linhx, Fedora] ou wget [Ubuntu, Debian, Suse]), veja que ele é super simples de usar. Antes de fazer a chamada para o sqlplus, basta colocar o comando rlwrap na frente, dessa forma:

oracle@oracle11g:~$ rlwrap sqlplus / as sysdba

SQL*Plus: Release 11.2.0.3.0 Production on Wed Feb 29 22:53:44 2012

Copyright (c) 1982, 2011, Oracle.  All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
With the Partitioning and Real Application Testing options

SYS@dbtst>

Pronto, a partir de agora você tem o poder de ter o histórico de todas as suas chamadas no SQL*Plus. Faça um teste você mesmo, digite o comando abaixo:

SYS@dbtst> select count(*) from dba_tables;

  COUNT(*)
----------
      2806

1 row selected.

Agora, aperta a seta para cima ? do seu teclado para ver o seu último comando digitado.

SYS@dbtst> (tecla seta de cima)
SYS@dbtst> select count(*) from dba_tables;

  COUNT(*)
----------
      2806

1 row selected.

Muito bom né?! Ok … Essa eu já tinha mostrado no último artigo do rlwrap, mais e como auto completar meus comandos? Super simples também, mais primeiro temos que criar nosso catalogo de palavras chaves que rlwrap lerá para saber o que auto completar.

Vamos então criar o arquivo chamado $ORACLE_BASE/sql.dict e nesse arquivo, vamos colocar as seguintes palavras:

select
update
delete
create
number
table

Feito isso, vamos fazer o sqlplus da seguinte forma:

[oracle@oracle11g ~]$ rlwrap -b "" -f $ORACLE_BASE/sql.dict sqlplus
SQL*Plus: Release 11.2.0.3.0 Production on Wed Feb 29 23:01:49 2012

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

Enter user-name: system@dbtst
Enter password: 

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
With the Partitioning and Real Application Testing options

SYSTEM@dbtst>

Ótimo, agora basta digitar sel, aperte a tecla TAB e veja o rlwrap auto completar o comando select

SYSTEM@dbtst>  sel [TAB]
SYSTEM@dbtst>  select

O segredo aqui está no arquivo $ORACLE_BASE/sql.dict, que funciona como um catalogo de palavras, qual comando você colocar lá o rlwrap vai auto completar.

Lembrando que o rlwrap não funciona somente com o SQL*Plus, ele também faz a mesma coisa com o rman por exemplo:

[oracle@oracle11g ~]$ rlwrap -b "" -f $ORACLE_HOME/sql.dict rman target/

Recovery Manager: Release 11.2.0.2.0 - Production on Wed Feb 29 23:07:08 2012

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

connected to target database: DBTST (DBID=2992708500)

RMAN>

Para não ter que ficar digitando esse comando enorme, gosto de criar um alias dele e colocar no meu arquivo ~/.bashrc:

alias sql='rlwrap -b "" -f $ORACLE_BASE/sql.dict sqlplus'

Feito isso basta agora executar o alias sql que o sqlplus irá abrir com o rlwrap.

[oracle@oracle11g ~]$ . .bashrc
[oracle@oracle11g ~]$ sql

SQL*Plus: Release 11.2.0.3.0 Production on Wed Feb 29 23:10:12 2012

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

Enter user-name: