Como utilizar o eDB360?

No último Guob Tech Day tive a honra de participar da palestra do Sr. Carlos Sierra sobre a ferramenta que ele e alguns outros DBAs da Enkitec desenvolveram.
O eDB360 é uma ferramenta para auxiliar na análise de desempenho do banco de dados e para executá-lo não é necessário instalar nada no banco de dados, basta possuir privilégios de leitura às views do dicionário de dados. eDB360 significa Enkitec’s Oracle Database 360-degree View.

edb360

O objetivo aqui é abordar rapidamente a execução do eDB360. Caso queira saber um pouco mais sobre a ferramenta assista a palestra na íntegra neste link.

A role SELECT_CATALOG_ROLE é suficiente para a execução do eDB360. Para a execução mais simples do eDB360 você precisa fornecer somente as credenciais de acesso ao banco de dados e se o banco de dados possui os recursos do Diagnostic ou Tuning Pack.
Para fazer download da ferramenta acesse diretamente o link de download em: https://github.com/carlos-sierra/edb360/archive/master.zip. Constantemente a equipe atualiza esta ferramenta, então é importante se informar de novas versões.
Vamos fazer um teste de execução. Primeiramente vou criar um usuário no meu database root e conceder a role SELECT_CATALOG_ROLE (no arquivo README.txt tem mais informações):

SQL> conn / as sysdba
Connected.

SQL> create user c##lore identified by data;

User created.

SQL> grant create session to c##lore;

Grant succeeded.

SQL> grant select_catalog_role to c##lore;

Grant succeeded.

Agora vou me conectar com o usuário LORE recém criado, executar o script edb360.sql e passar a opção T para informar que tenho o Tuning Pack:

SQL> conn c##lore/data
Connected.
SQL> @edb360.sql

PL/SQL procedure successfully completed.

If eDB360 disconnects right after this message it means the user executing it
owns a table called PLAN_TABLE that is not the Oracle seeded GTT plan table
owned by SYS (PLAN_TABLE$ table with a PUBLIC synonym PLAN_TABLE).
eDB360 requires the Oracle seeded PLAN_TABLE, consider dropping the one in this schema.
old  14:   IF SUBSTR(l_version, 1, 2) != SUBSTR('&&_o_release.', 1, 2) THEN
new  14:   IF SUBSTR(l_version, 1, 2) != SUBSTR('1201000200', 1, 2) THEN

PL/SQL procedure successfully completed.


Parameter 1:
If your Database is licensed to use the Oracle Tuning pack please enter T.
If you have a license for Diagnostics pack but not for Tuning pack, enter D.
If you have both Tuning and Diagnostics packs, enter T.
Be aware value N reduces the output content substantially. Avoid N if possible.

Oracle Pack License? (Tuning, Diagnostics or None) [ T | D | N ] (required)
Enter value for 1: T

Uma porção de dados será retornada na tela e a execução pode levar bastante tempo dependendo do tamanho do seu AWR.
.
.
.

No final será gerado um arquivo .zip, então é só descompactá-lo e abrir no browser o arquivo com o formato 00001_edb360_****_index.html para podermos iniciar a análise do ambiente.

Se você não tiver o Diagnostic ou o Tuning Pack não terá todas as funcionalidades da ferramenta, mas ainda assim segundo o próprio Carlos o eDB360 é compatível com o Statspack para dados históricos e com as V$ views com dados instantâneos.

Foi um breve artigo para motivar vocês a explorarem a ferramenta, pois sua execução é muito simples. A análise é que vai depender de vocês!

 

Bom proveito. Se gostou deixa um comentário e compartilha para difundir ainda mais conhecimento.

Abraços,

Franky