

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

# Migrazione da Oracle Database ad Amazon RDS for Oracle con AWS Schema Conversion Tool
<a name="CHAP_Source.Oracle.ToRDSOracle"></a>

Alcuni aspetti da considerare durante la migrazione dello schema e del codice Oracle ad Amazon RDS per Oracle: 
+ AWS SCT può aggiungere oggetti di directory all'albero degli oggetti. *Gli oggetti directory* sono strutture logiche che rappresentano ciascuna una directory fisica sul file system del server. È possibile utilizzare gli oggetti di directory con pacchetti come DBMS\_LOB, UTL\_FILE, DBMS\_FILE\_TRANSFER, la utility DATAPUMP e così via.
+ AWS SCT supporta la conversione di tablespace Oracle in un'istanza database Amazon RDS for Oracle. Oracle memorizza i dati logicamente in spazi tabelle e fisicamente in file di dati associati allo spazio tabella corrispondente. In Oracle è possibile creare spazi tabella con i nomi dei file di dati. Amazon RDS supporta Oracle Managed Files (OMF) solo per file di dati, file di log e file di controllo. AWS SCT crea i file di dati necessari durante la conversione.
+ AWS SCT può convertire ruoli e privilegi a livello di server. Il motore di database Oracle utilizza la protezione basata sui ruoli. Un ruolo è una raccolta di privilegi che è possibile concedere o revocare a un utente. Un ruolo predefinito in Amazon RDS, denominato DBA, normalmente consente tutti i privilegi di amministrazione a un motore di database Oracle. I seguenti privilegi non sono disponibili per il ruolo DBA su un'istanza database di Amazon RDS utilizzando il motore Oracle:
  + Alter di database
  + Alter system
  + Creazione di una directory
  + Concessione di qualsiasi privilegio
  + Concessione di qualsiasi ruolo
  + Creazione di un processo esterno

  È possibile concedere tutti gli altri privilegi a un ruolo utente Amazon RDS per Oracle, tra cui il filtro avanzato e i privilegi di colonna.
+ AWS SCT supporta la conversione dei job Oracle in job eseguibili su Amazon RDS for Oracle. La conversione presenta alcuni limiti, inclusi i seguenti:
  + I processi eseguibili non sono supportati.
  + I processi di pianificazione che utilizzano il tipo di dati ANYDATA come un argomento non sono supportati.
+ One Node RAC (Real Application Cluster) Oracle è un'opzione disponibile per Oracle Database Enterprise Edition che è stata introdotta con Oracle Database 11g Release 2. Amazon RDS per Oracle non supporta la caratteristica RAC. Per alta disponibilità, utilizzare Amazon RDS Implementazioni Multi-AZ. 

  In un'implementazione Multi-AZ, Amazon RDS effettua automaticamente il provisioning e mantiene una replica standby sincrona in un'altra zona di disponibilità. L'istanza database principale viene replicata in modo sincrono tra le zone di disponibilità in una replica di standby. Questa funzionalità fornisce ridondanza dei dati, elimina i I/O blocchi e riduce al minimo i picchi di latenza durante i backup di sistema.
