Realização de tarefas comuns relacionadas ao log para instâncias de banco de dados Oracle
Veja a seguir como executar determinadas tarefas comuns de DBA relacionadas ao registro em log nas instâncias de bancos de dados do Amazon RDS que executam o Oracle. Para oferecer uma experiência de serviço gerenciado, o Amazon RDS não fornece acesso ao shell para instâncias de bancos de dados e restringe o acesso a determinados procedimentos e tabelas do sistema que exigem privilégios avançados.
Para obter mais informações, consulte Arquivos de log do banco de dados do Amazon RDS para Oracle.
Tópicos
Definição do registro em log forçado
No modo de registro em log forçado, o Oracle registra todas as alterações no banco de dados, exceto as alterações em espaços de tabela temporários e em segmentos temporários (as cláusulas NOLOGGING
são ignoradas). Para obter mais informações, consulte Specifying FORCE LOGGING mode
Para definir o registro em log forçado, use o procedimento rdsadmin.rdsadmin_util.force_logging
do Amazon RDS. O procedimento force_logging
tem os seguintes parâmetros.
Nome do parâmetro | Tipo de dados | Padrão | Sim | Descrição |
---|---|---|---|---|
|
booliano |
true |
Não |
Defina como |
O exemplo a seguir coloca o banco de dados no modo de registro em log forçado.
EXEC rdsadmin.rdsadmin_util.force_logging(p_enable =>
true
);
Definição do registro em log complementar
Se você habilitar o registro em log suplementar, o LogMiner terá as informações necessárias para oferecer suporte a linhas encadeadas e tabelas clusterizadas. Para obter mais informações, consulte Supplemental logging
Por padrão, o banco de dados Oracle não habilita o registro em log complementar. Para habilitar e desabilitar o registro em log complementar, use o procedimento rdsadmin.rdsadmin_util.alter_supplemental_logging
do Amazon RDS. Para obter mais informações sobre como o Amazon RDS gerencia a retenção de logs redo arquivados para instâncias de bancos de dados Oracle, consulte Retenção de logs redo arquivados.
O procedimento alter_supplemental_logging
tem os seguintes parâmetros.
Nome do parâmetro | Tipo de dados | Padrão | Obrigatório | Descrição |
---|---|---|---|---|
|
varchar2 |
— |
Sim |
|
|
varchar2 |
nulo |
Não |
O tipo de registro em log complementar. Os valores válidos são |
O exemplo a seguir habilita o registro em log complementar.
begin rdsadmin.rdsadmin_util.alter_supplemental_logging( p_action => '
ADD
'); end; /
O exemplo a seguir habilita o registro em log complementar para todas as colunas de tamanho máximo com comprimento fixo.
begin rdsadmin.rdsadmin_util.alter_supplemental_logging( p_action => '
ADD
', p_type => 'ALL
'); end; /
O exemplo a seguir habilita o registro em log complementar para colunas de chave primária.
begin rdsadmin.rdsadmin_util.alter_supplemental_logging( p_action => '
ADD
', p_type => 'PRIMARY KEY
'); end; /
Alternância de arquivos de log online
Para alternar arquivos de log, use o procedimento rdsadmin.rdsadmin_util.switch_logfile
do Amazon RDS. O procedimento switch_logfile
não tem parâmetros.
O exemplo a seguir alterna arquivos de log.
EXEC rdsadmin.rdsadmin_util.switch_logfile;
Adição de logs redo online
Uma instância de banco de dados do Amazon RDS executando o Oracle começa com quatro logs redo online, cada um com 128 MB. Para adicionar mais logs redo, use o procedimento rdsadmin.rdsadmin_util.add_logfile
do Amazon RDS.
O procedimento add_logfile
tem os seguintes parâmetros.
nota
Os parâmetros são mutuamente exclusivos.
Nome do parâmetro | Tipo de dados | Padrão | Obrigatório | Descrição |
---|---|---|---|---|
|
positivo |
nulo |
Não |
O tamanho do arquivo de log em bytes. Use esse parâmetro somente se o tamanho do log for inferior a 2.147.483.648 bytes (2 GiB). Caso contrário, o RDS emitirá um erro. Entretanto, para tamanhos de log acima desse valor em bytes, use o parâmetro |
|
varchar2 |
— |
Sim |
O tamanho do arquivo de log em quilobytes (K), megabytes (M) ou gigabytes (G). |
O comando a seguir adiciona um arquivo de log de 100 MB.
EXEC rdsadmin.rdsadmin_util.add_logfile(p_size => '
100M
');
Descarte de logs redo online
Para descartar logs redo, use o procedimento rdsadmin.rdsadmin_util.drop_logfile
do Amazon RDS. O procedimento drop_logfile
tem os seguintes parâmetros.
Nome do parâmetro | Tipo de dados | Padrão | Obrigatório | Descrição |
---|---|---|---|---|
|
positivo |
— |
Sim |
O número do grupo do log. |
O exemplo a seguir descarta o log com o número de grupo 3.
EXEC rdsadmin.rdsadmin_util.drop_logfile(grp =>
3
);
Você só pode descartar logs que tenham um status de não utilizado ou inativo. O exemplo a seguir obtém os status dos logs.
SELECT GROUP#, STATUS FROM V$LOG; GROUP# STATUS ---------- ---------------- 1 CURRENT 2 INACTIVE 3 INACTIVE 4 UNUSED