Script Perl para SQLTUNE
Muitos alunos me pedem o Script que eu fiz que executa a Package DBMS_SQLTUNE automaticamente nos SQLs mais custosos ao banco, então resolvi coloca-lo para download e publicar aqui.
Este Script aplica o SQLTUNE nos 100 SQLs com maior valor de ELAPSED_TIME, CPU_TIME, DISK_READS, BUFFER_GETS, DIRECT_WRITES e SORTS, já aplicando as recomendações propostas (até criação de índices).
Acho que muitos DBAs irão considerar esta implementação absurda, mas o fato é que o Oracle Database está ficando cada vez mais automático, e acho que este Script logo estará obsoleto: no 11gR2 a aceitação de novos Profiles já pode ser automática. Larguem o osso.
Para que o Script funcione, você deve ter instalado Perl, linguagem livre e grátis. Acho que todo Unix e Linux já tem Perl instalada por padrão, e no Windows pode ser instalado o ActivePerl gratuitamente. Você irá precisar também dos módulos (livrarias da Perl) DBI e DBD::Oracle. O módulo DBD::Oracle precisa ser compilado com um usuário com acesso a um ORACLE_HOME (o Instant Client é suficiente).
O Script é completamente portável para qualquer Sistema Operacional com Perl, DBI e DBD::Oracle funcionais.
Funciona em Oracle Database 10gR1 ou superior.
http://nervinformatica.com.br/Downloads/Oracle_Tuning.zip