+ Oracle Spatial offre uno schema SQL e funzioni che semplificano le operazioni di storage, recupero, aggiornamento ed esecuzione di query per le raccolte di dati spaziali in un database Oracle. Oracle Locator offre funzionalità che sono solitamente richieste per il supporto di applicazioni Internet e wireless basate su servizi e di soluzioni GIS basate su partner. Oracle Locator è un sottoinsieme limitato di Oracle Spatial.

  Per utilizzare le funzionalità di Oracle Spatial e Oracle Locator aggiungi l'opzione SPATIAL o l'opzione LOCATOR (che si escludono reciprocamente) al gruppo di opzioni dell'istanza database.

  Esistono alcuni requisiti preliminari per l'utilizzo di Oracle Spatial e Oracle Locator su un'istanza database di Amazon RDS per Oracle:
  + L'istanza deve utilizzare la versione Oracle Enterprise Edition 12.1.0.2.v6 o successiva oppure 11.2.0.4.v10 o successiva.
  + L'istanza deve essere all'interno di un cloud privato virtuale (VPC).
  + L'istanza deve avere la classe dell'istanza database che può supportare la funzionalità Oracle. Ad esempio, Oracle Spatial non è supportato per le classi di istanza database db.m1.small, db.t1.micro, db.t2.micro o db.t2.small. [Per ulteriori informazioni, consulta Supporto delle classi di istanze DB per Oracle.](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Oracle.html#Oracle.Concepts.InstanceClasses)
  + L'istanza deve avere l'opzione Auto Minor Version Upgrade abilitata. Amazon RDS aggiorna l'istanza database al PSU Oracle più recente se esistono vulnerabilità di sicurezza con un punteggio CVSS score di 9\+ o altre vulnerabilità di sicurezza annunciate. Per ulteriori informazioni, consultare la pagina 

    [Impostazioni per le istanze di Oracle DB](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ModifyInstance.Oracle.html#USER_ModifyInstance.Oracle.Settings).
  + Se l'istanza DB è la versione 11.2.0.4.v10 o successiva, è necessario installare l'opzione XMLDB. Per ulteriori informazioni, consultare la pagina

    [Oracle XML DB.](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.Oracle.Options.XMLDB.html)
  + È necessaria una licenza per Oracle Spatial rilasciata da Oracle. Per ulteriori informazioni, consulta [Oracle Spatial and Graph](https://shop.oracle.com/apex/product?p1=OracleSpatialandGraph) nella documentazione Oracle.
+ Data Guard è incluso con Oracle Database Enterprise Edition. Per alta disponibilità, utilizzare la caratteristica Amazon RDS Implementazioni Multi-AZ. 

  In un'implementazione Multi-AZ, Amazon RDS effettua automaticamente il provisioning e mantiene una replica standby sincrona in un'altra zona di disponibilità. L'istanza database principale viene replicata in modo sincrono tra le zone di disponibilità in una replica di standby. Questa funzionalità fornisce ridondanza dei dati, elimina i I/O blocchi e riduce al minimo i picchi di latenza durante i backup di sistema.
+ AWS SCT supporta la conversione di oggetti Oracle DBMS\_SCHEDULER durante la migrazione ad Amazon RDS for Oracle. Il rapporto di AWS SCT valutazione indica se un oggetto di pianificazione può essere convertito. Per ulteriori informazioni sull'uso di oggetti di pianificazione con Amazon RDS, consulta la [ documentazione di Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.System.html#Appendix.Oracle.CommonDBATasks.ModifyScheduler).
+ Per le conversioni da Oracle ad Amazon RDS per Oracle, è supportato DB Links. Un collegamento di database è un oggetto dello schema in un database che consente di accedere agli oggetti in un altro database. Non è necessario che gli altri database siano Oracle. Tuttavia, per accedere ai database diversi da Oracle, devi utilizzare gli Oracle Heterogeneous Services.

  Dopo aver creato un link al database, è possibile utilizzarlo nelle istruzioni SQL per fare riferimento a tabelle, viste e PL/SQL oggetti nell'altro database. Per utilizzare un database link, aggiungilo `@dblink` alla tabella, alla vista o al nome PL/SQL dell'oggetto. Puoi eseguire query su una tabella o vista nell'altro database con l'istruzione SELECT. Per ulteriori informazioni sull'utilizzo dei collegamenti di database Oracle, consulta la [ documentazione di Oracle ](https://docs.oracle.com/cd/B28359_01/server.111/b28310/ds_concepts002.htm#ADMIN12083).

  Per ulteriori informazioni sull'uso dei collegamenti di database con Amazon RDS, consulta la [ documentazione di Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.Database.html#Appendix.Oracle.CommonDBATasks.DBLinks).
+ Il rapporto di AWS SCT valutazione fornisce le metriche del server per la conversione. Questi parametri sull'istanza Oracle includono quanto segue:
  + Capacità di calcolo e di memoria dell'istanza database di destinazione.
  + Funzionalità Oracle non supportate come Real Application Clusters che Amazon RDS non supporta.
  + Caricamento di lettura e scrittura su disco
  + Throughput del disco totale medio
  + Informazioni sul server quali il nome del server, il sistema operativo, il nome host e il set di caratteri.

## Privilegi per RDS for Oracle come destinazione
<a name="CHAP_Source.Oracle.ToRDSOracle.ConfigureTarget"></a>

Per migrare ad Amazon RDS for Oracle, crea un utente privilegiato del database. È possibile utilizzare il seguente esempio di codice.

```
CREATE USER {{user_name}} IDENTIFIED BY {{your_password}};

-- System privileges
GRANT DROP ANY CUBE BUILD PROCESS TO {{user_name}};
GRANT ALTER ANY CUBE TO {{user_name}};
GRANT CREATE ANY CUBE DIMENSION TO {{user_name}};
GRANT CREATE ANY ASSEMBLY TO {{user_name}};
GRANT ALTER ANY RULE TO {{user_name}};
GRANT SELECT ANY DICTIONARY TO {{user_name}};
GRANT ALTER ANY DIMENSION TO {{user_name}};
GRANT CREATE ANY DIMENSION TO {{user_name}};
GRANT ALTER ANY TYPE TO {{user_name}};
GRANT DROP ANY TRIGGER TO {{user_name}};
GRANT CREATE ANY VIEW TO {{user_name}};
GRANT ALTER ANY CUBE BUILD PROCESS TO {{user_name}};
GRANT CREATE ANY CREDENTIAL TO {{user_name}};
GRANT DROP ANY CUBE DIMENSION TO {{user_name}};
GRANT DROP ANY ASSEMBLY TO {{user_name}};
GRANT DROP ANY PROCEDURE TO {{user_name}};
GRANT ALTER ANY PROCEDURE TO {{user_name}};
GRANT ALTER ANY SQL TRANSLATION PROFILE TO {{user_name}};
GRANT DROP ANY MEASURE FOLDER TO {{user_name}};
GRANT CREATE ANY MEASURE FOLDER TO {{user_name}};
GRANT DROP ANY CUBE TO {{user_name}};
GRANT DROP ANY MINING MODEL TO {{user_name}};
GRANT CREATE ANY MINING MODEL TO {{user_name}};
GRANT DROP ANY EDITION TO {{user_name}};
GRANT CREATE ANY EVALUATION CONTEXT TO {{user_name}};
GRANT DROP ANY DIMENSION TO {{user_name}};
GRANT ALTER ANY INDEXTYPE TO {{user_name}};
GRANT DROP ANY TYPE TO {{user_name}};
GRANT CREATE ANY PROCEDURE TO {{user_name}};
GRANT CREATE ANY SQL TRANSLATION PROFILE TO {{user_name}};
GRANT CREATE ANY CUBE TO {{user_name}};
GRANT COMMENT ANY MINING MODEL TO {{user_name}};
GRANT ALTER ANY MINING MODEL TO {{user_name}};
GRANT DROP ANY SQL PROFILE TO {{user_name}};
GRANT CREATE ANY JOB TO {{user_name}};
GRANT DROP ANY EVALUATION CONTEXT TO {{user_name}};
GRANT ALTER ANY EVALUATION CONTEXT TO {{user_name}};
GRANT CREATE ANY INDEXTYPE TO {{user_name}};
GRANT CREATE ANY OPERATOR TO {{user_name}};
GRANT CREATE ANY TRIGGER TO {{user_name}};
GRANT DROP ANY ROLE TO {{user_name}};
GRANT DROP ANY SEQUENCE TO {{user_name}};
GRANT DROP ANY CLUSTER TO {{user_name}};
GRANT DROP ANY SQL TRANSLATION PROFILE TO {{user_name}};
GRANT ALTER ANY ASSEMBLY TO {{user_name}};
GRANT CREATE ANY RULE SET TO {{user_name}};
GRANT ALTER ANY OUTLINE TO {{user_name}};
GRANT UNDER ANY TYPE TO {{user_name}};
GRANT CREATE ANY TYPE TO {{user_name}};
GRANT DROP ANY MATERIALIZED VIEW TO {{user_name}};
GRANT ALTER ANY ROLE TO {{user_name}};
GRANT DROP ANY VIEW TO {{user_name}};
GRANT ALTER ANY INDEX TO {{user_name}};
GRANT COMMENT ANY TABLE TO {{user_name}};
GRANT CREATE ANY TABLE TO {{user_name}};
GRANT CREATE USER TO {{user_name}};
GRANT DROP ANY RULE SET TO {{user_name}};
GRANT CREATE ANY CONTEXT TO {{user_name}};
GRANT DROP ANY INDEXTYPE TO {{user_name}};
GRANT ALTER ANY OPERATOR TO {{user_name}};
GRANT CREATE ANY MATERIALIZED VIEW TO {{user_name}};
GRANT ALTER ANY SEQUENCE TO {{user_name}};
GRANT DROP ANY SYNONYM TO {{user_name}};
GRANT CREATE ANY SYNONYM TO {{user_name}};
GRANT DROP USER TO {{user_name}};
GRANT ALTER ANY MEASURE FOLDER TO {{user_name}};
GRANT ALTER ANY EDITION TO {{user_name}};
GRANT DROP ANY RULE TO {{user_name}};
GRANT CREATE ANY RULE TO {{user_name}};
GRANT ALTER ANY RULE SET TO {{user_name}};
GRANT CREATE ANY OUTLINE TO {{user_name}};
GRANT UNDER ANY TABLE TO {{user_name}};
GRANT UNDER ANY VIEW TO {{user_name}};
GRANT DROP ANY DIRECTORY TO {{user_name}};
GRANT ALTER ANY CLUSTER TO {{user_name}};
GRANT CREATE ANY CLUSTER TO {{user_name}};
GRANT ALTER ANY TABLE TO {{user_name}};
GRANT CREATE ANY CUBE BUILD PROCESS TO {{user_name}};
GRANT ALTER ANY CUBE DIMENSION TO {{user_name}};
GRANT CREATE ANY EDITION TO {{user_name}};
GRANT CREATE ANY SQL PROFILE TO {{user_name}};
GRANT ALTER ANY SQL PROFILE TO {{user_name}};
GRANT DROP ANY OUTLINE TO {{user_name}};
GRANT DROP ANY CONTEXT TO {{user_name}};
GRANT DROP ANY OPERATOR TO {{user_name}};
GRANT DROP ANY LIBRARY TO {{user_name}};
GRANT ALTER ANY LIBRARY TO {{user_name}};
GRANT CREATE ANY LIBRARY TO {{user_name}};
GRANT ALTER ANY MATERIALIZED VIEW TO {{user_name}};
GRANT ALTER ANY TRIGGER TO {{user_name}};
GRANT CREATE ANY SEQUENCE TO {{user_name}};
GRANT DROP ANY INDEX TO {{user_name}};
GRANT CREATE ANY INDEX TO {{user_name}};
GRANT DROP ANY TABLE TO {{user_name}};
GRANT SELECT_CATALOG_ROLE TO {{user_name}};
GRANT SELECT ANY SEQUENCE TO {{user_name}};

-- Database Links
GRANT CREATE DATABASE LINK TO {{user_name}};
GRANT CREATE PUBLIC DATABASE LINK TO {{user_name}};
GRANT DROP PUBLIC DATABASE LINK TO {{user_name}};


-- Server Level Objects (directory)
GRANT CREATE ANY DIRECTORY TO {{user_name}};
GRANT DROP ANY DIRECTORY TO {{user_name}};
-- (for RDS only)
GRANT EXECUTE ON RDSADMIN.RDSADMIN_UTIL TO {{user_name}};

-- Server Level Objects (tablespace)
GRANT CREATE TABLESPACE TO {{user_name}};
GRANT DROP TABLESPACE TO {{user_name}};

-- Server Level Objects (user roles)
/* (grant source privileges with admin option or convert roles/privs as DBA) */

-- Queues
grant execute on DBMS_AQADM to {{user_name}};
grant aq_administrator_role to {{user_name}};

-- for Materialized View Logs creation
GRANT SELECT ANY TABLE TO {{user_name}};

-- Roles
GRANT RESOURCE TO {{user_name}};
GRANT CONNECT TO {{user_name}};
```

Nell'esempio precedente, sostituiscilo {{user\_name}} con il nome dell'utente. Quindi, {{your\_password}} sostituiscilo con una password sicura.

## Limitazioni durante la conversione da Oracle ad Amazon RDS for Oracle
<a name="CHAP_Source.Oracle.ToRDSOracle.Limitations"></a>

Alcuni limiti da considerare durante la migrazione dello schema e del codice Oracle ad Amazon RDS per Oracle: 
+  Un ruolo predefinito in Amazon RDS, denominato DBA, normalmente consente tutti i privilegi di amministrazione a un motore di database Oracle. I seguenti privilegi non sono disponibili per il ruolo DBA su un'istanza database di Amazon RDS utilizzando il motore Oracle:
  + Alter di database
  + Alter system
  + Creazione di una directory
  + Concessione di qualsiasi privilegio
  + Concessione di qualsiasi ruolo
  + Creazione di un processo esterno

  È possibile concedere tutti gli altri privilegi a un ruolo utente Oracle RDS.
+ Amazon RDS for Oracle supporta il controllo tradizionale, il controllo granulare tramite il pacchetto DBMS\_FGA e Oracle Unified Auditing.
+ Amazon RDS per Oracle non supporta la funzionalità CDC (Change Data Capture). Per eseguire CDC durante e dopo una migrazione di database, usa. AWS Database Migration Service