Gerar relatórios de performance com o AWR (Automatic Workload Repository)
Para reunir dados de performance e gerar relatórios, a Oracle recomenda o AWR (Automatic Workload Repository). O AWR requer o Oracle Database Enterprise Edition e uma licença para os pacotes de Diagnóstico e Ajuste. Para ativar o AWR, defina o parâmetro de inicialização CONTROL_MANAGEMENT_PACK_ACCESS
como DIAGNOSTIC
ou DIAGNOSTIC+TUNING
.
Trabalhar com relatórios do AWR no RDS
Para gerar relatórios do AWR, é possível executar scripts como awrrpt.sql
. Esses scripts são instalados no servidor host do banco de dados. No Amazon RDS, não é possível ter acesso direto ao host. No entanto, é possível obter cópias de scripts SQL de outra instalação do Oracle Database.
Também é possível usar o AWR executando procedimentos no pacote PL/SQL SYS.DBMS_WORKLOAD_REPOSITORY
. É possível usar esse pacote para gerenciar linhas de base e snapshots e também para exibir relatórios do ASH e do AWR. Por exemplo, para gerar um relatório do AWR em formato de texto, execute o procedimento DBMS_WORKLOAD_REPOSITORY.AWR_REPORT_TEXT
. No entanto, não é possível acessar esses relatórios da AWR a partir do AWS Management Console.
Ao trabalhar com o AWR, recomendamos usar os procedimentos rdsadmin.rdsadmin_diagnostic_util
. É possível usar esses procedimentos para gerar o seguinte:
-
Relatórios do AWR
-
Relatórios do ASH (Active Session History)
-
Relatórios do ADDM (Automatic Database Diagnostic Monitor)
-
Arquivos de despejo do Oracle Data Pump Export de dados do AWR
Os procedimentos rdsadmin_diagnostic_util
salvam os relatórios no sistema de arquivos da instância de banco de dados. É possível acessar esses relatórios no console. Também é possível acessar relatórios usando os procedimentos rdsadmin.rds_file_util
e acessar relatórios copiados para o Amazon S3 usando a opção Integração do S3. Para ter mais informações, consulte Leitura de arquivos no diretório de uma instância de banco de dados e Integração do Amazon S3.
É possível usar os procedimentos rdsadmin_diagnostic_util
nas seguintes versões de mecanismo de banco de dados do Amazon RDS for Oracle:
-
Todas as versões do Oracle Database 21c
-
19.0.0.0.ru-2020-04.rur-2020-04.r1 e versões posteriores do Oracle Database 19c
Para conferir um blog que explica como trabalhar com relatórios de diagnóstico em cenários de replicação, consulte Gerar relatórios do AWR para réplicas de leitura do Amazon RDS para Oracle
Parâmetros comuns para o pacote do utilitário de diagnóstico
Normalmente, você usa os seguintes parâmetros ao gerenciar o AWR e o ADDM com o pacote rdsadmin_diagnostic_util
.
Parâmetro | Tipo de dados | Padrão | Obrigatório | Descrição |
---|---|---|---|---|
|
|
— |
Sim |
O ID do snapshot inicial. |
|
|
— |
Sim |
O ID do snapshot final. |
|
|
|
Não |
O diretório no qual gravar o relatório ou para o qual exportar o arquivo. Se você especificar um diretório não padrão, o usuário que executa os procedimentos |
|
|
— |
Não |
Uma string que pode ser usada para distinguir entre backups para indicar a finalidade ou o uso de backups, como Você pode especificar até 30 caracteres. Os caracteres válidos são As etiquetas não precisam ser exclusivas, portanto, vários backups podem ter a mesma etiqueta. Se você não especificar uma etiqueta, o RMAN atribuirá uma etiqueta padrão automaticamente usando o formato O parâmetro
|
|
|
|
Não |
O formato do relatório. Os valores válidos são |
|
|
— |
Não |
Um identificador de banco de dados (DBID) válido mostrado na visualização |
Normalmente, você usa os seguintes parâmetros ao gerenciar o ASH com o pacote rdsadmin_diagnostic_util.
Parâmetro | Tipo de dados | Padrão | Obrigatório | Descrição |
---|---|---|---|---|
|
|
— |
Sim |
A hora de início da análise do ASH. |
|
|
— |
Sim |
A hora final da análise do ASH. |
|
|
|
Não |
A duração dos slots (em segundos) usados na seção "Atividade superior" do relatório do ASH. Se esse parâmetro não for especificado, o intervalo de tempo entre |
|
|
Nulo |
Não |
O ID da sessão. |
|
|
Nulo |
Não |
O ID do SQL. |
|
|
Nulo |
Não |
O nome da classe de espera. |
|
|
Nulo |
Não |
O hash do nome do serviço. |
|
|
Nulo |
Não |
O nome do módulo. |
|
|
Nulo |
Não |
O nome da ação. |
|
|
Nulo |
Não |
O ID específico do aplicativo da sessão do banco de dados. |
|
|
Nulo |
Não |
O ponto de entrada PL/SQL. |
Gerar um relatório do AWR
Para gerar um relatório do AWR, use o procedimento rdsadmin.rdsadmin_diagnostic_util.awr_report
.
O exemplo a seguir gera um relatório do AWR para o intervalo de snapshot 101–106. O arquivo de texto de saída é chamado de awrrpt_101_106.txt
. É possível acessar esse relatório no AWS Management Console.
EXEC rdsadmin.rdsadmin_diagnostic_util.awr_report(101,106,'TEXT');
O exemplo a seguir gera um relatório HTML para o intervalo de snapshot 63–65. O arquivo HTML de saída é chamado de awrrpt_63_65.html
. O procedimento grava o relatório no diretório de banco de dados não padrão chamado de AWR_RPT_DUMP
.
EXEC rdsadmin.rdsadmin_diagnostic_util.awr_report(63,65,'HTML','AWR_RPT_DUMP');
Extrair dados do AWR em um arquivo de despejo
Para extrair dados do AWR em um arquivo de despejo, use o procedimento rdsadmin.rdsadmin_diagnostic_util.awr_extract
.
O exemplo a seguir extrai o intervalo de snapshot 101–106. O arquivo de despejo de saída é chamado de awrextract_101_106.dmp
. É possível acessar esse arquivo por meio do console.
EXEC rdsadmin.rdsadmin_diagnostic_util.awr_extract(101,106);
O exemplo a seguir extrai o intervalo de snapshot 63–65. O arquivo de despejo de saída é chamado de awrextract_63_65.dmp
. O arquivo é armazenado no diretório de banco de dados não padrão chamado de AWR_RPT_DUMP
.
EXEC rdsadmin.rdsadmin_diagnostic_util.awr_extract(63,65,'AWR_RPT_DUMP');
Gerar um relatório do ADDM
Para gerar um relatório do ADDM, use o procedimento rdsadmin.rdsadmin_diagnostic_util.addm_report
.
O exemplo a seguir gera um relatório do ADDM para o intervalo de snapshot 101–106. O arquivo de texto de saída é chamado de addmrpt_101_106.txt
. É possível acessar o relatório por meio do console.
EXEC rdsadmin.rdsadmin_diagnostic_util.addm_report(101,106);
O exemplo a seguir gera um relatório do ADDM para o intervalo de snapshot 63–65. O arquivo de texto de saída é chamado de addmrpt_63_65.txt
. O arquivo é armazenado no diretório de banco de dados não padrão chamado de ADDM_RPT_DUMP
.
EXEC rdsadmin.rdsadmin_diagnostic_util.addm_report(63,65,'ADDM_RPT_DUMP');
Gerar um relatório do ASH
Para gerar um relatório do ASH, use o procedimento rdsadmin.rdsadmin_diagnostic_util.ash_report
.
O exemplo a seguir gera um relatório do ASH que inclui os dados de 14 minutos atrás até a hora atual. O nome do arquivo de saída usa o formato ashrpt
, onde begin_time
end_time
.txt
e begin_time
usam o formato end_time
YYYYMMDDHH24MISS
. É possível acessar o arquivo por meio do console.
BEGIN rdsadmin.rdsadmin_diagnostic_util.ash_report( begin_time => SYSDATE-14/1440, end_time => SYSDATE, report_type => 'TEXT'); END; /
O exemplo a seguir gera um relatório do ASH que inclui os dados de 18 de novembro de 2019 às 18:07 a 18 de novembro de 2019 às 18h15. O nome do relatório HTML de saída é ashrpt_20190918180700_20190918181500.html
. O relatório é armazenado no diretório de banco de dados não padrão chamado de AWR_RPT_DUMP
.
BEGIN rdsadmin.rdsadmin_diagnostic_util.ash_report( begin_time => TO_DATE('2019-09-18 18:07:00', 'YYYY-MM-DD HH24:MI:SS'), end_time => TO_DATE('2019-09-18 18:15:00', 'YYYY-MM-DD HH24:MI:SS'), report_type => 'html', dump_directory => 'AWR_RPT_DUMP'); END; /
Acessar relatórios do AWR no console ou na CLI
Para acessar relatórios do AWR ou exportar arquivos de despejo, é possível usar o AWS Management Console ou a AWS CLI. Para ter mais informações, consulte Como baixar um arquivo de log de banco de dados.