View a markdown version of this page

Esecuzione di controlli preliminari di aggiornamento delle versioni secondarie in Amazon RDS for Oracle - Amazon Relational Database Service

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Esecuzione di controlli preliminari di aggiornamento delle versioni secondarie in Amazon RDS for Oracle

Prima di eseguire un aggiornamento della versione secondaria del database, Amazon RDS for Oracle verifica che l'istanza DB sia in uno stato che consenta il completamento dell'aggiornamento. Se un controllo rileva un problema, l'aggiornamento non può procedere finché non lo risolvi.

È possibile eseguire questi controlli autonomamente in qualsiasi momento senza avviare un aggiornamento. In questo modo, è possibile individuare e risolvere i problemi prima della finestra di manutenzione. Per eseguire i controlli, utilizza la procedura rdsadmin.rdsadmin_precheck_tasks.precheck_minor_upgrade Amazon RDS. Il precontrollo è di sola lettura. Non modifica i tuoi dati o la tua configurazione.

La procedura restituisce un ID attività. Il precontrollo scrive i risultati in un file di registro denominato dbtask-task_id.log nella directory BDUMP. Per scaricare il file di registro, vedere. Download di un file di log di database

Nota

Esegui il precontrollo sull'istanza DB principale. L'esecuzione dei precontrolli su una replica di lettura non è supportata.

Esecuzione di un precontrollo preliminare di aggiornamento di una versione secondaria

Per verificare se l'istanza DB è pronta per l'aggiornamento di una versione secondaria del database, esegui la procedurardsadmin.rdsadmin_precheck_tasks.precheck_minor_upgrade. La procedura non richiede parametri. La seguente query avvia il precontrollo e restituisce l'ID dell'attività.

SQL> SELECT rdsadmin.rdsadmin_precheck_tasks.precheck_minor_upgrade() AS task_id FROM DUAL; TASK_ID ------------------ 1784924903020-9

È inoltre possibile memorizzare l'ID dell'attività in una variabile client SQL e utilizzare la variabile in altre istruzioni.

SQL> VAR task_id VARCHAR2(80); SQL> EXEC :task_id := rdsadmin.rdsadmin_precheck_tasks.precheck_minor_upgrade(); PL/SQL procedure successfully completed.

Il precontrollo viene eseguito in background. È terminato quando l'ultima riga del registro è The task finished successfully. o The task failed.

Visualizzazione dei risultati del precontrollo

Per leggere il file di log, esegui la procedura rdsadmin.rds_file_util.read_text_file Amazon RDS. Includi l'ID dell'attività nel nome del file. L'esempio seguente mostra un precontrollo in cui nessun controllo ha rilevato un problema.

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.

Per elencare i file nella directory BDUMP, esegui la seguente query.

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

Per ulteriori informazioni sulla procedurardsadmin.rds_file_util.read_text_file, vedereLettura dei file in una directory di istanze database.

Interpretazione dei risultati del precontrollo

Il registro contiene una CHECK: riga per ogni controllo, seguita da una Summary: riga e una Result: riga. I controlli eseguiti dipendono dalla versione del motore, dall'architettura del database e dalla configurazione dell'istanza DB. Ogni controllo riporta uno dei seguenti risultati.

PASSED

Il controllo non ha rilevato alcun problema.

FAILED [BLOCKER]

Il controllo ha rilevato un problema che è necessario risolvere prima dell'aggiornamento della versione secondaria del DB. La riga descrive il problema e cosa fare.

WARN

Il controllo ha rilevato qualcosa che dovresti esaminare. Un avviso non blocca l'aggiornamento.

SKIPPED

Il controllo non si applica alla tua istanza DB. La riga indica il motivo.

ERROR

Il controllo non è riuscito a terminare. Esegui nuovamente il precontrollo.

Ogni controllo viene eseguito, anche quando un controllo precedente ha esito negativo, quindi una esecuzione riporta tutti i problemi rilevati dal precontrollo. Se qualche controllo riporta FAILED [BLOCKER] oERROR, viene visualizzato Result: FAILED il registro. Altrimenti, si vedeResult: PASSED.

L'esempio seguente mostra un precontrollo che ha rilevato un 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.

Risolvi ogni problema segnalato dal registro, quindi esegui nuovamente il precontrollo per confermare che l'istanza DB abbia esito positivo.

Cosa controlla il precontrollo

La tabella seguente elenca ogni controllo e la condizione che lo rende negativo. Quando un controllo ha esito negativo, la riga corrispondente nel registro descrive il problema e come risolverlo.

Verifica Fallisce quando
FreeStorageSpace L'istanza DB ha meno di 768 MB di spazio di archiviazione gratuito.
SystemTablespace Il SYSAUX tablespace SYSTEM or ha meno di 300 MB di spazio libero o non è estensibile automaticamente. Per un CDB, il precheck controlla ogni contenitore.
AuditTablespace La tablespace di controllo ha meno di 300 MB di spazio libero o non è estensibile automaticamente.
RedoApplyLag Il ritardo di ripetizione dell'applicazione di una replica di lettura è superiore a 5 minuti. Ignorato se l'istanza DB non ha repliche di lettura.
MdsysUser L'MDSYSutente non lo è. Oracle-maintained
ConflictingSynonyms I sinonimi utilizzano nomi riservati dalla nuova versione di Oracle.
WorkspaceManager Esistono oggetti Workspace Manager (WMSYS).
SchemaVersionRegistry Una o più SCHEMA_VERSION_REGISTRY viste non sono valide.
XmlDbSchema Uno o più oggetti dello schema XML DB non sono validi.
ApexStatus Il componente APEX non è in uno VALID stato.
CtxsysSequences Lo CTXSYS schema non ha le 3 sequenze di Oracle Text (DR_ID_SEQ,MESG_ID_SEQ,THS_SEQ). Ignorato per un CDB.
InvalidSystemObjects Oracle-maintained gli oggetti non sono validi.
InvalidTriggers I trigger non sono validi.
PendingDistributedTransactions Le transazioni distribuite sono irrisolte.

Quando eseguire il precontrollo

Alcune condizioni cambiano nel tempo, come lo spazio di archiviazione gratuito e il ritardo della replica in lettura. Esegui il precontrollo poco prima dell'aggiornamento. Se l'istanza DB utilizza aggiornamenti automatici delle versioni secondarie, esegui il precontrollo dopo aver ricevuto la notifica di manutenzione in sospeso e prima della finestra di manutenzione.

Se apporti una modifica che influisce su una condizione verificata, esegui nuovamente il precontrollo. Ad esempio, eseguilo di nuovo dopo aver aggiunto spazio di archiviazione, modificato un tablespace, eliminato o ricompilato oggetti o risolto transazioni distribuite. Le modifiche che non influiscono su queste condizioni non modificano il risultato. Ad esempio, l'esecuzione di un backup o la modifica della classe dell'istanza DB non modifica il risultato.

Nota

Il precontrollo esegue i controlli per la versione corrente del motore. Non include i controlli che dipendono dalla versione a cui si esegue l'aggiornamento.