

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à.

# Script di supporto per la diagnostica Oracle
<a name="CHAP_SupportScripts.Oracle"></a>

Di seguito, puoi trovare gli script di supporto diagnostico disponibili per analizzare un database locale o Amazon RDS for Oracle nella tua configurazione di migrazione. AWS DMS Questi script funzionano con un endpoint di origine o di destinazione e sono tutti scritti per essere eseguiti nell'utilità della linea di comando SQL\*Plus. Per ulteriori informazioni sull'utilizzo di questa utilità, consulta [A Using SQL Command Line](https://docs.oracle.com/cd/B25329_01/doc/appdev.102/b25108/xedev_sqlplus.htm) nella documentazione di Oracle.

Prima di eseguire lo script, assicurati che l'account utente in uso disponga delle autorizzazioni necessarie per accedere al database Oracle. Le impostazioni delle autorizzazioni mostrate presuppongono che l'utente sia stato creato come segue.

```
CREATE USER {{script_user}} IDENTIFIED BY {{password}};
```

Per un database on-premise, imposta per `{{script_user}}` le autorizzazioni minime come illustrato di seguito.

```
GRANT CREATE SESSION TO {{script_user}};
GRANT SELECT on V$DATABASE to {{script_user}};
GRANT SELECT on V$VERSION to {{script_user}};
GRANT SELECT on GV$SGA to {{script_user}};
GRANT SELECT on GV$INSTANCE to {{script_user}};
GRANT SELECT on GV$DATAGUARD_CONFIG to {{script_user}};
GRANT SELECT on GV$LOG to {{script_user}};
GRANT SELECT on DBA_TABLESPACES to {{script_user}};
GRANT SELECT on DBA_DATA_FILES to {{script_user}};
GRANT SELECT on DBA_SEGMENTS to {{script_user}};
GRANT SELECT on DBA_LOBS to {{script_user}};
GRANT SELECT on V$ARCHIVED_LOG to {{script_user}};
GRANT SELECT on DBA_TAB_MODIFICATIONS to {{script_user}};
GRANT SELECT on DBA_TABLES to {{script_user}};
GRANT SELECT on DBA_TAB_PARTITIONS to {{script_user}};
GRANT SELECT on DBA_MVIEWS to {{script_user}};
GRANT SELECT on DBA_OBJECTS to {{script_user}};
GRANT SELECT on DBA_TAB_COLUMNS to {{script_user}};
GRANT SELECT on DBA_LOG_GROUPS to {{script_user}};
GRANT SELECT on DBA_LOG_GROUP_COLUMNS to {{script_user}};
GRANT SELECT on V$ARCHIVE_DEST to {{script_user}};
GRANT SELECT on DBA_SYS_PRIVS to {{script_user}};
GRANT SELECT on DBA_TAB_PRIVS to {{script_user}};
GRANT SELECT on DBA_TYPES to {{script_user}};
GRANT SELECT on DBA_CONSTRAINTS to {{script_user}};
GRANT SELECT on V$TRANSACTION to {{script_user}};
GRANT SELECT on GV$ASM_DISK_STAT to {{script_user}};
GRANT SELECT on GV$SESSION to {{script_user}};
GRANT SELECT on GV$SQL to {{script_user}};
GRANT SELECT on DBA_ENCRYPTED_COLUMNS to {{script_user}};
GRANT SELECT on DBA_PDBS to {{script_user}};

GRANT EXECUTE on dbms_utility to {{script_user}};
```

Per un database Amazon RDS, imposta le autorizzazioni minime come illustrato di seguito.

```
GRANT CREATE SESSION TO {{script_user}};
exec rdsadmin.rdsadmin_util.grant_sys_object('V_$DATABASE','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('V_$VERSION','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('GV_$SGA','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('GV_$INSTANCE','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('GV_$DATAGUARD_CONFIG','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('GV_$LOG','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TABLESPACES','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_DATA_FILES','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_SEGMENTS','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_LOBS','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('V_$ARCHIVED_LOG','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TAB_MODIFICATIONS','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TABLES','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TAB_PARTITIONS','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_MVIEWS','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_OBJECTS','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TAB_COLUMNS','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_LOG_GROUPS','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_LOG_GROUP_COLUMNS','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('V_$ARCHIVE_DEST','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_SYS_PRIVS','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TAB_PRIVS','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TYPES','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_CONSTRAINTS','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('V_$TRANSACTION','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('GV_$ASM_DISK_STAT','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('GV_$SESSION','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('GV_$SQL','{{script_user}}','SELECT');
exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_ENCRYPTED_COLUMNS','{{script_user}}','SELECT');

exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_PDBS','{{script_user}}','SELECT');

exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_UTILITY','{{script_user}}','EXECUTE');
```

Di seguito sono riportate le indicazioni per scaricare, rivedere ed eseguire ogni script di supporto SQL\*Plus disponibile per Oracle. Viene anche descritto in che modo puoi esaminare e caricare l'output nel tuo caso del Supporto AWS .

**Topics**
+ [Script awsdms\_support\_collector\_oracle.sql](#CHAP_SupportScripts.Oracle.Awsdms_Support_Collector_Oracle_Script)

## Script awsdms\_support\_collector\_oracle.sql
<a name="CHAP_SupportScripts.Oracle.Awsdms_Support_Collector_Oracle_Script"></a>

Scarica lo script [https://d2pwp9zz55emqw.cloudfront.net/scripts/awsdms_support_collector_oracle.sql](https://d2pwp9zz55emqw.cloudfront.net/scripts/awsdms_support_collector_oracle.sql).

Questo script raccoglie informazioni sulla configurazione del database Oracle. Ricordati di controllare il checksum dello script e, se il checksum esegue la verifica, esamina il codice SQL contenuto nello script per commentare le parti che non desideri eseguire. Una volta che l'integrità e il contenuto sono validi, puoi eseguire lo script.

**Per eseguire lo script e caricare i risultati nel caso di supporto**

1. Esegui lo script dall'ambiente di database utilizzando la seguente linea di comando SQL\*Plus.

   ```
   SQL> @awsdms_support_collector_oracle.sql
   ```

   Lo script visualizza una breve descrizione e la richiesta di continuare o interrompere l'esecuzione. Premi [Invio] per continuare.

1. Alla successiva richiesta, immetti il nome di uno solo degli schemi che vuoi migrare.

1. Alla successiva richiesta, immetti il nome dell'utente ({{script\_user}}) che hai definito per la connessione al database.

1. Alla successiva richiesta, immetti il numero di giorni per i dati che desideri esaminare o accetta il valore predefinito. Lo script quindi raccoglie i dati specificati dal database.

   Una volta completato, lo script visualizza il nome del file HTML di output, ad esempio `dms_support_oracle-2020-06-22-13-20-39-ORCL.html`. Lo script salva questo file nella directory di lavoro.

1. Esamina il file HTML e rimuovi tutte le informazioni che non desideri condividere. Quando il codice HTML è accettabile per la condivisione, carica il file nel tuo caso AWS Support. Per ulteriori informazioni sul caricamento del file, consulta [Utilizzo degli script di supporto diagnostico in AWS DMS](CHAP_SupportScripts.md).