

# Execução de verificações prévias à atualização de versão secundária no Amazon RDS para Oracle
<a name="USER_UpgradeDBInstance.Oracle.Precheck"></a>

Antes de realizar uma atualização de versão secundária do banco de dados, o Amazon RDS para Oracle verifica se a instância de banco de dados está em um estado que permite concluir a atualização. Se uma verificação identificar um problema, não será possível prosseguir com a atualização até que ele seja corrigido.

É possível executar essas verificações a qualquer momento, sem iniciar uma atualização. Dessa forma, é possível identificar e corrigir problemas antes da janela de manutenção. Para executar as verificações, use o procedimento `rdsadmin.rdsadmin_precheck_tasks.precheck_minor_upgrade` do Amazon RDS. A verificação prévia é somente leitura. Ela não altera os dados nem a configuração.

O procedimento retorna um ID de tarefa. A verificação prévia grava os resultados em um arquivo de log chamado `dbtask-{{task_id}}.log`, no diretório BDUMP. Para baixar o arquivo de log, consulte [Como baixar um arquivo de log de banco de dados](USER_LogAccess.Procedural.Downloading.md).

**nota**  
Execute a verificação prévia na instância de banco de dados primária. Não há suporte para a execução de verificações prévias em uma réplica de leitura.

**Topics**
+ [Execução de uma verificação prévia à atualização de versão secundária](#USER_UpgradeDBInstance.Oracle.Precheck.Running)
+ [Visualização dos resultados da verificação prévia](#USER_UpgradeDBInstance.Oracle.Precheck.Viewing)
+ [Interpretação dos resultados da verificação prévia](#USER_UpgradeDBInstance.Oracle.Precheck.Interpreting)
+ [O que a verificação prévia verifica](#USER_UpgradeDBInstance.Oracle.Precheck.Checks)
+ [Quando executar a verificação prévia](#USER_UpgradeDBInstance.Oracle.Precheck.When)

## Execução de uma verificação prévia à atualização de versão secundária
<a name="USER_UpgradeDBInstance.Oracle.Precheck.Running"></a>

Para verificar se a instância de banco de dados está pronta para uma atualização de versão secundária do banco de dados, execute o procedimento `rdsadmin.rdsadmin_precheck_tasks.precheck_minor_upgrade`. O procedimento não recebe parâmetros. A consulta a seguir inicia a verificação prévia e retorna o ID da tarefa.

```
SQL> SELECT rdsadmin.rdsadmin_precheck_tasks.precheck_minor_upgrade() AS task_id FROM DUAL;

TASK_ID
------------------
1784924903020-9
```

Também é possível armazenar o ID da tarefa em uma variável do cliente SQL e usar essa variável em outras instruções.

```
SQL> VAR task_id VARCHAR2(80);
SQL> EXEC :task_id := rdsadmin.rdsadmin_precheck_tasks.precheck_minor_upgrade();

PL/SQL procedure successfully completed.
```

A verificação prévia é executada em segundo plano. Ela é concluída quando a última linha do log é `The task finished successfully.` ou `The task failed.`

## Visualização dos resultados da verificação prévia
<a name="USER_UpgradeDBInstance.Oracle.Precheck.Viewing"></a>

Para ler o arquivo de log, execute o procedimento `rdsadmin.rds_file_util.read_text_file` do Amazon RDS. Inclua o ID da tarefa no nome do arquivo. O exemplo a seguir mostra uma verificação prévia na qual nenhuma verificação identificou problemas.

```
SQL> SELECT * FROM TABLE(rdsadmin.rds_file_util.read_text_file('BDUMP', 'dbtask-'||:task_id||'.log'));

TEXT
-------------------------------------------------------------------------------------------------------------------------
2026-08-28 18:30:20.461 UTC [INFO ] Starting minor version upgrade precheck...
2026-08-28 18:30:20.461 UTC [INFO ] NOTE: This precheck validates against the current engine version's known checks. Target-version-specific checks (e.g., autoupgrade) are not included.
2026-08-28 18:30:20.470 UTC [INFO ] CHECK: FreeStorageSpace - PASSED
2026-08-28 18:30:20.515 UTC [INFO ] CHECK: SystemTablespace - PASSED
2026-08-28 18:30:20.523 UTC [INFO ] CHECK: AuditTablespace - PASSED
2026-08-28 18:30:20.541 UTC [INFO ] CHECK: RedoApplyLag - SKIPPED: the DB instance has no read replicas
2026-08-28 18:30:20.612 UTC [INFO ] CHECK: MdsysUser - PASSED
2026-08-28 18:30:20.688 UTC [INFO ] CHECK: ConflictingSynonyms - PASSED
2026-08-28 18:30:20.731 UTC [INFO ] CHECK: WorkspaceManager - PASSED
2026-08-28 18:30:20.790 UTC [INFO ] CHECK: SchemaVersionRegistry - PASSED
2026-08-28 18:30:20.846 UTC [INFO ] CHECK: XmlDbSchema - PASSED
2026-08-28 18:30:20.903 UTC [INFO ] CHECK: ApexStatus - PASSED
2026-08-28 18:30:20.955 UTC [INFO ] CHECK: CtxsysSequences - PASSED
2026-08-28 18:30:21.304 UTC [INFO ] CHECK: InvalidSystemObjects - PASSED
2026-08-28 18:30:21.549 UTC [INFO ] CHECK: InvalidTriggers - PASSED
2026-08-28 18:30:21.601 UTC [INFO ] CHECK: PendingDistributedTransactions - PASSED
2026-08-28 18:30:21.602 UTC [INFO ] Summary: 13 passed, 1 skipped, 0 warnings, 0 errors, 0 blockers
2026-08-28 18:30:21.602 UTC [INFO ] Result: PASSED
2026-08-28 18:30:21.602 UTC [INFO ] The task finished successfully.
```

Para listar os arquivos no diretório BDUMP, execute a consulta a seguir.

```
SELECT * FROM table(rdsadmin.rds_file_util.listdir('BDUMP')) order by mtime;
```

Consulte mais informações sobre o procedimento `rdsadmin.rds_file_util.read_text_file` em [Leitura de arquivos no diretório de uma instância de banco de dados](Appendix.Oracle.CommonDBATasks.Misc.md#Appendix.Oracle.CommonDBATasks.ReadingFiles).

## Interpretação dos resultados da verificação prévia
<a name="USER_UpgradeDBInstance.Oracle.Precheck.Interpreting"></a>

O log contém uma linha `CHECK:` para cada verificação, seguida por uma linha `Summary:` e uma linha `Result:`. As verificações executadas dependem da versão do mecanismo, da arquitetura do banco de dados e da configuração da instância de banco de dados. Cada verificação apresenta um dos seguintes resultados.

`PASSED`  
A verificação não identificou problemas.

`FAILED [BLOCKER]`  
A verificação identificou um problema que precisa ser corrigido antes da atualização de versão secundária do banco de dados. A linha descreve o problema e o que fazer para corrigi-lo.

`WARN`  
A verificação identificou algo que deve ser analisado. Um aviso não bloqueia a atualização.

`SKIPPED`  
A verificação não se aplica à instância de banco de dados. A linha informa o motivo.

`ERROR`  
Não foi possível concluir a verificação. Execute novamente a verificação prévia.

Todas as verificações são executadas, mesmo quando uma verificação anterior falha, de modo que uma única execução relata todos os problemas identificados pela verificação prévia. Se alguma verificação retornar `FAILED [BLOCKER]` ou `ERROR`, o log exibirá `Result: FAILED`. Caso contrário, exibirá `Result: PASSED`.

O exemplo a seguir mostra uma verificação prévia que identificou um problema.

```
SQL> SELECT * FROM TABLE(rdsadmin.rds_file_util.read_text_file('BDUMP', 'dbtask-'||:task_id||'.log'));

TEXT
-------------------------------------------------------------------------------------------------------------------------
2026-08-28 18:57:39.105 UTC [INFO ] Starting minor version upgrade precheck...
2026-08-28 18:57:39.105 UTC [INFO ] NOTE: This precheck validates against the current engine version's known checks. Target-version-specific checks (e.g., autoupgrade) are not included.
2026-08-28 18:57:39.112 UTC [INFO ] CHECK: FreeStorageSpace - PASSED
2026-08-28 18:57:39.125 UTC [INFO ] CHECK: SystemTablespace - PASSED
2026-08-28 18:57:39.133 UTC [INFO ] CHECK: AuditTablespace - PASSED
2026-08-28 18:57:39.150 UTC [INFO ] CHECK: RedoApplyLag - SKIPPED: the DB instance has no read replicas
2026-08-28 18:57:39.221 UTC [INFO ] CHECK: MdsysUser - PASSED
2026-08-28 18:57:39.297 UTC [INFO ] CHECK: ConflictingSynonyms - PASSED
2026-08-28 18:57:39.340 UTC [INFO ] CHECK: WorkspaceManager - PASSED
2026-08-28 18:57:39.399 UTC [INFO ] CHECK: SchemaVersionRegistry - PASSED
2026-08-28 18:57:39.455 UTC [INFO ] CHECK: XmlDbSchema - PASSED
2026-08-28 18:57:39.512 UTC [INFO ] CHECK: ApexStatus - PASSED
2026-08-28 18:57:39.564 UTC [INFO ] CHECK: CtxsysSequences - PASSED
2026-08-28 18:57:39.913 UTC [INFO ] CHECK: InvalidSystemObjects - PASSED
2026-08-28 18:57:40.097 UTC [ERROR] CHECK: InvalidTriggers - FAILED [BLOCKER]: The DB instance has triggers that aren't valid. Fix or disable them.
2026-08-28 18:57:40.151 UTC [INFO ] CHECK: PendingDistributedTransactions - PASSED
2026-08-28 18:57:40.152 UTC [INFO ] Summary: 12 passed, 1 skipped, 0 warnings, 0 errors, 1 blocker
2026-08-28 18:57:40.152 UTC [INFO ] RDS can't upgrade the DB instance. Resolve the blockers listed above, and then try again.
2026-08-28 18:57:40.152 UTC [INFO ] Result: FAILED
2026-08-28 18:57:40.152 UTC [INFO ] The task failed.
```

Corrija cada problema relatado no log e, em seguida, execute novamente a verificação prévia para confirmar que a instância de banco de dados foi aprovada.

## O que a verificação prévia verifica
<a name="USER_UpgradeDBInstance.Oracle.Precheck.Checks"></a>

A tabela a seguir lista cada verificação e a condição que faz com que ela falhe. Quando uma verificação falha, a linha correspondente no log descreve o problema e como corrigi-lo.



| Verificar | Falha quando | 
| --- | --- | 
| FreeStorageSpace | A instância de banco de dados tem menos de 768 MB de armazenamento livre. | 
| SystemTablespace | O espaço livre na tablespace SYSTEM ou SYSAUX é inferior a 300 MB, ou a tablespace não permite extensão automática. Para um CDB, a verificação prévia verifica cada contêiner. | 
| AuditTablespace | O espaço livre na tablespace de auditoria é inferior a 300 MB, ou a tablespace não permite extensão automática. | 
| RedoApplyLag | O atraso na aplicação de redo de uma réplica de leitura é superior a cinco minutos. Ignorada se a instância de banco de dados não tiver réplicas de leitura. | 
| MdsysUser | O usuário MDSYS não é mantido pela Oracle. | 
| ConflictingSynonyms | Os sinônimos usam nomes reservados pela nova versão do Oracle. | 
| WorkspaceManager | Existem objetos do Workspace Manager (WMSYS). | 
| SchemaVersionRegistry | Uma ou mais visualizações SCHEMA\_VERSION\_REGISTRY são inválidas. | 
| XmlDbSchema | Um ou mais objetos de esquema do XML DB são inválidos. | 
| ApexStatus | O componente APEX não está no estado VALID. | 
| CtxsysSequences | O esquema CTXSYS não contém as três sequências do Oracle Text (DR\_ID\_SEQ, MESG\_ID\_SEQ, THS\_SEQ). Ignorada para um CDB. | 
| InvalidSystemObjects | Os objetos mantidos pela Oracle são inválidos. | 
| InvalidTriggers | Os gatilhos são inválidos. | 
| PendingDistributedTransactions | Há transações distribuídas não resolvidas. | 

## Quando executar a verificação prévia
<a name="USER_UpgradeDBInstance.Oracle.Precheck.When"></a>

Algumas condições mudam com o tempo, como o armazenamento livre e o atraso das réplicas de leitura. Execute a verificação prévia pouco antes de fazer a atualização. Se a instância de banco de dados usar atualizações automáticas de versões secundárias, execute a verificação prévia após receber a notificação de manutenção pendente e antes da janela de manutenção.

Se você fizer uma alteração que afete uma condição verificada, execute a verificação prévia novamente. Por exemplo, execute-a novamente após adicionar armazenamento, alterar uma tablespace, excluir ou recompilar objetos ou resolver transações distribuídas. Alterações que não afetam essas condições não alteram o resultado. Por exemplo, fazer um backup ou alterar a classe da instância de banco de dados não altera o resultado.

**nota**  
A verificação prévia executa as verificações para a versão atual do mecanismo. Ela não inclui verificações que dependem da versão para a qual você está fazendo a atualização.