

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

# Utilizzo di software di terze parti con l'istanza database RDS for Oracle
<a name="Oracle.Resources"></a>

È possibile ospitare un’istanza database RDS per Oracle in grado di supportare strumenti e software di terze parti.

**Topics**
+ [Utilizzo di Oracle GoldenGate con Amazon RDS per Oracle](Appendix.OracleGoldenGate.md)
+ [Utilizzo di Oracle Repository Creation Utility in RDS for Oracle](Oracle.Resources.RCU.md)
+ [Configurazione di Oracle Connection Manager su un'istanza Amazon EC2](oracle-cman.md)
+ [Installazione di un Database Siebel in Oracle in Amazon RDS](Oracle.Resources.Siebel.md)

# Utilizzo di Oracle GoldenGate con Amazon RDS per Oracle
<a name="Appendix.OracleGoldenGate"></a>

Oracle GoldenGate raccoglie, replica e gestisce i dati transazionali tra database. È un pacchetto software con funzionalità Change Data Capture (CDC) e di replica basate su log che viene utilizzato con i database per i sistemi elaborazione di transazioni online (OLTP). Oracle GoldenGate crea file trail che contengono i dati modificati più recentemente dal database di origine. Quindi invia questi file al server, dove un processo converte il file trail in SQL standard da applicare al database di destinazione.

Oracle GoldenGate con RDS per Oracle supporta le seguenti funzionalità:
+ Replica di database attivo-attivo
+ Disaster recovery
+ Protezione dei dati
+ Replica in una regione e tra varie regioni
+ Migrazione e upgrade senza tempi di inattività
+ Replica dei dati tra un'istanza database RDS per Oracle e un database non Oracle
**Nota**  
Per l'elenco dei database supportati, consulta [Oracle Fusion Middleware Supported System Configurations](https://www.oracle.com/middleware/technologies/fusion-certification.html) (Configurazioni di sistema supportate per Oracle Fusion Middleware) nella documentazione di Oracle.

È possibile utilizzare Oracle GoldenGate con RDS for Oracle per eseguire l'aggiornamento alle versioni principali di Oracle Database. Ad esempio, puoi utilizzare Oracle per GoldenGate eseguire l'aggiornamento da un database locale Oracle Database 11g a Oracle Database 19c su un'istanza database Amazon RDS.

**Topics**
+ [Versioni e opzioni di licenza supportate per Oracle GoldenGate](#Appendix.OracleGoldenGate.licensing)
+ [Requisiti e limitazioni per Oracle GoldenGate](#Appendix.OracleGoldenGate.requirements)
+ [GoldenGate Architettura Oracle](Appendix.OracleGoldenGate.Overview.md)
+ [Configurazione di Oracle GoldenGate](Appendix.OracleGoldenGate.setting-up.md)
+ [Utilizzo delle utilità EXTRACT e REPLICAT di Oracle GoldenGate](Appendix.OracleGoldenGate.ExtractReplicat.md)
+ [Monitoraggio di Oracle GoldenGate](Appendix.OracleGoldenGate.Monitoring.md)
+ [Risoluzione dei problemi relativi a GoldenGate](Appendix.OracleGoldenGate.Troubleshooting.md)

## Versioni e opzioni di licenza supportate per Oracle GoldenGate
<a name="Appendix.OracleGoldenGate.licensing"></a>

È possibile utilizzare Standard Edition 2 (SE2) o Enterprise Edition (EE) di RDS per Oracle con Oracle GoldenGate versione 12c e successive. È possibile utilizzare le seguenti funzionalità Oracle GoldenGate :
+ Oracle GoldenGate Remote Capture (estrazione) è supportato.
+ L'acquisizione (extract) è supportata nelle istanze database RDS per Oracle che utilizzano la tradizionale architettura di database non CDB. L'acquisizione di Oracle GoldenGate Remote PDB è supportata sull' CDBs esecuzione di Oracle Database 21c o Oracle Database 19c versione 19.0.0.0.ru-2024-04.rur-2024-04.r1 o successiva.
+ Oracle GoldenGate Remote Delivery (replicat) è supportato su istanze RDS per Oracle DB che utilizzano architetture non CDB o CDB. Remote Delivery supporta Integrated Replicat, Parallel Replicat, Coordinated Replicat e Classic Replicat.
+ RDS per Oracle supporta le architetture Classic e Microservices di Oracle. GoldenGate
+ La replica dei valori Oracle GoldenGate DDL e Sequence è supportata quando si utilizza la modalità di acquisizione integrata.

Sei responsabile della gestione delle GoldenGate licenze Oracle (BYOL) da utilizzare con Amazon RDS in generale. Regioni AWS Per ulteriori informazioni, consulta [Opzioni di licenza per RDS per Oracle](Oracle.Concepts.Licensing.md).

## Requisiti e limitazioni per Oracle GoldenGate
<a name="Appendix.OracleGoldenGate.requirements"></a>

Quando lavori con Oracle GoldenGate e RDS per Oracle, considera i seguenti requisiti e limitazioni: 
+ Sei responsabile della configurazione e della gestione di Oracle GoldenGate per l'utilizzo con RDS for Oracle. 
+ Sei responsabile della configurazione di una GoldenGate versione Oracle certificata con i database di origine e di destinazione. Per ulteriori informazioni, consulta [Oracle Fusion Middleware Supported System Configurations](https://www.oracle.com/middleware/technologies/fusion-certification.html) (Configurazioni di sistema supportate per Oracle Fusion Middleware) nella documentazione di Oracle.
+ Puoi utilizzare Oracle GoldenGate in molti AWS ambienti diversi per molti casi d'uso diversi. Se hai un problema relativo al supporto relativo a Oracle GoldenGate, contatta Oracle Support Services.
+ È possibile utilizzare Oracle GoldenGate su RDS per istanze Oracle DB che utilizzano Oracle Transparent Data Encryption (TDE). Per mantenere l'integrità dei dati replicati, configura la crittografia sull' GoldenGate hub Oracle utilizzando i volumi crittografati di Amazon EBS o la crittografia dei file trail. Configura anche la crittografia per i dati inviati tra l' GoldenGate hub Oracle e le istanze del database di origine e destinazione. Le istanze database RDS for Oracle supportano la crittografia con [Oracle Secure Sockets Layer](Appendix.Oracle.Options.SSL.md) o [Oracle native network encryption](Appendix.Oracle.Options.NetworkEncryption.md).

# GoldenGate Architettura Oracle
<a name="Appendix.OracleGoldenGate.Overview"></a>

L' GoldenGate architettura Oracle da utilizzare con Amazon RDS è costituita dai seguenti moduli disaccoppiati:

Database di origine  
Il database di origine può essere un database Oracle che si trova in locale, un database Oracle su un'istanza Amazon EC2 oppure un database Oracle su un'istanza database Amazon RDS.

Hub GoldenGate Oracle  
Un GoldenGate hub Oracle sposta le informazioni sulle transazioni dal database di origine al database di destinazione. L'hub può essere uno dei seguenti:  
+ Un'istanza Amazon EC2 con Oracle Database e Oracle installati GoldenGate 
+ Un'installazione Oracle on-premise
Puoi disporre di più hub Amazon EC2. Si consiglia di utilizzare due hub se si utilizza Oracle GoldenGate per la replica tra regioni.

Database di destinazione  
Il database di destinazione può trovarsi in un'istanza database Amazon RDS, in un'istanza Amazon EC2 o in un percorso locale.

Le seguenti sezioni descrivono gli scenari comuni per Oracle GoldenGate su Amazon RDS.

**Topics**
+ [Database di origine locale e hub Oracle GoldenGate](#Appendix.OracleGoldenGate.on-prem-source-gg-hub)
+ [Database di origine on-premise e hub Amazon EC2](#Appendix.OracleGoldenGate.on-prem-source-ec2-hub)
+ [Database di origine Amazon RDS e hub Amazon EC2](#Appendix.OracleGoldenGate.rds-source-ec2-hub)
+ [Database di origine Amazon EC2 e hub Amazon EC2](#Appendix.OracleGoldenGate.ec2-source-ec2-hub)
+ [Hub Amazon EC2 in diverse regioni AWS](#Appendix.OracleGoldenGate.cross-region-hubs)

## Database di origine locale e hub Oracle GoldenGate
<a name="Appendix.OracleGoldenGate.on-prem-source-gg-hub"></a>

In questo scenario, un database di origine Oracle e un GoldenGate hub Oracle locale forniscono dati a un'istanza database Amazon RDS di destinazione. 

![\[GoldenGate Configurazione Oracle 0 con Amazon RDS\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/UserGuide/images/oracle-gg0.png)


## Database di origine on-premise e hub Amazon EC2
<a name="Appendix.OracleGoldenGate.on-prem-source-ec2-hub"></a>

In questo scenario, un database Oracle on-premise funge da database di origine. È connesso a un hub di istanze Amazon EC2. Questo hub fornisce i dati a un'istanza database RDS di destinazione per Oracle.

![\[GoldenGate Configurazione Oracle 1 con Amazon RDS\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/UserGuide/images/oracle-gg1.png)


## Database di origine Amazon RDS e hub Amazon EC2
<a name="Appendix.OracleGoldenGate.rds-source-ec2-hub"></a>

In questo scenario, un'istanza database RDS for Oracle funge da database di origine. È connesso a un hub di istanze Amazon EC2. Questo hub fornisce i dati a un'istanza database RDS di destinazione per Oracle.

![\[GoldenGate Configurazione Oracle 2 con Amazon RDS\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/UserGuide/images/oracle-gg2.png)


## Database di origine Amazon EC2 e hub Amazon EC2
<a name="Appendix.OracleGoldenGate.ec2-source-ec2-hub"></a>

In questo scenario, un database Oracle su un'istanza Amazon EC2 funge da database di origine. È connesso a un hub di istanze Amazon EC2. Questo hub fornisce i dati a un'istanza database RDS di destinazione per Oracle.

![\[GoldenGate Configurazione Oracle 3 con Amazon RDS\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/UserGuide/images/oracle-gg3.png)


## Hub Amazon EC2 in diverse regioni AWS
<a name="Appendix.OracleGoldenGate.cross-region-hubs"></a>

In questo scenario, un database Oracle su un'istanza database Amazon RDS è connesso a un hub di istanze Amazon EC2 nella AWS stessa regione. L'hub è connesso a un hub di istanze Amazon EC2 in una regione diversa AWS . Questo secondo hub fornisce dati all'istanza DB RDS for Oracle di destinazione nella stessa AWS regione del secondo hub di istanza Amazon EC2.

![\[GoldenGate Configurazione Oracle 4 con Amazon RDS\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/UserGuide/images/oracle-gg4.png)


**Nota**  
Tutti i problemi che influiscono sull'esecuzione di Oracle GoldenGate in un ambiente locale influiscono anche sull'esecuzione di Oracle GoldenGate su. AWS Si consiglia vivamente di monitorare l' GoldenGate hub Oracle per assicurarne `EXTRACT` il `REPLICAT` ripristino in caso di failover. Poiché l' GoldenGate hub Oracle viene eseguito su un'istanza Amazon EC2, Amazon RDS non gestisce l' GoldenGate hub Oracle e non può garantirne l'esecuzione.

# Configurazione di Oracle GoldenGate
<a name="Appendix.OracleGoldenGate.setting-up"></a>

Per configurare Oracle GoldenGate utilizzando Amazon RDS, configura l'hub su un'istanza Amazon EC2, quindi configura i database di origine e di destinazione. Le sezioni seguenti forniscono un esempio di come configurare Oracle GoldenGate per l'utilizzo con Amazon RDS for Oracle.

**Topics**
+ [Configurazione di un GoldenGate hub Oracle su Amazon EC2](#Appendix.OracleGoldenGate.Hub)
+ [Configurazione di un database di origine da utilizzare con Oracle GoldenGate su Amazon RDS](#Appendix.OracleGoldenGate.Source)
+ [Configurazione di un database di destinazione da utilizzare con Oracle GoldenGate su Amazon RDS](#Appendix.OracleGoldenGate.Target)

## Configurazione di un GoldenGate hub Oracle su Amazon EC2
<a name="Appendix.OracleGoldenGate.Hub"></a>

Per creare un GoldenGate hub Oracle su un'istanza Amazon EC2, devi prima creare un'istanza Amazon EC2 con un'installazione client completa di Oracle RDBMS. L'istanza Amazon EC2 deve inoltre avere installato il GoldenGate software Oracle. Le versioni del GoldenGate software Oracle dipendono dalle versioni del database di origine e di destinazione. Per ulteriori informazioni sull'installazione di Oracle GoldenGate, consulta la [ GoldenGatedocumentazione Oracle](https://docs.oracle.com/en/middleware/goldengate/core/index.html).

L'istanza Amazon EC2 che funge da GoldenGate hub Oracle archivia ed elabora le informazioni sulle transazioni dal database di origine in file trail. Per supportare questo processo, assicurati che siano soddisfatti i seguenti requisiti:
+ Sia stato allocato uno spazio di archiviazione sufficiente per i file trail.
+ L'istanza Amazon EC2 abbia una capacità di calcolo sufficiente per gestire la quantità di dati.
+ Inoltre, assicurati che l'istanza EC2 disponga di memoria sufficiente per archiviare le informazioni sulle transazioni prima che vengano scritte nel file di trail.

**Per configurare un hub di architettura GoldenGate classica Oracle su un'istanza Amazon EC2**

1. Crea sottodirectory nella directory Oracle. GoldenGate 

   Nella shell della riga di comando di Amazon EC2, start`ggsci`, l'interprete dei GoldenGate comandi Oracle. Il comando `CREATE SUBDIRS` crea le sottodirectory nella directory `/gg` per i file dei parametri, dei report e dei punti di controllo.

   ```
   prompt$ cd /gg
   prompt$ ./ggsci
   
   GGSCI> CREATE SUBDIRS
   ```

1. Configura il file `mgr.prm`.

   L'esempio seguente aggiunge le righe al file `$GGHOME/dirprm/mgr.prm`.

   ```
   PORT 8199
   PurgeOldExtracts ./dirdat/*, UseCheckpoints, MINKEEPDAYS 5
   ```

1. Avvia il manager.

   L'esempio seguente avvia `ggsci` ed esegue il comando `start mgr`.

   ```
   GGSCI> start mgr
   ```

L' GoldenGate hub Oracle è ora pronto per l'uso.

## Configurazione di un database di origine da utilizzare con Oracle GoldenGate su Amazon RDS
<a name="Appendix.OracleGoldenGate.Source"></a>

Completa le seguenti attività per configurare un database di origine da utilizzare con Oracle GoldenGate.

**Topics**
+ [Passaggio 1: attivazione della registrazione supplementare nel database di origine](#Appendix.OracleGoldenGate.Source.Logging)
+ [Passaggio 2: impostazione del parametro di inizializzazione ENABLE\$1GOLDENGATE\$1REPLICATION su true](#Appendix.OracleGoldenGate.Source.enable-gg-rep)
+ [Passaggio 3: impostazione del periodo di conservazione del log nel database di origine](#Appendix.OracleGoldenGate.Source.Retention)
+ [Fase 4: Creare un account GoldenGate utente Oracle nel database di origine](#Appendix.OracleGoldenGate.Source.Account)
+ [Passaggio 5: concessione dei privilegi all'account utente per il database di origine](#Appendix.OracleGoldenGate.Source.Privileges)
+ [Passaggio 6: aggiunta di un alias TNS per il database di origine](#Appendix.OracleGoldenGate.Source.TNS)

### Passaggio 1: attivazione della registrazione supplementare nel database di origine
<a name="Appendix.OracleGoldenGate.Source.Logging"></a>

Per attivare la registrazione supplementare minima a livello di database, esegui la seguente procedura PL/SQL: 

```
EXEC rdsadmin.rdsadmin_util.alter_supplemental_logging(p_action => 'ADD')
```

### Passaggio 2: impostazione del parametro di inizializzazione ENABLE\$1GOLDENGATE\$1REPLICATION su true
<a name="Appendix.OracleGoldenGate.Source.enable-gg-rep"></a>

Quando imposti il parametro di inizializzazione `ENABLE_GOLDENGATE_REPLICATION` su `true`, i servizi di database supportano la replica logica. Se il database di origine si trova in un'istanza database Amazon RDS, assicurati di disporre di un gruppo di parametri assegnato all'istanza database con il parametro di inizializzazione `ENABLE_GOLDENGATE_REPLICATION` impostato su `true`. Per ulteriori informazioni sul parametro di inizializzazione `ENABLE_GOLDENGATE_REPLICATION`, consulta la [documentazione di Oracle Database](https://docs.oracle.com/en/database/oracle/oracle-database/19/refrn/ENABLE_GOLDENGATE_REPLICATION.html).

### Passaggio 3: impostazione del periodo di conservazione del log nel database di origine
<a name="Appendix.OracleGoldenGate.Source.Retention"></a>

Assicurati di configurare il database di origine in modo che mantenga i log redo archiviati. Considera le linee guida seguenti:
+ Specifica il periodo di retention dei log in ore. Il valore minimo è 1 ora.
+ Imposta la durata su un valore superiore a eventuali potenziali tempi di inattività dell'istanza database di origine e a eventuali potenziali problemi relativi al periodo di comunicazione o di rete per l'istanza di origine. Tale durata consente a Oracle di GoldenGate recuperare i log dall'istanza di origine secondo necessità.
+ Assicurarsi di disporre di spazio sufficiente sulla propria istanza per i file.

Ad esempio, impostare il periodo di conservazione per i redo log archiviati su 24 ore.

```
EXEC rdsadmin.rdsadmin_util.set_configuration('archivelog retention hours',24)
```

Se non è abilitata l'opzione di conservazione dei log o il suo valore è troppo basso, riceverai un messaggio di errore simile al seguente.

```
2022-03-06 06:17:27  ERROR   OGG-00446  error 2 (No such file or directory) 
opening redo log /rdsdbdata/db/GGTEST3_A/onlinelog/o1_mf_2_9k4bp1n6_.log for sequence 1306 
Not able to establish initial position for begin time 2022-03-06 06:16:55.
```

Poiché l'istanza database mantiene i log redo archiviati, assicurati di disporre dello spazio sufficiente per i file. Per vedere quanto spazio hai utilizzato nelle ultime *num\$1hours* ore, esegui la seguente query, sostituendola *num\$1hours* con il numero di ore.

```
SELECT SUM(BLOCKS * BLOCK_SIZE) BYTES FROM V$ARCHIVED_LOG 
   WHERE NEXT_TIME>=SYSDATE-num_hours/24 AND DEST_ID=1;
```

### Fase 4: Creare un account GoldenGate utente Oracle nel database di origine
<a name="Appendix.OracleGoldenGate.Source.Account"></a>

Oracle GoldenGate funziona come utente del database e richiede i privilegi di database appropriati per accedere ai redo log e ai redo log archiviati per il database di origine. A questo scopo, crea un account utente sul database di origine. [Per ulteriori informazioni sulle autorizzazioni per un account GoldenGate utente Oracle, consulta la documentazione Oracle.](https://docs.oracle.com/en/middleware/goldengate/core/19.1/oracle-db/establishing-oracle-goldengate-credentials.html#GUID-79122058-27B0-4FB6-B3DC-B7D1B67EB053)

Le istruzioni seguenti creano un account utente denominato `oggadm1`. 

```
CREATE TABLESPACE administrator;
CREATE USER oggadm1  IDENTIFIED BY "password"
   DEFAULT TABLESPACE ADMINISTRATOR TEMPORARY TABLESPACE TEMP;
ALTER USER oggadm1 QUOTA UNLIMITED ON administrator;
```

**Nota**  
Specifica una password diversa dal prompt mostrato qui come best practice per la sicurezza.

### Passaggio 5: concessione dei privilegi all'account utente per il database di origine
<a name="Appendix.OracleGoldenGate.Source.Privileges"></a>

In questa attività, concedi i privilegi dell'account necessari agli utenti per il database di origine.

**Per concedere privilegi dell'account per il database di origine**

1. Concedi i privilegi necessari all'account GoldenGate utente Oracle utilizzando il comando SQL `grant` e la `rdsadmin.rdsadmin_util` procedura. `grant_sys_object` Le istruzioni seguenti concedono i privilegi all'utente denominato `oggadm1`.

   ```
   GRANT CREATE SESSION, ALTER SESSION TO oggadm1;
   GRANT RESOURCE TO oggadm1;
   GRANT SELECT ANY DICTIONARY TO oggadm1;
   GRANT FLASHBACK ANY TABLE TO oggadm1;
   GRANT SELECT ANY TABLE TO oggadm1;
   GRANT SELECT_CATALOG_ROLE TO rds_master_user_name WITH ADMIN OPTION;
   EXEC rdsadmin.rdsadmin_util.grant_sys_object ('DBA_CLUSTERS', 'OGGADM1');
   GRANT EXECUTE ON DBMS_FLASHBACK TO oggadm1;
   GRANT SELECT ON SYS.V_$DATABASE TO oggadm1;
   GRANT ALTER ANY TABLE TO oggadm1;
   ```

1. Concedi i privilegi necessari a un account utente per essere amministratore Oracle GoldenGate . Esegui il seguente PL/SQL programma.

   ```
   EXEC rdsadmin.rdsadmin_dbms_goldengate_auth.grant_admin_privilege (
       grantee                 => 'OGGADM1',
       privilege_type          => 'capture',
       grant_select_privileges => true, 
       do_grants               => TRUE);
   ```

   Per revocare i privilegi, utilizzare la procedura `revoke_admin_privilege` nello stesso pacchetto.

### Passaggio 6: aggiunta di un alias TNS per il database di origine
<a name="Appendix.OracleGoldenGate.Source.TNS"></a>

Aggiungi la seguente voce `$ORACLE_HOME/network/admin/tnsnames.ora` in Oracle Home che sarà utilizzata dal processo `EXTRACT`. Per ulteriori informazioni sul file `tnsnames.ora`, consulta la [documentazione di Oracle](https://docs.oracle.com/en/database/oracle/oracle-database/19/netrf/local-naming-parameters-in-tns-ora-file.html#GUID-7F967CE5-5498-427C-9390-4A5C6767ADAA).

```
OGGSOURCE=
   (DESCRIPTION= 
        (ENABLE=BROKEN)
        (ADDRESS_LIST= 
            (ADDRESS=(PROTOCOL=TCP)(HOST=goldengate-source.abcdef12345.us-west-2.rds.amazonaws.com)(PORT=8200)))
        (CONNECT_DATA=(SERVICE_NAME=ORCL))
    )
```

## Configurazione di un database di destinazione da utilizzare con Oracle GoldenGate su Amazon RDS
<a name="Appendix.OracleGoldenGate.Target"></a>

In questo task, si configura un'istanza DB di destinazione da utilizzare con Oracle GoldenGate.

**Topics**
+ [Passaggio 1: impostazione del parametro di inizializzazione ENABLE\$1GOLDENGATE\$1REPLICATION su true](#Appendix.OracleGoldenGate.Target.enable-gg-rep)
+ [Fase 2: Creare un account GoldenGate utente Oracle nel database di destinazione](#Appendix.OracleGoldenGate.Target.User)
+ [Passaggio 3: concessione dei privilegi all'account per il database di destinazione](#Appendix.OracleGoldenGate.Target.Privileges)
+ [Passaggio 4: aggiunta di un alias TNS per il database di destinazione](#Appendix.OracleGoldenGate.Target.TNS)

### Passaggio 1: impostazione del parametro di inizializzazione ENABLE\$1GOLDENGATE\$1REPLICATION su true
<a name="Appendix.OracleGoldenGate.Target.enable-gg-rep"></a>

Quando imposti il parametro di inizializzazione `ENABLE_GOLDENGATE_REPLICATION` su `true`, i servizi di database supportano la replica logica. Se il database di origine si trova in un'istanza database Amazon RDS, assicurati di disporre di un gruppo di parametri assegnato all'istanza database con il parametro di inizializzazione `ENABLE_GOLDENGATE_REPLICATION` impostato su `true`. Per ulteriori informazioni sul parametro di inizializzazione `ENABLE_GOLDENGATE_REPLICATION`, consulta la [documentazione di Oracle Database](https://docs.oracle.com/en/database/oracle/oracle-database/19/refrn/ENABLE_GOLDENGATE_REPLICATION.html).

### Fase 2: Creare un account GoldenGate utente Oracle nel database di destinazione
<a name="Appendix.OracleGoldenGate.Target.User"></a>

Oracle GoldenGate viene eseguito come utente del database e richiede i privilegi di database appropriati. A questo scopo, crea un account utente nel database di destinazione.

L'istruzione seguente crea un utente denominato `oggadm1`.

```
CREATE TABLESPSACE administrator;
CREATE USER oggadm1  IDENTIFIED BY "password" 
   DEFAULT TABLESPACE administrator 
   TEMPORARY TABLESPACE temp;
ALTER USER oggadm1 QUOTA UNLIMITED ON administrator;
```

**Nota**  
Specifica una password diversa dal prompt mostrato qui come best practice per la sicurezza.

### Passaggio 3: concessione dei privilegi all'account per il database di destinazione
<a name="Appendix.OracleGoldenGate.Target.Privileges"></a>

In questa attività, concedi i privilegi dell'account necessari agli utenti per il database di destinazione.

**Per concedere i privilegi all'account per il database di destinazione**

1. Concedi i privilegi necessari all'account GoldenGate utente Oracle sul database di destinazione. Nell'esempio seguente vengono concessi privilegi a `oggadm1`.

   ```
   GRANT CREATE SESSION        TO oggadm1;
   GRANT ALTER SESSION         TO oggadm1;
   GRANT CREATE CLUSTER        TO oggadm1;
   GRANT CREATE INDEXTYPE      TO oggadm1;
   GRANT CREATE OPERATOR       TO oggadm1;
   GRANT CREATE PROCEDURE      TO oggadm1;
   GRANT CREATE SEQUENCE       TO oggadm1;
   GRANT CREATE TABLE          TO oggadm1;
   GRANT CREATE TRIGGER        TO oggadm1;
   GRANT CREATE TYPE           TO oggadm1;
   GRANT SELECT ANY DICTIONARY TO oggadm1;
   GRANT CREATE ANY TABLE      TO oggadm1;
   GRANT ALTER ANY TABLE       TO oggadm1;
   GRANT LOCK ANY TABLE        TO oggadm1;
   GRANT SELECT ANY TABLE      TO oggadm1;
   GRANT INSERT ANY TABLE      TO oggadm1;
   GRANT UPDATE ANY TABLE      TO oggadm1;
   GRANT DELETE ANY TABLE      TO oggadm1;
   ```

1. Concedi i privilegi necessari a un account utente per essere amministratore Oracle GoldenGate . Esegui il seguente PL/SQL programma.

   ```
   EXEC rdsadmin.rdsadmin_dbms_goldengate_auth.grant_admin_privilege (
       grantee                 => 'OGGADM1',
       privilege_type          => 'apply',
       grant_select_privileges => true, 
       do_grants               => TRUE);
   ```

   Per revocare i privilegi, utilizzare la procedura `revoke_admin_privilege` nello stesso pacchetto.

### Passaggio 4: aggiunta di un alias TNS per il database di destinazione
<a name="Appendix.OracleGoldenGate.Target.TNS"></a>

Aggiungi la seguente voce `$ORACLE_HOME/network/admin/tnsnames.ora` in Oracle Home che sarà utilizzata dal processo `REPLICAT`. Per i database Oracle multitenant, assicurati che l'alias TNS punti al nome del servizio del PDB. Per ulteriori informazioni sul file `tnsnames.ora`, consulta la [documentazione di Oracle](https://docs.oracle.com/en/database/oracle/oracle-database/19/netrf/local-naming-parameters-in-tns-ora-file.html#GUID-7F967CE5-5498-427C-9390-4A5C6767ADAA).

```
OGGTARGET=
    (DESCRIPTION= 
        (ENABLE=BROKEN)
        (ADDRESS_LIST= 
            (ADDRESS=(PROTOCOL=TCP)(HOST=goldengate-target.abcdef12345.us-west-2.rds.amazonaws.com)(PORT=8200)))
        (CONNECT_DATA=(SERVICE_NAME=ORCL))
    )
```

# Utilizzo delle utilità EXTRACT e REPLICAT di Oracle GoldenGate
<a name="Appendix.OracleGoldenGate.ExtractReplicat"></a>

Le GoldenGate utilità Oracle `EXTRACT` e Oracle `REPLICAT` collaborano per mantenere sincronizzati i database di origine e di destinazione tramite la replica incrementale delle transazioni utilizzando file trail. Tutte le modifiche che si verificano nel database di origine vengono rilevate automaticamente`EXTRACT`, quindi formattate e trasferite in file trail sull'hub di istanze Oracle GoldenGate on-premise o Amazon EC2. Dopo il completamento del carico iniziale, i dati vengono letti da questi file e replicati nel database di destinazione dall'utilità `REPLICAT`.

## Eseguire l'utilità Oracle EXTRACT GoldenGate
<a name="Appendix.OracleGoldenGate.Extract"></a>

L'utilità `EXTRACT` recupera, converte e restituisce dati dal database di origine nei file di trail. Di seguito è riportato il processo di base:

1. `EXTRACT` accoda i dettagli della transazione in memoria o nello spazio di archiviazione su disco temporaneo.

1. Il database di origine esegue il commit della transazione.

1. `EXTRACT` scrive i dettagli della transazione in un file trail.

1. Il file trail indirizza questi dettagli all'hub di istanze Oracle GoldenGate on-premise o Amazon EC2 e quindi al database di destinazione.

I passaggi seguenti avviano l'utilità `EXTRACT`, acquisiscono i dati da `EXAMPLE.TABLE` nel database di origine `OGGSOURCE` e creano i file trail. 

**Per eseguire l'utilità EXTRACT**

1. Configura il file `EXTRACT` dei parametri sull' GoldenGate hub Oracle (locale o istanza Amazon EC2). L'elenco seguente mostra un esempio di file dei parametri `EXTRACT` denominato `$GGHOME/dirprm/eabc.prm`.

   ```
   EXTRACT EABC
    
   USERID oggadm1@OGGSOURCE, PASSWORD "my-password"
   EXTTRAIL /path/to/goldengate/dirdat/ab 
    
   IGNOREREPLICATES
   GETAPPLOPS
   TRANLOGOPTIONS EXCLUDEUSER OGGADM1
   	 
   TABLE EXAMPLE.TABLE;
   ```

1. Nell' GoldenGate hub Oracle, accedi al database di origine e avvia l'interfaccia a riga di GoldenGate comando Oracle. `ggsci` L'esempio seguente mostra il formato per l'accesso.

   ```
   dblogin oggadm1@OGGSOURCE
   ```

1. Aggiungi i dati transazionali per attivare la registrazione supplementare per la tabella del database.

   ```
   add trandata EXAMPLE.TABLE
   ```

1. Utilizzando la linea di comando `ggsci`, abilita l'utilità `EXTRACT` tramite i comandi seguenti.

   ```
   add extract EABC tranlog, INTEGRATED tranlog, begin now
   add exttrail /path/to/goldengate/dirdat/ab 
      extract EABC, 
      MEGABYTES 100
   ```

1. Registra l'utilità `EXTRACT` sul database in modo che i log archiviati non vengano eliminati. Questa attività ti consente di recuperare vecchie transazioni di cui non sia stato eseguito il commit, se necessario. Per registrare l'utilità `EXTRACT` nel database, utilizza il comando seguente.

   ```
   register EXTRACT EABC, DATABASE
   ```

1. Avviare l'utilità `EXTRACT` con il comando seguente.

   ```
   start EABC
   ```

## Esecuzione dell'utilità Oracle GoldenGate REPLICAT
<a name="Appendix.OracleGoldenGate.Replicat"></a>

L'utilità `REPLICAT` immette le informazioni sulla transazione nei file di trail del database di destinazione.

I seguenti passaggi abilitano e avviano l'utilità `REPLICAT` in modo che possa replicare i dati acquisiti nella tabella `EXAMPLE.TABLE` del database di destinazione `OGGTARGET`.

**Per eseguire l'utilità REPLICATE**

1. Configura il file `REPLICAT` dei parametri sull' GoldenGate hub Oracle (locale o istanza EC2). L'elenco seguente mostra un esempio di file dei parametri `REPLICAT` denominato `$GGHOME/dirprm/rabc.prm`.

   ```
   REPLICAT RABC
    
   USERID oggadm1@OGGTARGET, password "my-password"
    
   ASSUMETARGETDEFS
   MAP EXAMPLE.TABLE, TARGET EXAMPLE.TABLE;
   ```
**Nota**  
Specifica una password diversa dal prompt mostrato qui come best practice per la sicurezza.

1. Accedi al database di destinazione e avvia l'interfaccia a riga di GoldenGate comando Oracle ()`ggsci`. L'esempio seguente mostra il formato per l'accesso.

   ```
   dblogin userid oggadm1@OGGTARGET
   ```

1. Utilizzando la linea di comando `ggsci`, aggiungi una tabella dei punti di controllo. L'utente indicato deve essere l'account GoldenGate utente Oracle, non il proprietario dello schema della tabella di destinazione. L'esempio seguente crea una tabella dei punti di controllo denominata `gg_checkpoint`.

   ```
   add checkpointtable oggadm1.oggchkpt
   ```

1. Per abilitare l'utilità `REPLICAT`, utilizza il comando seguente.

   ```
   add replicat RABC EXTTRAIL /path/to/goldengate/dirdat/ab CHECKPOINTTABLE oggadm1.oggchkpt 
   ```

1. Avvia l'utilità `REPLICAT` utilizzando il comando seguente.

   ```
   start RABC
   ```

# Monitoraggio di Oracle GoldenGate
<a name="Appendix.OracleGoldenGate.Monitoring"></a>

Quando usi Oracle GoldenGate per la replica, assicurati che il processo Oracle GoldenGate sia attivo e in esecuzione e che i database di origine e destinazione siano sincronizzati. È possibile utilizzare i seguenti strumenti di monitoraggio:
+ [Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) è un servizio di monitoraggio utilizzato in questo modello per monitorare i log degli errori di GoldenGate.
+ [Amazon SNS](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/US_SetupSNS.html) è un servizio di notifica dei messaggi utilizzato in questo modello per inviare notifiche e-mail.

Per istruzioni dettagliate, consulta [Monitoraggio dei log di Oracle GoldenGate utilizzando Amazon CloudWatch](https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/monitor-oracle-goldengate-logs-by-using-amazon-cloudwatch.html).

# Risoluzione dei problemi relativi a GoldenGate
<a name="Appendix.OracleGoldenGate.Troubleshooting"></a>

Questa sezione spiega i problemi più comuni relativi all'utilizzo di Oracle GoldenGate con Amazon RDS for Oracle.

**Topics**
+ [Errore durante l'apertura del log redo online](#Appendix.OracleGoldenGate.Troubleshooting.Logs)
+ [Oracle GoldenGate sembra essere configurato correttamente ma la replica non funziona](#Appendix.OracleGoldenGate.Troubleshooting.Replication)
+ [Integrated REPLICAT lento a causa della query su SYS."\$1DBA\$1APPLY\$1CDR\$1INFO"](#Appendix.OracleGoldenGate.IR)

## Errore durante l'apertura del log redo online
<a name="Appendix.OracleGoldenGate.Troubleshooting.Logs"></a>

Assicurati di configurare i database per mantenere i log redo archiviati. Considera le linee guida seguenti:
+ Specifica il periodo di retention dei log in ore. Il valore minimo è 1 ora.
+ Imposta la durata su un valore superiore a eventuali potenziali tempi di inattività dell'istanza database di origine e a eventuali potenziali problemi relativi al periodo di comunicazione o di rete per l'istanza database di origine. Tale durata consente a Oracle di GoldenGate recuperare i log dall'istanza DB di origine in base alle esigenze.
+ Assicurarsi di disporre di spazio sufficiente sulla propria istanza per i file.

Se non è abilitata l'opzione di conservazione dei log o il suo valore è troppo basso, riceverai un messaggio di errore simile al seguente.

```
2022-03-06 06:17:27  ERROR   OGG-00446  error 2 (No such file or directory) 
opening redo log /rdsdbdata/db/GGTEST3_A/onlinelog/o1_mf_2_9k4bp1n6_.log for sequence 1306 
Not able to establish initial position for begin time 2022-03-06 06:16:55.
```

## Oracle GoldenGate sembra essere configurato correttamente ma la replica non funziona
<a name="Appendix.OracleGoldenGate.Troubleshooting.Replication"></a>

Per le tabelle preesistenti, è necessario specificare l'SCN da cui lavora GoldenGate Oracle.

**Per risolvere questo problema**

1. Accedere al database di origine e avviare l'interfaccia a riga di GoldenGate comando Oracle ()`ggsci`. L'esempio seguente mostra il formato per l'accesso.

   ```
   dblogin userid oggadm1@OGGSOURCE
   ```

1. Utilizzando la riga di comando `ggsci`, imposta l'SCN iniziale per il processo `EXTRACT`. Nell'esempio seguente, l'SCN viene impostato su 223274 per `EXTRACT`.

   ```
   ALTER EXTRACT EABC SCN 223274
   start EABC
   ```

1. Accedi al database di destinazione. L'esempio seguente mostra il formato per l'accesso.

   ```
   dblogin userid oggadm1@OGGTARGET
   ```

1. Utilizzando la riga di comando `ggsci`, imposta l'SCN iniziale per il processo `REPLICAT`. Nell'esempio seguente, l'SCN viene impostato su 223274 per `REPLICAT`.

   ```
   start RABC atcsn 223274
   ```

## Integrated REPLICAT lento a causa della query su SYS."\$1DBA\$1APPLY\$1CDR\$1INFO"
<a name="Appendix.OracleGoldenGate.IR"></a>

Oracle GoldenGate Conflict Detection and Resolution (CDR) fornisce routine di risoluzione dei conflitti di base. Ad esempio, CDR può risolvere un conflitto univoco per un'istruzione `INSERT`.

Quando CDR risolve una collisione, è possibile inserire temporaneamente record nella tabella delle eccezioni `_DBA_APPLY_CDR_INFO`. Integrato `REPLICAT` elimina questi record in un secondo momento. In uno scenario raro, `REPLICAT` integrato può elaborare un gran numero di collisioni, ma un nuovo integrato `REPLICAT` non lo sostituisce. Invece di essere rimosse, le righe esistenti in `_DBA_APPLY_CDR_INFO` sono orfane. Tutti i nuovi processi `REPLICAT` integrati rallentano perché stanno eseguendo query su righe orfane in `_DBA_APPLY_CDR_INFO`.

Per rimuovere tutte le righe da `_DBA_APPLY_CDR_INFO`, attenersi alla Amazon RDS procedura `rdsadmin.rdsadmin_util.truncate_apply$_cdr_info`. Questa procedura viene rilasciata nell'ambito della versione di ottobre 2020 e dell'aggiornamento delle patch. La procedura è disponibile nelle seguenti versioni del database:
+ [Versione 21.0.0.0.ru-2022-01.rur-2022-01.r1](https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/oracle-version-21-0.html#oracle-version-RU-RUR.21.0.0.0.ru-2022-01.rur-2022-01.r1) e successive
+ [Versione 19.0.0.0.ru-2020-10.rur-2020-10.r1](https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/oracle-version-19-0.html#oracle-version-RU-RUR.19.0.0.0.ru-2020-10.rur-2020-10.r1) e successive

Nell'esempio seguente viene troncata la tabella `_DBA_APPLY_CDR_INFO`.

```
SET SERVEROUTPUT ON SIZE 2000
EXEC rdsadmin.rdsadmin_util.truncate_apply$_cdr_info;
```

# Utilizzo di Oracle Repository Creation Utility in RDS for Oracle
<a name="Oracle.Resources.RCU"></a>

Puoi utilizzare Amazon RDS per ospitare un'istanza database RDS for Oracle che contiene gli schemi per supportare i componenti Oracle Fusion Middleware. Prima di poter utilizzare i componenti Fusion Middleware, crea e popola gli schemi per i componenti nel database. Puoi creare e popolare gli schemi tramite Oracle Repository Creation Utility (RCU).

## Versioni supportate e opzioni di licenza per RCU
<a name="Oracle.Resources.RCU.Versions"></a>

Amazon RDS supporta solo la versione 12c di Oracle Repository Creation Utility (RCU). Puoi utilizzare l'RCU nelle configurazioni seguenti: 
+ RCU 12c con Oracle Database 21c
+ RCU 12c con Oracle Database 19c

Prima di poter utilizzare la utilità RCU, eseguire la seguente procedura:
+ Ottieni una licenza per Oracle Fusion Middleware.
+ Segui le linee guida Oracle per la gestione delle licenze relative al database Oracle che ospita il repository. Per ulteriori informazioni, consulta [Oracle Fusion Middleware Licensing Information User Manual (Manuale utente riguardante le informazioni di licenza per Oracle Fusion Middleware](https://docs.oracle.com/en/middleware/fusion-middleware/fmwlc/) nella documentazione di Oracle.

Fusion MiddleWare supporta i repository su Oracle Database Enterprise Edition e Standard Edition 2. Oracle consiglia Enterprise Edition per le installazioni di produzione che richiedono il partizionamento e le installazioni che richiedono la ricostruzione dell'indice online.

Prima di creare l'istanza database RDS for Oracle, verifica la versione del database di Oracle necessaria per supportare i componenti che vuoi distribuire. Utilizza la matrice di certificazione per trovare i requisiti per i componenti e le versioni di Fusion Middleware che desideri implementare. Per ulteriori informazioni, consulta [Oracle Fusion Middleware Supported System Configurations](http://www.oracle.com/technetwork/middleware/ias/downloads/fusion-certification-100350.html) (Configurazioni di sistema supportate per Oracle Fusion Middleware) nella documentazione di Oracle. 

Amazon RDS supporta gli aggiornamenti della versione del database di Oracle secondo le necessità. Per ulteriori informazioni, consulta [Aggiornamento della versione del motore di di un'istanza database](USER_UpgradeDBInstance.Upgrading.md). 

## Requisiti e limitazioni per RCU
<a name="Oracle.Resources.RCU.BeforeYouBegin"></a>

Per utilizzare RCU è necessario un Amazon VPC. L'istanza database Amazon RDS deve essere disponibile solo per i componenti Fusion Middleware e non per Internet pubblico. Pertanto, ospita l'istanza database Amazon RDS in una sottorete privata, che garantisce una maggiore sicurezza. È inoltre necessaria un'istanza database RDS for Oracle. Per ulteriori informazioni, consulta [Creazione e connessione a un'istanza database Oracle](CHAP_GettingStarted.CreatingConnecting.Oracle.md).

Puoi archiviare gli schemi per qualsiasi componente Fusion Middleware nell'istanza database Amazon RDS. Gli schemi seguenti sono stati verificati per l'installazione corretta: 
+ Analytics (ATTIVITà)
+ Servizi di audit (IAU)
+ Servizi di audit Append (IAU\$1APPEND)
+ Servizi di audit Viewer (IAU\$1VIEWER)
+ Discussioni (DISCUSSIONI)
+ Servizi dei metadati (MDS)
+ Oracle Business Intelligence (BIPLATFORM)
+ Oracle Platform Security Services (OPSS)
+ Portale e servizi (WEBCENTER)
+ Produttori Portlet (PORTLET)
+ Tabella del servizio (STB)
+ Infrastruttura SOA (SOAINFRA)
+ Servizio di messaggistica dell'utente (UCSUMS)
+ WebLogic Servizi (WLS)

## Linee guida per l'utilizzo di RCU
<a name="Oracle.Resources.RCU.Recommendations"></a>

Di seguito sono riportate alcune raccomandazioni quando si utilizza l'istanza database in questo scenario: 
+ Raccomandiamo di usare Multi-AZ per carichi di lavoro di produzione. Per altre informazioni sull'utilizzo di zone di disponibilità multiple, consulta [Regioni, zone di disponibilità e Local Zones ](Concepts.RegionsAndAvailabilityZones.md). 
+ Per una maggiore sicurezza, Oracle consiglia di utilizzare Transparent Data Encryption (TDE) per crittografare i dati in attesa. Se si dispone di una licenza Enterprise Edition che comprende l'opzione di sicurezza avanzata, è possibile abilitare la crittografia in attesa utilizzando l'opzione TDE. Per ulteriori informazioni, consulta [Oracle Transparent Data Encryption](Appendix.Oracle.Options.AdvSecurity.md). 

  Amazon RDS fornisce anche un'opzione di crittografia in attesa per tutte le edizioni del database. Per ulteriori informazioni, consulta [Crittografia delle risorse Amazon RDS](Overview.Encryption.md). 
+ Configura il gruppo di sicurezza VPC per consentire la comunicazione tra i server dell'applicazione e l'istanza database Amazon RDS. I server dell'applicazione che ospitano i componenti Fusion Middleware possono essere su Amazon EC2 o in locale. 

## Esecuzione di RCU
<a name="Oracle.Resources.RCU.Installing"></a>

Usa Oracle Repository Creation Utility (RCU) per creare e popolare gli schemi per supportare i componenti di Fusion Middleware. Puoi eseguire RCU in diversi modi diversi.

**Topics**
+ [Esecuzione di RCU usando la riga di comando in un passaggio](#Oracle.Resources.RCU.SilentSingle)
+ [Esecuzione di RCU usando la riga di comando in più passaggi](#Oracle.Resources.RCU.SilentMulti)
+ [Esecuzione di RCU in modalità interattiva](#Oracle.Resources.RCU.Interactive)

### Esecuzione di RCU usando la riga di comando in un passaggio
<a name="Oracle.Resources.RCU.SilentSingle"></a>

Se non hai bisogno di modificare nessuno dei tuoi schemi prima di popolarli, puoi eseguire RCU in un unico passaggio. In caso contrario, consulta la seguente sezione per eseguire RCU in più passaggi. 

Puoi eseguire RCU in modalità silenziosa usando il parametro della linea di comando `-silent`. Quando esegui RCU in modalità silenziosa, puoi evitare di inserire le password sulla riga di comando creando un file di testo contenente le password. Creare un file di testo con la password per `dbUser` sulla prima riga e la password per ogni componente sulle righe successive. Specifichi il nome del file della password come ultimo parametro al comando RCU. 

**Example**  
L'esempio seguente crea e popola gli schemi per il componente dell'infrastruttura SOA (e per le sue dipendenze) in un unico passaggio.   
Per Linux, macOS o Unix:  

```
export ORACLE_HOME=/u01/app/oracle/product/12.2.1.0/fmw
export JAVA_HOME=/usr/java/jdk1.8.0_65
${ORACLE_HOME}/oracle_common/bin/rcu \
-silent \
-createRepository \
-connectString ${dbhost}:${dbport}:${dbname} \
-dbUser ${dbuser} \
-dbRole Normal \
-honorOMF \
-schemaPrefix ${SCHEMA_PREFIX} \
-component MDS \
-component STB \
-component OPSS \
-component IAU \
-component IAU_APPEND \
-component IAU_VIEWER \
-component UCSUMS \
-component WLS \
-component SOAINFRA \
-f < /tmp/passwordfile.txt
```

Per ulteriori informazioni, consulta [ Running Repository Creation Utility from the Command Line (Esecuzione dell'utilità di creazione del repository dalla riga di comando)](https://docs.oracle.com/middleware/1221/core/RCUUG/GUID-0D3A2959-7CC8-4001-997E-718ADF04C5F2.htm#RCUUG248) nella documentazione di Oracle. 

### Esecuzione di RCU usando la riga di comando in più passaggi
<a name="Oracle.Resources.RCU.SilentMulti"></a>

Per modificare manualmente gli script dello schema, esegui RCU in più passaggi: 

1. Eseguire RCU in modalità **Prepare Scripts for System Load (Preparare gli script per il caricamento del sistema)** usando il parametro della riga di comando `-generateScript` per creare gli script per gli schemi. 

1. Modificare manualmente ed eseguire lo script generato `script_systemLoad.sql`. 

1. Eseguire RCU di nuovo in modalità **Perform Product Load (Eseguire il caricamento del prodotto)** usando il parametro della riga di comando `-dataLoad` per popolare gli schemi. 

1. Esegui lo script di pulizia generato `script_postDataLoad.sql`.

Per eseguire RCU in modalità silenziosa, specifica il parametro della riga di comando `-silent`. Quando si esegue RCU in modalità silenziosa, è possibile evitare di digitare le password sulla riga di comando creando un file di testo contenente le password. Creare un file di testo con la password per `dbUser` sulla prima riga e la password per ogni componente sulle righe successive. Specifica il nome del file della password come ultimo parametro al comando RCU. 

**Example**  
L'esempio seguente crea degli script per lo schema per il componente dell'infrastruttura SOA e per le sue dipendenze.   
Per Linux, macOS o Unix:  

```
export ORACLE_HOME=/u01/app/oracle/product/12.2.1.0/fmw
export JAVA_HOME=/usr/java/jdk1.8.0_65
${ORACLE_HOME}/oracle_common/bin/rcu \
-silent \
-generateScript \
-connectString ${dbhost}:${dbport}:${dbname} \
-dbUser ${dbuser} \
-dbRole Normal \
-honorOMF \
[-encryptTablespace true] \
-schemaPrefix ${SCHEMA_PREFIX} \
-component MDS \
-component STB \
-component OPSS \
-component IAU \
-component IAU_APPEND \
-component IAU_VIEWER \
-component UCSUMS \
-component WLS \
-component SOAINFRA \
-scriptLocation /tmp/rcuscripts \
-f < /tmp/passwordfile.txt
```
Ora puoi modificare lo script generato, collegarti all'istanza database di Oracle ed eseguire lo script. Lo script generato è denominato `script_systemLoad.sql`. Per ulteriori informazioni sulla connessione alla tua istanza database di Oracle, consulta [Fase 3: connessione del client SQL a un'istanza database Oracle.](CHAP_GettingStarted.CreatingConnecting.Oracle.md#CHAP_GettingStarted.Connecting.Oracle).   
L'esempio seguente popola gli schemi per il componente dell'infrastruttura SOA (e per le sue dipendenze).   
Per Linux, macOS o Unix:  

```
export JAVA_HOME=/usr/java/jdk1.8.0_65
${ORACLE_HOME}/oracle_common/bin/rcu \
-silent \
-dataLoad \
-connectString ${dbhost}:${dbport}:${dbname} \
-dbUser ${dbuser} \
-dbRole Normal \
-honorOMF \
-schemaPrefix ${SCHEMA_PREFIX} \
-component MDS \
-component STB \
-component OPSS \
-component IAU \
-component IAU_APPEND \
-component IAU_VIEWER \
-component UCSUMS \
-component WLS \
-component SOAINFRA \
-f < /tmp/passwordfile.txt
```
Per completare, collegati all'istanza database di Oracle ed esegui lo script di pulizia. Lo script è denominato `script_postDataLoad.sql`. 

Per ulteriori informazioni, consulta [ Running Repository Creation Utility from the Command Line (Esecuzione dell'utilità di creazione del repository dalla riga di comando)](https://docs.oracle.com/middleware/1221/core/RCUUG/GUID-0D3A2959-7CC8-4001-997E-718ADF04C5F2.htm#RCUUG248) nella documentazione di Oracle. 

### Esecuzione di RCU in modalità interattiva
<a name="Oracle.Resources.RCU.Interactive"></a>

Per utilizzare l'interfaccia utente grafica RCU, esegui RCU in modalità interattiva. Includi il parametro `-interactive` e ometti il parametro `-silent`. Per ulteriori informazioni, consulta [ Understanding Repository Creation Utility Screens (Comprensione delle schermate di utilità della creazione del repository)](https://docs.oracle.com/middleware/1213/core/RCUUG/rcu_screens.htm#RCUUG143) nella documentazione di Oracle. 

**Example**  
L'esempio seguente avvia RCU in modo interattivo e pre-popola le informazioni riguardanti la connessione.   
Per Linux, macOS o Unix:  

```
export ORACLE_HOME=/u01/app/oracle/product/12.2.1.0/fmw
export JAVA_HOME=/usr/java/jdk1.8.0_65
${ORACLE_HOME}/oracle_common/bin/rcu \
-interactive \
-createRepository \
-connectString ${dbhost}:${dbport}:${dbname} \
-dbUser ${dbuser} \
-dbRole Normal
```

## Risoluzione dei problemi per RCU
<a name="Oracle.Resources.RCU.KnownIssues"></a>

Presta particolare attenzione ai seguenti problemi.

**Topics**
+ [Oracle Managed Files (OMF)](#Oracle.Resources.RCU.KnownIssues.OMF)
+ [Privilegi degli oggetti](#Oracle.Resources.RCU.KnownIssues.object-privs)
+ [Enterprise Scheduler Service](#Oracle.Resources.RCU.KnownIssues.Scheduler)

### Oracle Managed Files (OMF)
<a name="Oracle.Resources.RCU.KnownIssues.OMF"></a>

Amazon RDS usa file di dati OMF per semplificare la gestione dell'archiviazione. È possibile personalizzare gli attributi del tablespace, come ad esempio la dimensione e la gestione dell'estensione. Tuttavia, la specifica del nome di un file di dati quando si esegue la utilità RCU fa sì che il codice del tablespace restituisca l'errore `ORA-20900`. La RCU può essere utilizzata con OMF nei modi seguenti: 
+ In RCU 12.2.1.0 e versioni successive, usare il parametro della riga di comando `-honorOMF`. 
+ In RCU 12.1.0.3 e versioni successive, utilizzare più passaggi e modificare lo script generato. Per ulteriori informazioni, consulta [Esecuzione di RCU usando la riga di comando in più passaggi](#Oracle.Resources.RCU.SilentMulti). 

### Privilegi degli oggetti
<a name="Oracle.Resources.RCU.KnownIssues.object-privs"></a>

Poiché Amazon RDS è un servizio gestito, non avrai l'accesso `SYSDBA` completo all'istanza database RDS per Oracle. Tuttavia, RCU 12c supporta utenti con privilegi inferiori. Nella maggior parte dei casi, il privilegio dell'utente master è sufficiente a creare repository. 

L'account master può concedere direttamente i privilegi `WITH GRANT OPTION` già concessi. In alcuni casi, la utilità RCU potrebbe avere esito negativo con `ORA-01031` quando si cerca di concedere i privilegi oggetto `SYS`. Puoi riprovare ed eseguire la stored procedure `rdsadmin_util.grant_sys_object`, come mostrato nell'esempio seguente:

```
BEGIN
  rdsadmin.rdsadmin_util.grant_sys_object('GV_$SESSION','MY_DBA','SELECT');
END;
/
```

Se tenti di concedere i privilegi `SYS` sull'oggetto `SCHEMA_VERSION_REGISTRY`, l'operazione potrebbe avere esito negativo e restituire l'errore `ORA-20199: Error in rdsadmin_util.grant_sys_object`. Puoi qualificare la tabella `SCHEMA_VERSION_REGISTRY$` e la vista `SCHEMA_VERSION_REGISTRY` con il nome del proprietario dello schema, ovvero `SYSTEM`, e riprovare l'operazione. In alternativa, puoi creare un sinonimo. Accedi come utente master ed esegui le seguenti istruzioni:

```
CREATE OR REPLACE VIEW SYSTEM.SCHEMA_VERSION_REGISTRY 
  AS SELECT * FROM SYSTEM.SCHEMA_VERSION_REGISTRY$;
CREATE OR REPLACE PUBLIC SYNONYM SCHEMA_VERSION_REGISTRY FOR SYSTEM.SCHEMA_VERSION_REGISTRY;
CREATE OR REPLACE PUBLIC SYNONYM SCHEMA_VERSION_REGISTRY$ FOR SCHEMA_VERSION_REGISTRY;
```

### Enterprise Scheduler Service
<a name="Oracle.Resources.RCU.KnownIssues.Scheduler"></a>

Quando usi la utilità RCU per eliminare un repository Enterprise Scheduler Service, la RCU può restituire il messaggio `Error: Component drop check failed`.

# Configurazione di Oracle Connection Manager su un'istanza Amazon EC2
<a name="oracle-cman"></a>

Oracle Connection Manager (CMAN) è un server proxy che inoltra le richieste di connessione ai server di database o ad altri server proxy. Puoi utilizzare CMAN per configurare quanto segue:

Controllo accessi  
Puoi creare regole che filtrano le richieste client specificate dall'utente e accettarne altre.

Multiplexing della sessione  
Puoi incanalare più sessioni client tramite una connessione di rete a una destinazione server condivisa.

In genere, CMAN risiede su un host separato dal server di database e dagli host client. Per ulteriori informazioni, consulta [Configuring Oracle Connection Manager](https://docs.oracle.com/en/database/oracle/oracle-database/19/netag/configuring-oracle-connection-manager.html#GUID-AF8A511E-9AE6-4F4D-8E58-F28BC53F64E4) (Configurazione di Oracle Connection Manager) nella documentazione di Oracle Database.

**Topics**
+ [Versioni supportate e opzioni di licenza per CMAN](#oracle-cman.Versions)
+ [Requisiti e limitazioni per CMAN](#oracle-cman.requirements)
+ [Configurazione di CMAN](#oracle-cman.configuring-cman)

## Versioni supportate e opzioni di licenza per CMAN
<a name="oracle-cman.Versions"></a>

CMAN supporta l'Enterprise Edition di tutte le versioni di Oracle Database supportate da Amazon RDS. Per ulteriori informazioni, consulta [Release di RDS per Oracle](Oracle.Concepts.database-versions.md).

Puoi installare Oracle Connection Manager su un host separato dall'host in cui è installato Oracle Database. Non è necessaria una licenza separata per l'host che esegue CMAN.

## Requisiti e limitazioni per CMAN
<a name="oracle-cman.requirements"></a>

Per offrire un'esperienza completamente gestita, Amazon RDS limita l'accesso al sistema operativo. Non è possibile modificare i parametri del database che richiedono l'accesso al sistema operativo. Pertanto, Amazon RDS non supporta le caratteristiche di CMAN che richiedono l'accesso al sistema operativo.

## Configurazione di CMAN
<a name="oracle-cman.configuring-cman"></a>

Quando si configura CMAN, si esegue la maggior parte del lavoro al di fuori del database RDS for Oracle.

**Topics**
+ [Passaggio 1: configura CMAN in un'istanza Amazon EC2 nello stesso VPC dell'istanza RDS for Oracle](#oracle-cman.configuring-cman.vpc)
+ [Passaggio 2: configura i parametri del database per CMAN](#oracle-cman.configuring-cman.parameters)
+ [Passaggio 3: associa l'istanza database al gruppo di parametri](#oracle-cman.configuring-cman.parameter-group)

### Passaggio 1: configura CMAN in un'istanza Amazon EC2 nello stesso VPC dell'istanza RDS for Oracle
<a name="oracle-cman.configuring-cman.vpc"></a>

Per informazioni su come configurare CMAN, segui le istruzioni dettagliate nel post del blog [Configuring and using Oracle Connection Manager on Amazon EC2 for Amazon RDS for Oracle](https://aws.amazon.com/blogs/database/configuring-and-using-oracle-connection-manager-on-amazon-ec2-for-amazon-rds-for-oracle/) (Configurazione e utilizzo di Oracle Connection Manager su Amazon EC2 per Amazon RDS for Oracle).

### Passaggio 2: configura i parametri del database per CMAN
<a name="oracle-cman.configuring-cman.parameters"></a>

Per le caratteristiche CMAN come la modalità Traffic Director e il multiplexing di sessione, impostare`REMOTE_LISTENER`parametro all'indirizzo dell'istanza CMAN in un gruppo di parametri del database. Considera il seguente scenario:
+ L'istanza CMAN risiede su un host con indirizzo IP `10.0.159.100` e utilizza la porta `1521`.
+ I database `orcla`, `orclb` e `orclc` risiedono in istanze database RDS for Oracle separate.

La tabella seguente mostra come impostare il valore `REMOTE_LISTENER`. Il valore `LOCAL_LISTENER` viene impostato automaticamente da Amazon RDS.


| Nome dell'istanza database | IP dell'istanza database | Valore del listener locale (impostato automaticamente) | Valore del listener remoto (impostato dall'utente) | 
| --- | --- | --- | --- | 
| orcla | 10.0.159.200 |  <pre>( address=<br />  (protocol=tcp)<br />  (host=10.0.159.200)<br />  (port=1521)<br />)</pre>  | 10.0.159.100:1521 | 
| orclb | 10.0.159.300 |  <pre>( address=<br />  (protocol=tcp)<br />  (host=10.0.159.300)<br />  (port=1521)<br />)</pre>  | 10.0.159.100:1521 | 
| orclc | 10.0.159.400 |  <pre>( address=<br />  (protocol=tcp)<br />  (host=10.0.159.400)<br />  (port=1521)<br />)</pre>  | 10.0.159.100:1521 | 

### Passaggio 3: associa l'istanza database al gruppo di parametri
<a name="oracle-cman.configuring-cman.parameter-group"></a>

Crea o modifica l'istanza database per utilizzare il gruppo di parametri configurato in [Passaggio 2: configura i parametri del database per CMAN](#oracle-cman.configuring-cman.parameters). Per ulteriori informazioni, consulta [Associazione di un gruppo di parametri database a un’istanza database in Amazon RDS](USER_WorkingWithParamGroups.Associating.md).

# Installazione di un Database Siebel in Oracle in Amazon RDS
<a name="Oracle.Resources.Siebel"></a>

È possibile usare Amazon RDS per ospitare un database Siebel in un'istanza database di Oracle. Il database Siebel fa parte dell'architettura dell'applicazione Siebel Customer Relationship Management (CRM). Per un'illustrazione, consulta [ Architettura generica dell'applicazione Siebel Business](https://docs.oracle.com/cd/E63029_01/books/PerformTun/performtun_archinfra.htm#i1043361). 

Utilizzare il seguente argomento per facilitare la configurazione di un Database Siebel su un'istanza database Oracle su Amazon RDS. È inoltre possibile scoprire come utilizzare Amazon Web Services per supportare gli altri componenti richiesti dall'architettura dell'applicazione Siebel CRM. 

**Nota**  
Per installare database Siebel in Oracle in Amazon RDS, è necessario utilizzare l'account utente master. Non è necessario il privilegio `SYSDBA`; è sufficiente il privilegio dell'utente master. Per ulteriori informazioni, consulta [Privilegi dell'account utente master](UsingWithRDS.MasterAccounts.md). 

## Licenze e versioni
<a name="Oracle.Resources.Siebel.Versions"></a>

Per installare un database Siebel in Amazon RDS, è necessario usare la propria licenza database di Oracle e la propria licenza Siebel. È necessario disporre della licenza Oracle Database (con Licenza di aggiornamento software e supporto) adatta alla classe dell'istanza database e all'edizione di Oracle Database. Per ulteriori informazioni, consulta [Opzioni di licenza per RDS per Oracle](Oracle.Concepts.Licensing.md). 

Oracle Database Enterprise Edition è l'unica edizione certificata da Siebel per questo scenario. Amazon RDS supporta Siebel CRM versione 15.0 o 16.0.

Amazon RDS supporta gli aggiornamenti della versione del database. Per ulteriori informazioni, consulta [Aggiornamento della versione del motore di di un'istanza database](USER_UpgradeDBInstance.Upgrading.md). 

## Prima di iniziare
<a name="Oracle.Resources.Siebel.BeforeYouBegin"></a>

Prima di iniziare è necessario un Amazon VPC. Poiché l'istanza database Amazon RDS deve essere disponibile solo per il server Siebel Enterprise e non nell'ambiente Internet pubblico, l'istanza database Amazon RDS viene ospitata in una sottorete privata, per garantire una maggiore sicurezza. Per informazioni su come creare un Amazon VPC da usare con Siebel CRM, consulta [Creazione e connessione a un'istanza database Oracle](CHAP_GettingStarted.CreatingConnecting.Oracle.md). 

Prima di iniziare, è necessaria anche un'istanza database di Oracle. Per informazioni su come creare un'istanza database Oracle da usare con Siebel CRM, consulta [Creazione di un'istanza database Amazon RDS](USER_CreateDBInstance.md). 

## Installazione e configurazione di un Database Siebel
<a name="Oracle.Resources.Siebel.Database.Siebel"></a>

Dopo aver creato l'istanza database di Oracle, è possibile installare il database di Siebel. Si installa il database creando il proprietario della tabella e gli account dell'amministratore, installando procedure archiviate e funzioni e quindi eseguendo la Configurazione guidata del database Siebel. Per altri informazioni, consulta [ Installing the Siebel Database on the RDBMS (Installazione del database di Siebel in RDBMS)](https://docs.oracle.com/cd/E63029_01/books/SiebInstWIN/SiebInstCOM_ConfigDB.html). 

Per eseguire la configurazione guidata del database di Siebel, è necessario utilizzare l'account utente master. Non è necessario il privilegio `SYSDBA`; è sufficiente il privilegio dell'utente master. Per ulteriori informazioni, consulta [Privilegi dell'account utente master](UsingWithRDS.MasterAccounts.md). 

## Utilizzo di altre caratteristiche Amazon RDS con un Database di Siebel
<a name="Oracle.Resources.Siebel.Miscellaneous"></a>

Dopo aver creato l'istanza database di Oracle, è possibile utilizzare delle caratteristiche aggiuntive di Amazon RDS per aiutare a personalizzare il database di Siebel.

### Raccolta di statistiche con l'opzione Oracle Statspack
<a name="Oracle.Resources.Siebel.Options"></a>

Puoi aggiungere delle caratteristiche all'istanza database tramite l'uso di opzioni nei gruppi di opzioni database. Quando hai creato l'istanza database di Oracle, hai utilizzato il gruppo di opzioni predefinite database. Se si desidera aggiungere caratteristiche al database, è possibile creare un nuovo gruppo di opzioni per l'istanza database. 

Se si desidera raccogliere statistiche sulle prestazioni nel database Siebel, è possibile aggiungere la caratteristica Oracle Statspack Per ulteriori informazioni, consulta [Oracle Statspack](Appendix.Oracle.Options.Statspack.md). 

Alcune modifiche dell'opzione vengono applicate immediatamente e alcune modifiche dell'opzione vengono applicate durante la finestra di manutenzione successiva per l'istanza database. Per ulteriori informazioni, consulta [Uso di gruppi di opzioni](USER_WorkingWithOptionGroups.md). Dopo aver creato un gruppo di opzioni personalizzate, modificare l'istanza database per il collegamento. Per ulteriori informazioni, consulta [Modifica di un'istanza database Amazon RDS](Overview.DBInstance.Modifying.md). 

### Tuning Performance con i parametri
<a name="Oracle.Resources.Siebel.Parameters"></a>

Puoi gestire la configurazione del motore database attraverso l'uso di parametri in un gruppo di parametri database. Quando hai creato l'istanza database di Oracle, hai utilizzato il gruppo di parametri predefiniti database. Se si desidera personalizzare le caratteristiche del database, è possibile creare un nuovo gruppo di parametri per l'istanza database. 

Quando modifichi un parametro, in base al tipo di parametro, le modifiche vengono applicate o immediatamente o dopo i riavvio manuale dell'istanza database. Per ulteriori informazioni, consulta [Gruppi di parametri per Amazon RDS](USER_WorkingWithParamGroups.md). Dopo aver creato un gruppo di parametri personalizzati, modificare l'istanza database per il collegamento. Per ulteriori informazioni, consulta [Modifica di un'istanza database Amazon RDS](Overview.DBInstance.Modifying.md). 

Per ottimizzare l'istanza database di Oracle per Siebel CRM, è possibile personalizzare determinati parametri. La tabella riportata di seguito mostra alcune impostazioni consigliate per il parametro. Per ulteriori informazioni sulla regolazione delle prestazioni di Siebel CRM, consulta la [Guida alla regolazione delle prestazioni di Siebel CRM](https://docs.oracle.com/cd/E63029_01/books/PerformTun/toc.htm). 


****  

| Nome del parametro | Valore predefinito | Guida per prestazioni ottimali di Siebel CRM | 
| --- | --- | --- | 
| \$1always\$1semi\$1join | `CHOOSE` | `OFF`  | 
| \$1b\$1tree\$1bitmap\$1plans | `TRUE` | `FALSE`  | 
| \$1like\$1with\$1bind\$1as\$1equality | `FALSE` | `TRUE`  | 
| \$1no\$1or\$1expansion | `FALSE` | `FALSE`  | 
| \$1optimizer\$1join\$1sel\$1sanity\$1check | `TRUE` | `TRUE`  | 
| \$1optimizer\$1max\$1permutations | 2000 | 100  | 
| \$1optimizer\$1sortmerge\$1join\$1enabled | `TRUE` | `FALSE`  | 
| \$1partition\$1view\$1enabled | `TRUE` | `FALSE`  | 
| open\$1cursors | `300` | Almeno **2000**.  | 

### Creazione di snapshot
<a name="Oracle.Resources.Siebel.Snapshots"></a>

Dopo aver creato il database di Siebel, è possibile copiare il database usando le caratteristiche di snapshot di Amazon RDS. Per ulteriori informazioni, consulta [Creazione di uno snapshot del database per un’istanza database Single-AZ per Amazon RDS](USER_CreateSnapshot.md) e [Ripristino in un’istanza database](USER_RestoreFromSnapshot.md). 

## Supporto per altri Componenti Siebel CRM
<a name="Oracle.Resources.Siebel.OtherComponents"></a>

Oltre al database Siebel, è anche possibile utilizzare Amazon Web Services per supportare gli altri componenti dall'architettura dell'applicazione Siebel CRM. È possibile trovare altre informazioni sul supporto fornite da Amazon AWS per i componenti aggiuntivi di Siebel CRM nella tabella seguente. 


****  

| Componente Siebel CRM | Supporto Amazon AWS  | 
| --- | --- | 
| Siebel Enterprise(con uno o più server Siebel) |  Puoi ospitare i server Siebel in istanze Amazon Elastic Compute Cloud (Amazon EC2). Puoi utilizzare Amazon EC2 per avviare il numero di server virtuali necessari. Usando Amazon EC2, puoi ridurre o aumentare facilmente per gestire i cambiamenti nei requisiti. Per ulteriori informazioni, consulta [Che cos'è Amazon EC2?](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts.html)  Puoi inserire i server nello stesso VPC con l'istanza database e usare il gruppo di sicurezza VPC per accedere al database. Per ulteriori informazioni, consulta [Uso di un'istanza database in un VPC](USER_VPC.WorkingWithRDSInstanceinaVPC.md).   | 
| Server Web(con Siebel Web Server Extensions) |  È possibile installare più server Web su più istanze EC2. Per utilizzare Elastic Load Balancing per distribuire il traffico in ingresso tra le istanze. Per ulteriori informazioni, consulta [Che cos'è Elastic Load Balancing?](https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/elastic-load-balancing.html)   | 
| Siebel Gateway Name Server |  Puoi ospitare i server Siebel Gateway Name Server nell'istanza EC2. Puoi quindi inserire i server nello stesso VPC con l'istanza database e usare il gruppo di sicurezza VPC per accedere al database. Per ulteriori informazioni, consulta [Uso di un'istanza database in un VPC](USER_VPC.WorkingWithRDSInstanceinaVPC.md).   | 