

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 database CDB per RDS per Oracle
<a name="oracle-multitenant"></a>

Nell'architettura multi-tenant Oracle, un database container (CDB) può includere database pluggable (PDB) creati dal cliente. Per ulteriori informazioni sui database CDB, consulta l'argomento relativo all'[introduzione all'architettura multi-tenant](https://docs.oracle.com/en/database/oracle/oracle-database/19/multi/introduction-to-the-multitenant-architecture.html#GUID-267F7D12-D33F-4AC9-AA45-E9CD671B6F22) nella documentazione di Oracle Database.

**Topics**
+ [Panoramica di RDS per Oracle CDBs](Oracle.Concepts.CDBs.md)
+ [Configurazione di un CDB RDS per Oracle](oracle-cdb.configuring.md)
+ [Backup e ripristino di un CDB](Oracle.Concepts.single-tenant.snapshots.md)
+ [Conversione di un database non CDB RDS per Oracle in un database CDB](oracle-cdb-converting.md)
+ [Conversione della configurazione a tenant singolo in multi-tenant](oracle-single-tenant-converting.md)
+ [Aggiunta di un database del tenant RDS per Oracle all'istanza CDB](oracle-cdb-configuring.adding.pdb.md)
+ [Modifica di un database del tenant RDS per Oracle](oracle-cdb-configuring.modifying.pdb.md)
+ [Eliminazione di un database del tenant RDS per Oracle dal CDB](oracle-cdb-configuring.deleting.pdb.md)
+ [Visualizzazione dei dettagli del database del tenant](oracle-cdb-configuring.describing.pdb.md)
+ [Aggiornamento del CDB](Oracle.Concepts.single-tenant.upgrades.md)

# Panoramica di RDS per Oracle CDBs
<a name="Oracle.Concepts.CDBs"></a>

È possibile creare un'istanza database RDS per Oracle come database container (CDB) quando si esegue Oracle Database 19c o versione successiva. A partire da Oracle Database 21c, tutti i database lo sono. CDBs Un CDB si differenzia da un non CDB perché può contenere database collegabili (PDBs), denominati database tenant in RDS for Oracle. Un PDB è una raccolta portatile di schemi e oggetti visualizzato in un'applicazione come database distinto.

Il database del tenant iniziale (PDB) viene creato al momento della creazione dell’istanza CDB. In RDS per Oracle, l’applicazione client interagisce con il PDB anziché con il CDB. L'esperienza con un database PDB è per lo più identica all'esperienza con un database non CDB.

**Topics**
+ [Configurazione multi-tenant dell'architettura CDB](#multi-tenant-configuration)
+ [Configurazione a tenant singolo dell'architettura CDB](#Oracle.Concepts.single-tenant)
+ [Opzioni di creazione e conversione per CDBs](#oracle-cdb-creation-conversion)
+ [Account utente e privilegi in un CDB](#Oracle.Concepts.single-tenant.users)
+ [Famiglie di gruppi di parametri in un CDB](#Oracle.Concepts.single-tenant.parameters)
+ [Limitazioni di RDS per Oracle CDBs](#Oracle.Concepts.single-tenant-limitations)

## Configurazione multi-tenant dell'architettura CDB
<a name="multi-tenant-configuration"></a>

RDS per Oracle supporta la configurazione multi-tenant dell’architettura multitenant Oracle, detta anche *architettura CDB*. In questa configurazione, l’istanza CDB RDS per Oracle può contenere da 1 a 30 database del tenant, a seconda dell’edizione del database e delle eventuali licenze opzionali richieste. In un database Oracle, un database del tenant è un PDB. L'istanza database deve utilizzare la versione del database Oracle 19.0.0.0.ru-2022-01.rur-2022.r1 o successiva.

**Nota**  
La configurazione Amazon RDS è chiamata “multi-tenant” anziché “multitenant” perché è una funzionalità specifica di Amazon RDS, non solo del motore di database Oracle. Allo stesso modo, il termine RDS «tenant» si riferisce a qualsiasi tenant in una configurazione RDS, non solo a Oracle. PDBs Nella documentazione di RDS, il termine “Oracle multitenant” senza trattino si riferisce esclusivamente all’architettura CDB del database Oracle, che è compatibile sia con le implementazioni on-premises sia con quelle RDS.

Ora puoi configurare le impostazioni seguenti:
+ Nome del database tenant
+ Nome utente principale del database tenant
+ Password master del database del tenant (facoltativamente integrata con Secrets Manager)
+ Set di caratteri del database tenant
+ Set di caratteri nazionali del database tenant

Il set di caratteri del database del tenant può essere diverso dal set di caratteri del CDB. Lo stesso vale per il set di caratteri nazionali. Dopo aver creato il database tenant iniziale, è possibile creare, modificare o eliminare i database tenant utilizzando RDS. APIs Per impostazione predefinita, il nome CDB viene impostato su `RDSCDB` e non può essere modificato. Per ulteriori informazioni, consultare [Impostazioni per istanze database](USER_CreateDBInstance.Settings.md) e [Modifica di un database del tenant RDS per Oracle](oracle-cdb-configuring.modifying.pdb.md).

## Configurazione a tenant singolo dell'architettura CDB
<a name="Oracle.Concepts.single-tenant"></a>

RDS per Oracle supporta una configurazione legacy dell'architettura multitenant Oracle chiamata configurazione a tenant singolo. In questa configurazione, un'istanza CDB RDS per Oracle può contenere un solo tenant (PDB). Non è possibile crearne altri in un secondo momento. PDBs 

## Opzioni di creazione e conversione per CDBs
<a name="oracle-cdb-creation-conversion"></a>

Oracle Database 21c supporta solo CDBs, mentre Oracle Database 19c supporta entrambi CDBs e non. CDBs Tutte le istanze CDB RDS per Oracle supportano sia la configurazione multi-tenant che quella a tenant singolo.

### Opzioni di creazione, conversione e aggiornamento per l'architettura del database Oracle
<a name="oracle-cdb-creation-conversion.architecture"></a>

La tabella seguente mostra le diverse opzioni di architettura per la creazione e l'aggiornamento di database RDS per Oracle.


| Versione | Opzioni di creazione del database | Opzioni di conversione dell'architettura | Destinazioni di aggiornamento alla versione principale | 
| --- | --- | --- | --- | 
| Oracle Database 21c | Solo architettura CDB | N/D | N/D | 
| Oracle Database 19c | Architettura CDB o non CDB | Architettura da non CDB a CDB (aggiornamento della versione di aprile 2021 o versione successiva) | CDB Oracle Database 21c | 

Come mostrato nella tabella precedente, non è possibile aggiornare direttamente un database non CDB a database CDB in una nuova versione principale del database. Tuttavia, è possibile convertire un database non CDB Oracle Database 19c in database CDB Oracle Database 19c CDB e quindi aggiornarlo a database CDB Oracle Database 21c. Per ulteriori informazioni, consulta [Conversione di un database non CDB RDS per Oracle in un database CDB](oracle-cdb-converting.md).

### Opzioni di conversione per le configurazioni dell'architettura CDB
<a name="oracle-cdb-creation-conversion.configuration"></a>

La tabella seguente mostra le diverse opzioni per la conversione della configurazione dell'architettura di un'istanza database RDS per Oracle.


| Architettura e configurazione correnti | Conversione dell'architettura CDB alla configurazione a tenant singolo | Conversione dell'architettura CDB alla configurazione multi-tenant | Conversione all'architettura non CDB | 
| --- | --- | --- | --- | 
| Non CDB | Supportata | Supportato\$1 | N/D | 
| CDB che utilizza la configurazione a tenant singolo | N/D | Supportata | Non supportata | 
| CDB che utilizza la configurazione multi-tenant | Non supportata | N/D | Non supportata | 

\$1 Non è possibile convertire un database non CDB in una configurazione multi-tenant in un'unica operazione. Quando si converte un database non CDB in un database CDB, il CDB si trova nella configurazione a tenant singolo. È possibile convertire la configurazione a tenant singolo in quella multi-tenant in un'operazione separata.

## Account utente e privilegi in un CDB
<a name="Oracle.Concepts.single-tenant.users"></a>

Nell'architettura multi-tenant Oracle, tutti gli account utente sono utenti comuni o utenti locali. Un utente comune CDB è un utente del database la cui identità e password singole sono note nel root CDB e in ogni PDB esistente e futuro. Al contrario, un utente locale esiste solo in un unico PDB.

L'utente master RDS è un account utente locale nel PDB, a cui viene assegnato un nome quando si crea l'istanza database. Se crei nuovi account utente, anche questi utenti saranno utenti locali che risiedono nel PDB. Non è possibile utilizzare alcun account utente per creare nuovi PDBs o modificare lo stato del PDB esistente.

L'utente `rdsadmin` è un account utente comune. È possibile eseguire pacchetti RDS per Oracle presenti in questo account, ma non è possibile accedere come `rdsadmin`. Per ulteriori informazioni, consulta [About Common Users and Local Users (Informazioni sugli utenti comuni e gli utenti locali)](https://docs.oracle.com/en/database/oracle/oracle-database/19/dbseg/managing-security-for-oracle-database-users.html#GUID-BBBD9904-F2F3-442B-9AFC-8ACDD9A588D8) nella documentazione Oracle.

Per gli utenti master nelle configurazioni multi-tenant e single-tenant, è possibile utilizzare credenziali autogestite o gestite da. Gestione dei segreti AWS Nella configurazione a tenant singolo, si utilizzano i comandi della CLI a livello di istanza, ad esempio `create-db-instance` per le password master gestite. Nella configurazione multi-tenant, si utilizzano i comandi di database del tenant, ad esempio `create-tenant-database` per le password master gestite. Per ulteriori informazioni sull’integrazione di Secrets Manager, consulta [Gestione della password dell’utente master per un database del tenant RDS per Oracle con Secrets Manager](rds-secrets-manager.md#rds-secrets-manager-tenant).

## Famiglie di gruppi di parametri in un CDB
<a name="Oracle.Concepts.single-tenant.parameters"></a>

CDBs hanno le proprie famiglie di gruppi di parametri e i propri valori di parametro predefiniti. Le famiglie di gruppi di parametri CDB sono le seguenti:
+ oracle-ee-cdb-21
+ oracle-se2-cdb-21
+ oracle-ee-cdb-19
+ oracle-se2-cdb-19

## Limitazioni di RDS per Oracle CDBs
<a name="Oracle.Concepts.single-tenant-limitations"></a>

RDS per Oracle supporta un sottoinsieme di funzionalità disponibili in un CDB on-premise.

### Limitazioni dei CDB
<a name="oracle-cdb-limitations.cdb"></a>

Le seguenti limitazioni si applicano a RDS per Oracle a livello di CDB:
+ Non è possibile connettersi a un CDB. Ci si connette sempre al database del tenant (PDB) anziché al CDB. Specifica l'endpoint per il PDB proprio come per un non CDB. L'unica differenza è che si specifica *pdb\$1name* come nome del database, dove *pdb\$1name* è il nome scelto per il PDB.
+ Non è possibile convertire un CDB nella configurazione multi-tenant in un CDB nella conversione a tenant singolo. La conversione alla configurazione multi-tenant è unidirezionale e irreversibile.
+ Non è possibile abilitare o convertire in configurazione multi-tenant se l'istanza database utilizza una versione del database Oracle precedente a 19.0.0.0.ru-2022-01.rur-2022.r1.
+ Non è possibile utilizzare Flussi di attività del database in un CDB.
+ Non è possibile abilitare l’audit dall’interno di `CDB$ROOT`. È necessario abilitare l’audit all’interno di ogni singolo PDB.

### Limitazioni del database del tenant (PDB)
<a name="oracle-cdb-limitations.pdb"></a>

Le seguenti limitazioni si applicano ai database del tenant con la configurazione multi-tenant RDS per Oracle:
+ Non è possibile rimandare le operazioni del database del tenant alla finestra di manutenzione. Tutte le modifiche sono immediatamente effettive.
+ Non è possibile aggiungere un database del tenant a un CDB che utilizza la configurazione a tenant singolo.
+ Non è possibile aggiungere o modificare più database del tenant in un'unica operazione. È possibile aggiungerli o modificarli solo uno alla volta.
+ Non è possibile modificare un database del tenant assegnandogli il nome `CDB$ROOT` o `PDB$SEED`.
+ Non è possibile eliminare un database del tenant se è l'unico tenant nel CDB.
+ Non tutti i tipi di classi di istanze DB dispongono di risorse sufficienti per supportarne più di una PDBs in un'istanza RDS for Oracle CDB. Un numero maggiore di PDB influisce sulle prestazioni e sulla stabilità delle classi di istanza più piccole e aumenta il tempo della maggior parte delle operazioni a livello di istanza, ad esempio gli aggiornamenti del database.
+ Non è possibile rinominare un PDB utilizzando`rdsadmin.rdsadmin_util.rename_global_name`, è necessario utilizzare invece l'API. `modify-tenant-database`
+ Non è possibile utilizzarne più di uno Account AWS per creare PDBs nello stesso CDB. PDBsdevono appartenere allo stesso account dell'istanza DB su cui PDBs sono ospitati.
+ Tutti PDBs in un CDB utilizzano lo stesso endpoint e lo stesso listener del database.
+ Le seguenti operazioni non sono supportate a livello di PDB ma sono supportate a livello di CDB:
  + Backup e ripristino
  + Aggiornamenti del database
  + Operazioni di manutenzione
+ Le seguenti funzionalità non sono supportate a livello di PDB ma sono supportate a livello di CDB:
  + Gruppi di opzioni (le opzioni sono installate PDBs su tutte le istanze CDB)
  + Gruppi di parametri (tutti i parametri derivano dal gruppo di parametri associato all'istanza CDB)
+ Le operazioni a livello di PDB supportate nell'architettura CDB on-premise ma non supportate in un CDB RDS per Oracle sono:
**Nota**  
Il seguente elenco non è esaustivo.
  + Applicazione PDBs
  + Proxy PDBs
  + Avvio e arresto di un PDB
  + Scollegare e collegare PDBs

    Per spostare i dati dentro o fuori dal CDB, utilizzare le stesse tecniche valide per un database non CDB. Per ulteriori informazioni sulla migrazione dei dati, consulta [Importazione di dati in Oracle in Amazon RDS](Oracle.Procedural.Importing.md).
  + Impostazione delle opzioni a livello di PDB

    Il PDB eredita le impostazioni delle opzioni dal gruppo di opzioni del CDB. Per ulteriori informazioni sulle impostazioni delle opzioni, consulta [Gruppi di parametri per Amazon RDS](USER_WorkingWithParamGroups.md). Per le best practice, consulta [Utilizzo di gruppi di parametri di database](CHAP_BestPractices.md#CHAP_BestPractices.DBParameterGroup).
  + Configurazione dei parametri in un PDB

    Il PDB eredita le impostazioni dei parametri dal CDB. Per ulteriori informazioni sull'impostazione dell'opzione, consulta [Aggiunta di opzioni alle istanze database Oracle](Appendix.Oracle.Options.md).
  + Configurazione di diversi listener per lo stesso CDB PDBs 
  + Funzionalità di Oracle Flashback

# Configurazione di un CDB RDS per Oracle
<a name="oracle-cdb.configuring"></a>

La configurazione di un CDB è simile alla configurazione di un database non CDB. 

**Topics**
+ [Creazione di un'istanza CDB RDS per Oracle](#Oracle.Concepts.single-tenant.creation)
+ [Connessione a un PDB nel CDB RDS per Oracle](#Oracle.Concepts.connecting.pdb)

## Creazione di un'istanza CDB RDS per Oracle
<a name="Oracle.Concepts.single-tenant.creation"></a>

In RDS per Oracle, la procedura per la creazione di un’istanza CDB è quasi identica alla creazione di un database non CDB. La differenza risiede nella selezione dell'architettura multitenant Oracle quando viene creata l'istanza database e viene scelta anche la configurazione dell'architettura: multi-tenant o tenant singolo. Se si creano i tag quando si crea un CDB nella configurazione multi-tenant, RDS propaga i tag al database del tenant iniziale. Per creare un CDB, usa l' Console di gestione AWS API AWS CLI, the o RDS.

### Console
<a name="Oracle.Concepts.single-tenant.creation.console"></a>

**Creazione di un'istanza database**

1. Accedi a Console di gestione AWS e apri la console Amazon RDS all'indirizzo [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Nell'angolo in alto a destra della console Amazon RDS, scegli l'istanza CDB Regione AWS in cui desideri creare l'istanza CDB.

1. Nel riquadro di navigazione, scegliere **Databases** (Database).

1. Scegliere **Create database (Crea database)**.

1. In **Choose a database creation method (Seleziona metodo di creazione del database)**, scegliere **Standard Create (Creazione standard)**.

1. In **Engine options (Opzioni motore)**, selezionare **Oracle**. 

1. In **Tipo di gestione del database**, selezionare **Amazon RDS**.

1. In **Impostazioni dell'architettura**, scegli **Architettura multitenant Oracle**. 

1. Per **Configurazione dell'architettura**, effettua una delle seguenti operazioni:
   + Scegli **Configurazione multi-tenant** e procedi con il passaggio successivo.
   + Scegli **Configurazione a tenant singolo** e vai alla fase 11.

1. (Configurazione multi-tenant) Per **Impostazioni globali del tenant**, apporta le seguenti modifiche:
   + Per **Nome del database tenant** immetti il nome del PDB. Il nome del PDB deve essere diverso dal nome del CDB, che per impostazione predefinita è `RDSCDB`.
   + Per **Nome utente principale del database tenant**, specifica il nome dell'utente principale del PDB. Non è possibile utilizzare il nome utente principale del database del tenant per accedere al CDB.
   + Per **Gestione delle credenziali**, scegli una delle seguenti opzioni:
     + **Gestito in Gestione dei segreti AWS**

       La password gestita è quella utilizzata per il database del tenant iniziale anziché quella per l’istanza. In **Seleziona la chiave di crittografia**, scegli una chiave KMS creata da Secrets Manager o una chiave creata personalmente. 
**Nota**  
Consigliamo Gestione dei segreti AWS come tecnica più sicura per la gestione delle credenziali. Si applicano costi aggiuntivi. Per ulteriori informazioni, consulta [Gestione delle password con Amazon RDS e Gestione dei segreti AWS](rds-secrets-manager.md).
     + **Gestione autonoma**

       Per specificare una password, deseleziona la casella di controllo **Genera automaticamente una password** se è selezionata. Inserisci la stessa password in **Password master** e **Conferma password**.
   + Per **Set di caratteri del database tenant**, scegli un set di caratteri per il PDB. È possibile scegliere un set di caratteri del database del tenant diverso dal set di caratteri del CDB.

     Il set di caratteri PDB predefinito è **AL32UTF8**. Se scegli un set di caratteri del PDB non predefinito, la creazione del CDB potrebbe essere più lenta. 
**Nota**  
Non è possibile specificare più database del tenant durante l’operazione di creazione. Il CDB ha un solo PDB quando viene creato. È possibile aggiungere PDBs a un CDB esistente in un'operazione separata.

1. (Configurazione a tenant singolo) Scegli le impostazioni desiderate in base alle opzioni elencate in [Impostazioni per istanze database](USER_CreateDBInstance.Settings.md):

   1. Nella sezione **Settings (Impostazioni)**, aprire **Credential Settings (Impostazioni credenziali)**. Quindi, esegui queste operazioni:

     1. In **Nome utente master**, immettere il nome di un utente locale nel PDB. Non è possibile utilizzare il nome utente master per accedere alla root del CDB.

     1. Per **Gestione delle credenziali**, scegli una delle seguenti opzioni:
        + **Gestito in Gestione dei segreti AWS**

          In **Seleziona la chiave di crittografia**, scegli una chiave KMS creata da Secrets Manager o una chiave creata personalmente. 
**Nota**  
Consigliamo Gestione dei segreti AWS come tecnica più sicura per la gestione delle credenziali. Si applicano costi aggiuntivi. Per ulteriori informazioni, consulta [Gestione delle password con Amazon RDS e Gestione dei segreti AWS](rds-secrets-manager.md).
        + **Gestione autonoma**

          Per specificare una password, deseleziona la casella di controllo **Genera automaticamente una password** se è selezionata. Inserisci la stessa password in **Password master** e **Conferma password**.

1. Per le restanti sezioni, specifica le impostazioni dell'istanza database. Per informazioni su ciascuna impostazione, consulta [Impostazioni per le istanze database](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.Settings.html).

1. Scegliere **Crea database**.

### AWS CLI
<a name="Oracle.Concepts.single-tenant.creation.cli"></a>

Per creare un CDB nella configurazione multi-tenant, utilizzate il [create-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html)comando con i seguenti parametri:
+ `--db-instance-identifier`
+ `--db-instance-class`
+ `--engine { oracle-ee-cdb | oracle-se2-cdb }`
+ `--master-username`
+ `--master-user-password` o `--manage-master-user-password`
+ `--multi-tenant` (per la configurazione a tenant singolo, non specificare `multi-tenant` o specifica `--no-multi-tenant`)
+ `--allocated-storage`
+ `--backup-retention-period`

Per informazioni su ciascuna impostazione, consulta [Impostazioni per istanze database](USER_CreateDBInstance.Settings.md).

L'esempio seguente crea un'istanza DB RDS for Oracle denominata *my-cdb-inst* nella configurazione multi-tenant. Se si specifica `--no-multi-tenant` o non si specifica `--multi-tenant`, la configurazione CDB predefinita è a tenant singolo. Il motore è `oracle-ee-cdb`: un comando che specifica `oracle-ee` e `--multi-tenant` non riesce con un errore. Il database dei tenant iniziali è denominato. *mypdb*

**Example**  
Per Linux, macOS o Unix:  

```
 1. aws rds create-db-instance \
 2.     --engine oracle-ee-cdb \
 3.     --db-instance-identifier my-cdb-inst \
 4.     --multi-tenant \
 5.     --db-name mypdb \
 6.     --allocated-storage 250 \
 7.     --db-instance-class db.t3.large \
 8.     --master-username pdb_admin \
 9.     --manage-master-user-password \
10.     --backup-retention-period 3
```
Per Windows:  

```
 1. aws rds create-db-instance ^
 2.     --engine oracle-ee-cdb ^
 3.     --db-instance-identifier my-cdb-inst ^
 4.     --multi-tenant ^
 5.     --db-name mypdb ^
 6.     --allocated-storage 250 ^
 7.     --db-instance-class db.t3.large ^
 8.     --master-username pdb_admin ^
 9.     --manage-master-user-password \ ^
10.     --backup-retention-period 3
```
Specifica una password diversa dal prompt mostrato qui come best practice per la sicurezza.
Questo comando genera un output simile al seguente. Il nome del database, il set di caratteri, il set di caratteri nazionali, l’utente master e il relativo segreto non sono inclusi nell’output. È possibile visualizzare queste informazioni utilizzando il comando CLI `describe-tenant-databases`.  

```
 1. {
 2.     "DBInstance": {
 3.         "DBInstanceIdentifier": "my-cdb-inst",
 4.         "DBInstanceClass": "db.t3.large",
 5.         "MultiTenant": true,
 6.         "Engine": "oracle-ee-cdb",
 7.         "DBResourceId": "db-ABCDEFGJIJKLMNOPQRSTUVWXYZ",
 8.         "DBInstanceStatus": "creating",
 9.         "AllocatedStorage": 250,
10.         "PreferredBackupWindow": "04:59-05:29",
11.         "BackupRetentionPeriod": 3,
12.         "DBSecurityGroups": [],
13.         "VpcSecurityGroups": [
14.             {
15.                 "VpcSecurityGroupId": "sg-0a1bcd2e",
16.                 "Status": "active"
17.             }
18.         ],
19.         "DBParameterGroups": [
20.             {
21.                 "DBParameterGroupName": "default.oracle-ee-cdb-19",
22.                 "ParameterApplyStatus": "in-sync"
23.             }
24.         ],
25.         "DBSubnetGroup": {
26.             "DBSubnetGroupName": "default",
27.             "DBSubnetGroupDescription": "default",
28.             "VpcId": "vpc-1234567a",
29.             "SubnetGroupStatus": "Complete",
30.             ...
```

### API RDS
<a name="Oracle.Concepts.single-tenant.creation.api"></a>

Per creare un'istanza DB utilizzando l'API Amazon RDS, chiama l'DBInstanceoperazione [Create](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html).

Per informazioni su ciascuna impostazione, consulta [Impostazioni per istanze database](USER_CreateDBInstance.Settings.md). 

## Connessione a un PDB nel CDB RDS per Oracle
<a name="Oracle.Concepts.connecting.pdb"></a>

È possibile utilizzare un'utilità come SQL\$1Plus per connettersi a un PDB. Per scaricare Oracle Instant Client, che include una versione autonoma di SQL\$1Plus, consulta [Download di Oracle Instant Client](https://www.oracle.com/database/technologies/instant-client/downloads.html).

Per stabilire la connessione tra SQL\$1Plus e il PDB, è necessario includere le seguenti informazioni:
+ Nome del PDB
+ Nome utente e password del database
+ Endpoint dell'istanza database
+ Numero della porta

Per informazioni su come trovare le informazioni precedenti, consulta [Esito dell'endpoint dell'istanza database RDS per Oracle](USER_Endpoint.md).

**Example Connessione al PDB tramite SQL\$1Plus**  
Negli esempi seguenti, sostituisci il tuo utente principale con. *master\$1user\$1name* Sostituire inoltre l'endpoint dell'istanza database e quindi includere il numero di porta e il SID Oracle. Il valore SID è il nome del PDB specificato al momento della creazione dell'istanza database e non l'identificatore dell'istanza database.  
Per Linux, macOS o Unix:  

```
1. sqlplus 'master_user_name@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=endpoint)(PORT=port))(CONNECT_DATA=(SID=pdb_name)))'
```
Per Windows:  

```
1. sqlplus master_user_name@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=endpoint)(PORT=port))(CONNECT_DATA=(SID=pdb_name)))
```
Verrà visualizzato un output simile al seguente.  

```
SQL*Plus: Release 19.0.0.0.0 Production on Mon Aug 21 09:42:20 2021
```
Dopo l'immissione della password dell'utente, verrà visualizzato il prompt SQL.  

```
SQL>
```

**Nota**  
Il formato più breve della stringa di connessione (Easy connect o EZCONNECT), ad esempio `sqlplus username/password@LONGER-THAN-63-CHARS-RDS-ENDPOINT-HERE:1521/database-identifier`, potrebbe comportare un limite relativo al numero massimo di caratteri e non deve pertanto essere utilizzato per la connessione. 

# Backup e ripristino di un CDB
<a name="Oracle.Concepts.single-tenant.snapshots"></a>

È possibile eseguire il backup e il ripristino del CDB utilizzando snapshot di database RDS o Recovery Manager (RMAN).

## Backup e ripristino di un CDB utilizzando snapshot di database
<a name="br-cdb.db-snapshots"></a>

Gli snapshot di database funzionano in modo simile nelle architetture CDB e non CDB. Le differenze principali sono le seguenti:
+ Quando ripristini uno snapshot di database di un CDB, non puoi rinominare il CDB. Per impostazione predefinita, il CDB viene denominato `RDSCDB` e il nome non può essere modificato.
+ Quando ripristini un'istantanea DB di un CDB, non puoi rinominare. PDBs È possibile modificare il nome PDB utilizzando il comando. [modify-tenant-database](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyTenantDatabase.html)
+ [Per trovare i database tenant in un'istantanea, usa il comando CLI -databases. describe-db-snapshot-tenant](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBSnapshotTenantDatabases.html)
+ Non è possibile interagire direttamente con i database del tenant in uno snapshot CDB che utilizza la configurazione dell'architettura multi-tenant. Se ripristini lo snapshot di database, ripristini tutti i relativi database del tenant. 
+ RDS per Oracle copia implicitamente i tag di un database del tenant nel database del tenant di uno snapshot di database. Quando si ripristina un database del tenant, i tag vengono visualizzati nel database ripristinato.
+ Se si ripristina uno snapshot di database e si specificano nuovi tag utilizzando il parametro `--tags`, i nuovi tag sovrascrivono tutti i tag esistenti.
+ Se si esegue uno snapshot di database di un'istanza CDB con tag e si specifica `--copy-tags-to-snapshot`, RDS per Oracle copia i tag dai database del tenant ai database del tenant presenti nello snapshot.

Per ulteriori informazioni, consulta [Considerazioni su Oracle Database](USER_RestoreFromSnapshot.md#USER_RestoreFromSnapshot.Oracle).

## Backup e ripristino di un CDB utilizzando RMAN
<a name="br-cdb.rman"></a>

Per informazioni su come eseguire il backup e il ripristino di un CDB o di un database a tenant singolo utilizzando RMAN, consulta [Esecuzione di attività RMAN comuni per le istanze database Oracle](Appendix.Oracle.CommonDBATasks.RMAN.md).

# Conversione di un database non CDB RDS per Oracle in un database CDB
<a name="oracle-cdb-converting"></a>

È possibile modificare l’architettura di un database Oracle e passare da un’architettura non CDB a un’architettura multitenant Oracle, chiamata anche *architettura CDB*, utilizzando il comando `modify-db-instance`. Nella maggior parte dei casi, questa tecnica è preferibile alla creazione di un nuovo CDB e all’importazione dei dati. L’operazione di conversione comporta un tempo di inattività.

Quando si aggiorna la versione del motore di database, non è possibile modificare l'architettura del database durante la stessa operazione. Pertanto, per aggiornare un database non CDB Oracle Database 19c a un database CDB Oracle Database 21c, è necessario prima convertire il database non CDB in un database CDB in un passaggio, quindi aggiornare il CDB 19c risultante a database CDB 21c in un passaggio separato.

I requisiti dell'operazione di conversione non CDB sono elencati di seguito:
+ È necessario specificare `oracle-ee-cdb` o `oracle-se2-cdb` per il tipo di motore di database. Questi sono gli unici valori supportati.
+ Il motore di database deve utilizzare Oracle Database 19c con un aggiornamento della versione di aprile 2021 o successive.

L'operazione presenta le seguenti limitazioni:
+ Non è possibile convertire un database CDB in un database non CDB. È solo possibile convertire un database non CDB in un database CDB.
+ Non è possibile convertire una configurazione non CDB in una configurazione multi-tenant in una singola chiamata `modify-db-instance`. Dopo aver convertito un database non CDB in un database CDB, il CDB è nella configurazione a tenant singolo. Per convertire la configurazione a tenant singolo in quella multi-tenant, esegui nuovamente `modify-db-instance`. Per ulteriori informazioni, consulta [Conversione della configurazione a tenant singolo in multi-tenant](oracle-single-tenant-converting.md).
+ Non è possibile convertire un database primario o di replica con Oracle Data Guard abilitato. Per convertire un non CDB con repliche di lettura, elimina prima tutte le repliche di lettura.
+ Non è possibile aggiornare la versione del motore di database e convertire un database non CDB in un database CDB durante la stessa operazione.

Prima di convertire un’istanza non CDB, considera quanto segue:
+ Le considerazioni relative ai gruppi di opzioni e parametri sono le stesse valide per l'aggiornamento del motore di database. Per ulteriori informazioni, consulta [Considerazioni sugli aggiornamenti per Oracle Database](USER_UpgradeDBInstance.Oracle.OGPG.md).
+ È possibile convertire con un’unica operazione le istanze non CDB esistenti che utilizzano password master gestite in istanze a tenant singolo. Le istanze a tenant singolo ereditano le password gestite.
+ Se per un’istanza database è installata l’opzione `OEMAGENT`, è consigliabile rimuovere questa opzione prima di convertire l’istanza non CDB. Dopo aver convertito l’istanza non CDB in CDB, reinstalla l’opzione. Per ulteriori informazioni, consulta [Oracle Management Agent per Enterprise Manager Cloud Control](Oracle.Options.OEMAgent.md).
+ Durante il processo di conversione, RDS reimposta la dimensione predefinita di 128 MB per i log di redo online.

## Console
<a name="oracle-cdb-converting.console"></a>

**Conversione di un database non CDB in un database CDB**

1. Accedi alla Console di gestione AWS e apri la console Amazon RDS all'indirizzo [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Nell'angolo in alto a destra della console Amazon RDS, scegliere la Regione AWS in cui si trova l'istanza database.

1. Nel riquadro di navigazione, scegliere **Database** e quindi l'istanza non CDB da convertire in istanza CDB. 

1. Scegliere **Modify (Modifica)**.

1. In **Impostazioni dell'architettura**, seleziona **Architettura multitenant Oracle**. Dopo la conversione, il CDB sarà nella configurazione a tenant singolo.

1. (Facoltativo) In **Gruppo di parametri database**, scegliere un nuovo gruppo di parametri per l'istanza CDB. Le stesse considerazioni relative ai gruppi di parametri valgono per la conversione di un'istanza database e per l'aggiornamento di un'istanza database. Per ulteriori informazioni, consulta [Considerazioni sui gruppi di parametri](USER_UpgradeDBInstance.Oracle.OGPG.md#USER_UpgradeDBInstance.Oracle.OGPG.PG).

1. (Facoltativo) In **Gruppo di opzioni**, selezionare un nuovo gruppo di opzioni per l'istanza CDB. Le stesse considerazioni relative ai gruppi di opzioni valgono per la conversione di un'istanza database e per l'aggiornamento di un'istanza database. Per ulteriori informazioni, consulta [Considerazioni su gruppi di opzioni](USER_UpgradeDBInstance.Oracle.OGPG.md#USER_UpgradeDBInstance.Oracle.OGPG.OG).

1. (Facoltativo) Per **Gestione delle credenziali**, scegli **Gestione in Gestione dei segreti AWS** o **Gestione autonoma**. Per ulteriori informazioni, consulta [Gestione della password dell'utente master per un'istanza database con Secrets Manager](rds-secrets-manager.md#rds-secrets-manager-db-instance).

1. Quando tutte le modifiche sono come le desideri, seleziona **Continue (Continua)** e controlla il riepilogo delle modifiche. 

1. (Facoltativo) Scegliere **Applica immediatamente** per applicare immediatamente le modifiche. In alcuni casi, la chiusura di questa opzione può causare un'interruzione. Per ulteriori informazioni, consulta [Utilizzo dell’impostazione della pianificazione delle modifiche](USER_ModifyInstance.ApplyImmediately.md).

1. Nella pagina di conferma esaminare le modifiche. Se sono corrette, selezionare **Modifica istanza database**.

   Oppure scegliere **Back (Indietro)** per cambiare le modifiche o **Cancel (Annulla)** per annullare le modifiche.

## AWS CLI
<a name="oracle-cdb-converting.cli"></a>

Per convertire un database non CDB nell'istanza database in un database CDB nella configurazione a tenant singolo, imposta `--engine` su `oracle-ee-cdb` o `oracle-se2-cdb` nel comando AWS CLI [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html). Per ulteriori informazioni, consulta [Impostazioni per istanze database](USER_ModifyInstance.Settings.md).

L'esempio seguente converte l'istanza database denominata *my-non-cdb* e specifica un gruppo di opzioni e un gruppo di parametri personalizzati. Il comando abilita anche la gestione delle password con Secrets Manager.

**Example**  
Per Linux, macOS o Unix:  

```
aws rds modify-db-instance \
    --db-instance-identifier my-non-cdb \
    --engine oracle-ee-cdb \
    --option-group-name custom-option-group \
    --db-parameter-group-name custom-parameter-group \
    --manage-master-user-password
```
Per Windows:  

```
aws rds modify-db-instance ^
    --db-instance-identifier my-non-cdb ^
    --engine oracle-ee-cdb ^
    --option-group-name custom-option-group ^
    --db-parameter-group-name custom-parameter-group ^
    --manage-master-user-password
```

## API RDS
<a name="oracle-cdb-converting.api"></a>

Per convertire un database non CDB in un database CDB, specificare `Engine` nell'operazione dell'API RDS l'operazione [ModifyDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html).

# Conversione della configurazione a tenant singolo in multi-tenant
<a name="oracle-single-tenant-converting"></a>

È possibile modificare l'architettura di un CDB RDS per Oracle dalla configurazione a tenant singolo alla configurazione multi-tenant. Prima e dopo la conversione, il CDB contiene un database a tenant singolo (PDB). I tag per l’istanza database si propagano al database del tenant iniziale creato durante la conversione.

Prima di iniziare, è necessario assicurarsi che la policy IAM disponga delle autorizzazioni necessarie per creare un database del tenant. Durante la conversione, RDS per Oracle migra i seguenti metadati nel nuovo database del tenant:
+ Il nome utente principale
+ La password master gestita (se il CDB di origine si integra con Secrets Manager)
+ Il nome del database 
+ Il set di caratteri
+ Il set di caratteri nazionali

Prima della conversione, è possibile visualizzare le informazioni precedenti utilizzando il comando `describe-db-instances`. Dopo la conversione, è possibile visualizzare le informazioni utilizzando il comando `describe-tenant-database`.

La conversione da tenant singolo a multi-tenant presenta le seguenti limitazioni:
+ Non è possibile riconvertire la configurazione multi-tenant in configurazione a tenant singolo dopo una conversione in configurazione multi-tenant. La conversione è irreversibile.
+ Non è possibile convertire un database primario o di replica con Oracle Data Guard abilitato.
+ Non è possibile aggiornare la versione del motore di database e convertire nella configurazione multi-tenant durante la stessa operazione.
+ Non è possibile abilitare o disabilitare le password di utente master gestite durante la conversione.

## Console
<a name="oracle-cdb.configuring.converting.console"></a>

**Per convertire un CDB con la configurazione a tenant singolo in quella multi-tenant**

1. Accedi a Console di gestione AWS e apri la console Amazon RDS all'indirizzo [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Nell'angolo in alto a destra della console Amazon RDS, scegliere la Regione AWS  in cui si trova l'istanza database.

1. Nel riquadro di navigazione, scegliere **Database** e quindi l'istanza non CDB da convertire in istanza CDB. 

1. Scegli **Modifica**.

1. In **Impostazioni dell'architettura**, seleziona **Architettura multitenant Oracle**.

1. Per **Configurazione dell'architettura** seleziona **Configurazione multi-tenant**.

1. (Facoltativo) In **Gruppo di parametri database**, scegliere un nuovo gruppo di parametri per l'istanza CDB. Le stesse considerazioni relative ai gruppi di parametri valgono per la conversione di un'istanza database e per l'aggiornamento di un'istanza database.

1. (Facoltativo) In **Gruppo di opzioni**, selezionare un nuovo gruppo di opzioni per l'istanza CDB. Le stesse considerazioni relative ai gruppi di opzioni valgono per la conversione di un'istanza database e per l'aggiornamento di un'istanza database.

1. Quando tutte le modifiche sono come le desideri, seleziona **Continue (Continua)** e controlla il riepilogo delle modifiche. 

1. Scegliere **Apply immediately** (Applica immediatamente). Questa opzione è necessaria quando si passa a una configurazione multi-tenant. Tieni presente che questa opzione può causare tempi di inattività in alcuni casi.

1. Nella pagina di conferma esaminare le modifiche. Se sono corrette, selezionare **Modifica istanza database**.

   Oppure scegliere **Back (Indietro)** per cambiare le modifiche o **Cancel (Annulla)** per annullare le modifiche.

## AWS CLI
<a name="oracle-cdb.configuring.converting.cli"></a>

Per convertire un CDB utilizzando la configurazione single-tenant in una configurazione multi-tenant, specifica nel comando. `--multi-tenant` AWS CLI [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html)

L'esempio seguente converte l'istanza database denominata `my-st-cdb` dalla configurazione a tenant singolo alla configurazione multi-tenant. L'opzione `--apply-immediately` è obbligatoria.

**Example**  
Per Linux, macOS o Unix:  

```
aws rds modify-db-instance --region us-east-1\
    --db-instance-identifier my-st-cdb \
    --multi-tenant \
    --apply-immediately
```
Per Windows:  

```
aws rds modify-db-instance --region us-east-1 ^
    --db-instance-identifier my-st-cdb ^
    --multi-tenant ^
    --apply-immediately
```
L'output è simile al seguente.  

```
{
    "DBInstance": {
        "DBInstanceIdentifier": "my-st-cdb",
        "DBInstanceClass": "db.r5.large",
        "MultiTenant": false,
        "Engine": "oracle-ee-cdb",
        "DBResourceId": "db-AB1CDE2FGHIJK34LMNOPRLXTXU",
        "DBInstanceStatus": "modifying",
        "MasterUsername": "admin",
        "DBName": "ORCL",
        ...
        "EngineVersion": "19.0.0.0.ru-2022-01.rur-2022-01.r1",
        "AutoMinorVersionUpgrade": true,
        "ReadReplicaDBInstanceIdentifiers": [],
        "LicenseModel": "bring-your-own-license",
        "OptionGroupMemberships": [
            {
                "OptionGroupName": "default:oracle-ee-cdb-19",
                "Status": "in-sync"
            }
        ],
        ...
        "PendingModifiedValues": {
            "MultiTenant": "true"
        }
    }
}
```

# Aggiunta di un database del tenant RDS per Oracle all'istanza CDB
<a name="oracle-cdb-configuring.adding.pdb"></a>

Nella configurazione multi-tenant RDS per Oracle, un database del tenant è un PDB. Per aggiungere un database del tenant, verifica che siano soddisfatti i seguenti prerequisiti:
+ Il CDB ha la configurazione multi-tenant abilitata. Per ulteriori informazioni, consulta [Configurazione multi-tenant dell'architettura CDB](Oracle.Concepts.CDBs.md#multi-tenant-configuration).
+ Disponi delle necessarie autorizzazioni IAM per creare il database del tenant.

È possibile aggiungere un database tenant utilizzando l' Console di gestione AWS API AWS CLI, the o RDS. Non è possibile aggiungere più database del tenant in un'unica operazione pertanto è necessario aggiungerli uno alla volta. Se il CDB ha la conservazione dei backup abilitata, Amazon RDS esegue il backup dell'istanza database prima e dopo l'aggiunta di un nuovo database del tenant. Se il CDB ha repliche di lettura, puoi solo aggiungere un database tenant all'istanza DB principale; Amazon RDS crea automaticamente il database tenant sulle repliche. Viene inoltre convalidato lo stato della replica, assicurando che tutte le repliche siano disponibili e che il ritardo di replica sia inferiore a 5 minuti prima della creazione del tenant.

## Console
<a name="oracle-cdb-configuring.adding.pdb.console"></a>

**Per aggiungere un database del tenant all'istanza database**

1. Accedi a Console di gestione AWS e apri la console Amazon RDS all'indirizzo [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Nell'angolo in alto a destra della console Amazon RDS, scegli la Regione AWS in cui desideri creare il database del tenant.

1. Nel pannello di navigazione, seleziona **Database**.

1. Scegli l'istanza CDB in cui aggiungere un database del tenant. L'istanza database deve utilizzare la configurazione multi-tenant dell'architettura CDB. 

1. Scegli **Operazioni**, quindi **Aggiungi database del tenant**.

1. Per **Impostazioni globali del database** effettua le seguenti operazioni:
   + Per **Nome del database tenant** immetti il nome del nuovo PDB.
   + Per **Nome utente principale del database tenant**, specifica il nome dell'utente principale per il PDB.
   + Scegli una delle seguenti opzioni di gestione delle credenziali:
     + **Gestito in Gestione dei segreti AWS**

       In **Seleziona la chiave di crittografia**, scegli una chiave KMS creata da Secrets Manager o una chiave creata personalmente. 
**Nota**  
Consigliamo Gestione dei segreti AWS come tecnica più sicura per la gestione delle credenziali. Si applicano costi aggiuntivi. Gestione dei segreti AWS non è supportato per le istanze che utilizzano repliche di lettura. Per ulteriori informazioni, consulta [Gestione delle password con Amazon RDS e Gestione dei segreti AWS](rds-secrets-manager.md).
     + **Gestione autonoma**

       Per specificare una password, deseleziona la casella di controllo **Genera automaticamente una password** se è selezionata. Inserisci la stessa password in **Password master** e **Conferma password**.
     + In **Configurazione aggiuntiva**, inserisci il nome del tuo PDB per **Nome database iniziale**. Non è possibile assegnare un nome al CDB, che ha `RDSCDB` come nome predefinito.
   + Per **Set di caratteri del database tenant**, scegli un set di caratteri per il PDB. Il valore predefinito è **AL32UTF8**. È possibile scegliere un set di caratteri del PDB diverso dal set di caratteri del CDB. Se l'istanza contiene repliche di lettura, i tenant non possono essere creati con un set di caratteri personalizzato. È possibile creare i tenant con un set di caratteri personalizzato prima di creare una replica di lettura, se necessario.
   + Per **Set di caratteri nazionali del database tenant**, scegli un set di caratteri per il PDB. Il valore predefinito è **AL32UTF8**. Il set di caratteri nazionali specifica la codifica solo per le colonne che utilizzano il tipo di dati `NCHAR` (`NCHAR`, `NVARCHAR2` e `NCLOB`) e non influisce sui metadati del database.

   Per ulteriori informazioni sulle impostazioni precedenti, consulta [Impostazioni per istanze database](USER_CreateDBInstance.Settings.md).

1. Scegli **Aggiungi tenant**.

## AWS CLI
<a name="oracle-cdb-configuring.adding.pdb.cli"></a>

Per aggiungere un database dei tenant al tuo CDB con AWS CLI, usa il comando [create-tenant-database](https://docs.aws.amazon.com/cli/latest/reference/rds/create-tenant-database.html)con i seguenti parametri richiesti:
+ `--db-instance-identifier`
+ `--tenant-db-name`
+ `--master-username`
+ `--master-user-password`

L'esempio seguente crea un database tenant denominato *mypdb2* nell'istanza CDB RDS for Oracle denominata. *my-cdb-inst* Il set di caratteri del PDB è `UTF-16`.

**Example**  
Per Linux, macOS o Unix:  

```
1. aws rds create-tenant-database --region us-east-1 \
2.     --db-instance-identifier my-cdb-inst \
3.     --tenant-db-name mypdb2 \
4.     --master-username mypdb2-admin \
5.     --master-user-password mypdb2-pwd \
6.     --character-set-name UTF-16
```
Per Windows:  

```
1. aws rds create-tenant-database --region us-east-1 \
2.     --db-instance-identifier my-cdb-inst ^
3.     --tenant-db-name mypdb2 ^
4.     --master-username mypdb2-admin ^
5.     --master-user-password mypdb2-pwd ^
6.     --character-set-name UTF-16
```
L'output è simile al seguente.  

```
...}
    "TenantDatabase" :
         {
            "DbiResourceId" : "db-abc123",
            "TenantDatabaseResourceId" : "tdb-bac567",
            "TenantDatabaseArn" : "arn:aws:rds:us-east-1:123456789012:db:my-cdb-inst:mypdb2",
            "DBInstanceIdentifier" : "my-cdb-inst",
            "TenantDBName" : "mypdb2",
            "Status" : "creating",
            "MasterUsername" : "mypdb2",
            "CharacterSetName" : "UTF-16",
            ...
        }
}...
```

# Modifica di un database del tenant RDS per Oracle
<a name="oracle-cdb-configuring.modifying.pdb"></a>

È possibile modificare solo il nome PDB e la password dell'utente principale di un database del tenant nel CDB. Tieni presenti i seguenti requisiti e limitazioni:
+ Per modificare le impostazioni di un database del tenant nell'istanza database, il database del tenant deve esistere. 
+ Non è possibile modificare più database del tenant in un'unica operazione. È possibile modificare un solo database del tenant alla volta.
+ Non è possibile modificare il nome di un database del tenant in `CDB$ROOT` o `PDB$SEED`.
+ Se l'istanza DB dispone di repliche di lettura, è possibile modificare solo i tenant sull'istanza DB principale. Viene inoltre convalidato lo stato della replica, assicurando che le repliche siano disponibili e che il ritardo di replica sia inferiore a 5 minuti prima della modifica del tenant.

È possibile modificare PDBs utilizzando Console di gestione AWS, the o l'API RDS. AWS CLI

## Console
<a name="oracle-cdb-configuring.modifying.pdb.console"></a>

**Per modificare il nome PDB o la password principale di un database del tenant**

1. Accedi a Console di gestione AWS e apri la console Amazon RDS all'indirizzo [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Nell'angolo in alto a destra della console Amazon RDS, scegli la Regione AWS in cui desideri creare il database del tenant.

1. Nel pannello di navigazione, seleziona **Database**.

1. Scegli il database del tenant di cui desideri modificare il nome del database o la password dell'utente principale.

1. Scegli **Modifica**.

1. Per **Impostazioni globali del database** effettua una delle seguenti operazioni:
   + Per **Nome del database tenant** immetti il nuovo nome del nuovo PDB.
   + Per **Password principale del database tenant**, immetti una nuova password.

1. Scegli **Modifica tenant**.

## AWS CLI
<a name="oracle-cdb-configuring.modifying.pdb.cli"></a>

Per modificare un database tenant utilizzando il AWS CLI, chiama il [modify-tenant-database](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-tenant-database.html)comando con i seguenti parametri:
+ `--db-instance-identifier` *value*
+ `--tenant-db-name value`
+ `[--new-tenant-db-name value]`
+ `[--master-user-password value]`

L'esempio seguente rinomina il database del tenant `pdb1` in `pdb-hr` nell'istanza database `my-cdb-inst`.

**Example**  
Per Linux, macOS o Unix:  

```
1. aws rds modify-tenant-database --region us-east-1 \
2.     --db-instance-identifier my-cdb-inst \
3.     --tenant-db-name pdb1 \
4.     --new-tenant-db-name pdb-hr
```
Per Windows:  

```
1. aws rds modify-tenant-database --region us-east-1 ^
2.     --db-instance-identifier my-cdb-inst ^
3.     --tenant-db-name pdb1 ^
4.     --new-tenant-db-name pdb-hr
```
Questo comando genera un output simile al seguente.   

```
{
    "TenantDatabase" : {
        "DbiResourceId" : "db-abc123",
        "TenantDatabaseResourceId" : "tdb-bac567",
        "TenantDatabaseArn" : "arn:aws:rds:us-east-1:123456789012:db:my-cdb-inst:pdb1",
        "DBInstanceIdentifier" : "my-cdb-inst",
        "TenantDBName" : "pdb1",
        "Status" : "modifying",
        "MasterUsername" : "tenant-admin-user"
        "Port" : "6555",
        "CharacterSetName" : "UTF-16",
        "MaxAllocatedStorage" : "1000",
        "ParameterGroups": [
            {
                "ParameterGroupName": "pdb1-params",
                "ParameterApplyStatus": "in-sync"
            }
        ],
        "OptionGroupMemberships": [
            {
                "OptionGroupName": "pdb1-options",
                "Status": "in-sync"
            }
        ],
        "PendingModifiedValues": {
            "TenantDBName": "pdb-hr"
        }
    }
}
```

# Eliminazione di un database del tenant RDS per Oracle dal CDB
<a name="oracle-cdb-configuring.deleting.pdb"></a>

È possibile eliminare un database tenant (PDB) utilizzando l'API Console di gestione AWS AWS CLI, the o RDS. Considera i seguenti prerequisiti e limitazioni:
+ Il database del tenant e l'istanza database devono esistere.
+ Affinché l'eliminazione abbia esito positivo, è necessario che si verifichi una delle seguenti situazioni:
  + Il database del tenant e l'istanza database sono disponibili.
**Nota**  
È possibile acquisire uno snapshot finale, ma solo se il database del tenant e l'istanza database erano disponibili prima dell'emissione del comando `delete-tenant-database`. Questa istantanea verrà scattata sull'istanza principale solo se l'istanza DB contiene repliche di lettura.
  + Il database del tenant è in fase di creazione.
  + L'istanza database sta modificando il database del tenant.
  + Se l'istanza DB ha repliche di lettura, questi vincoli si applicano a tutte le repliche.
+ Non è possibile eliminare più database del tenant in un'unica operazione.
+ Non è possibile eliminare un database del tenant se è l'unico tenant nel CDB.
+ Non è possibile eliminare un database tenant su una replica di lettura, è possibile eliminare solo un tenant sull'istanza DB principale. Viene inoltre convalidato lo stato della replica, assicurando che il ritardo di replica sia inferiore a 5 minuti prima dell'eliminazione del tenant.

## Console
<a name="oracle-cdb-configuring.deleting.pdb.console"></a>

**Per eliminare un database del tenant**

1. Accedi a Console di gestione AWS e apri la console Amazon RDS all'indirizzo [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Nel pannello di navigazione, scegli **Database**, quindi scegli il database del tenant che vuoi eliminare.

1. In **Actions (Azioni)**, selezionare **Delete (Elimina)**.

1. Per creare uno snapshot DB finale per l’istanza database, abilitare **Create final snapshot? (Crea snapshot finale?)**.

1. Se si è scelto di creare uno snapshot finale, immettere il **Final snapshot name (Nome dello snapshot finale)**.

1. Immettere **delete me** nella casella.

1. Scegliere **Delete (Elimina)**.

## AWS CLI
<a name="oracle-cdb-configuring.deleting.pdb.cli"></a>

Per eliminare un database tenant utilizzando il AWS CLI, chiama il [delete-tenant-database](https://docs.aws.amazon.com/cli/latest/reference/rds/delete-tenant-database.html)comando con i seguenti parametri:
+ `--db-instance-identifier value`
+ `--tenant-db-name value`
+ `[--skip-final-snapshot | --no-skip-final-snapshot]`
+ `[--final-snapshot-identifier value]`

L'esempio seguente elimina il database dei tenant denominato *pdb-test* dal CDB denominato. *my-cdb-inst* Per impostazione predefinita, l'operazione crea uno snapshot finale.

**Example**  
Per Linux, macOS o Unix:  

```
1. aws rds delete-tenant-database --region us-east-1 \
2.     --db-instance-identifier my-cdb-inst \
3.     --tenant-db-name pdb-test \
4.     --final-snapshot-identifier final-snap-pdb-test
```
Per Windows:  

```
1. aws rds delete-tenant-database --region us-east-1 ^
2.     --db-instance-identifier my-cdb-inst ^
3.     --tenant-db-name pdb-test ^
4.     --final-snapshot-identifier final-snap-pdb-test
```
Questo comando genera un output simile al seguente.   

```
{
    "TenantDatabase" : {
        "DbiResourceId" : "db-abc123",
        "TenantDatabaseResourceId" : "tdb-bac456",
        "TenantDatabaseArn" : "arn:aws:rds:us-east-1:123456789012:db:my-cdb-inst:pdb-test",
        "DBInstanceIdentifier" : "my-cdb-inst",
        "TenantDBName" : "pdb-test",
        "Status" : "deleting",
        "MasterUsername" : "pdb-test-admin"
        "Port" : "6555",
        "CharacterSetName" : "UTF-16",
        "MaxAllocatedStorage" : "1000",
        "ParameterGroups": [
            {
                "ParameterGroupName": "tenant-1-params",
                "ParameterApplyStatus": "in-sync"
            }
        ],
        "OptionGroupMemberships": [
            {
                "OptionGroupName": "tenant-1-options",
                "Status": "in-sync"
            }
        ]
    }
}
```

# Visualizzazione dei dettagli del database del tenant
<a name="oracle-cdb-configuring.describing.pdb"></a>

È possibile visualizzare i dettagli su un database del tenant nello stesso modo in cui è possibile visualizzare i dettagli su un database non CDB o CDB.

## Console
<a name="oracle-cdb-configuring.describing.pdb.console"></a>

**Per visualizzare i dettagli su un database del tenant**

1. Accedi a Console di gestione AWS e apri la console Amazon RDS all'indirizzo [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Nell'angolo in alto a destra della console Amazon RDS, scegliere la Regione AWS  in cui si trova l'istanza database.

1. Nel pannello di navigazione, seleziona **Database**.  
![\[Visualizzazione dei dettagli su un CDB\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/UserGuide/images/cdb-list.png)

   Nell'immagine precedente, l'unico database del tenant (PDB) appare come figlio dell'istanza database.

1. Scegli il nome di un database del tenant.  
![\[Visualizzazione dei dettagli su un PDB\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/UserGuide/images/pdb-details.png)

## AWS CLI
<a name="oracle-cdb-configuring.describing.pdb.cli"></a>

Per visualizzare i dettagli sul tuo PDBs, usa il AWS CLI comando [describe-tenant-databases](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-tenant-databases.html).

L'esempio seguente descrive tutti i database del tenant nella regione specificata.

**Example**  
Per Linux, macOS o Unix:  

```
1. aws rds describe-tenant-databases --region us-east-1
```
Per Windows:  

```
1. aws rds describe-tenant-databases --region us-east-1
```
Questo comando genera un output simile al seguente.   

```
    "TenantDatabases" : [
         {
            "DBInstanceIdentifier" : "my-cdb-inst",
            "TenantDBName" : "pdb-test",
            "Status" : "available",
            "MasterUsername" : "pdb-test-admin",
            "DbiResourceId" : "db-abc123",
            "TenantDatabaseResourceId" : "tdb-bac456",
            "TenantDatabaseArn" : "arn:aws:rds:us-east-1:123456789012:db:my-cdb-inst:pdb-test",
            "CharacterSetName": "AL32UTF8",
            "NcharCharacterSetName": "AL16UTF16",
            "DeletionProtection": false,
            "PendingModifiedValues": {
                 "MasterUserPassword": "****"
            },
            "TagList": []
         },
         {

            "DBInstanceIdentifier" : "my-cdb-inst2",
            "TenantDBName" : "pdb-dev",
            "Status" : "modifying",
            "MasterUsername" : "masterrdsuser"
            "DbiResourceId" : "db-xyz789",
            "TenantDatabaseResourceId" : "tdb-ghp890",
            "TenantDatabaseArn" : "arn:aws:rds:us-east-1:123456789012:db:my-cdb-inst2:pdb-dev",
            "CharacterSetName": "AL32UTF8",
            "NcharCharacterSetName": "AL16UTF16",
            "DeletionProtection": false,
            "PendingModifiedValues": {
                 "MasterUserPassword": "****"
            },
            "TagList": []
         },
         ... other truncated data
```

L'esempio seguente descrive i database del tenant sull'istanza database `my-cdb-inst` nella regione specificata.

**Example**  
Per Linux, macOS o Unix:  

```
1. aws rds describe-tenant-databases --region us-east-1 \
2.     --db-instance-identifier my-cdb-inst
```
Per Windows:  

```
1. aws rds describe-tenant-databases --region us-east-1 ^
2.     --db-instance-identifier my-cdb-inst
```
Questo comando genera un output simile al seguente.   

```
{
    "TenantDatabase": {
        "TenantDatabaseCreateTime": "2023-10-19T23:55:30.046Z",
        "DBInstanceIdentifier": "my-cdb-inst",
        "TenantDBName": "pdb-hr",
        "Status": "creating",
        "MasterUsername": "tenant-admin-user",
        "DbiResourceId": "db-abc123",
        "TenantDatabaseResourceId": "tdb-bac567",
        "TenantDatabaseARN": "arn:aws:rds:us-west-2:579508833180:pdb-hr:tdb-abcdefghi1jklmno2p3qrst4uvw5xy6zabc7defghi8jklmn90op",
        "CharacterSetName": "AL32UTF8",
        "NcharCharacterSetName": "AL16UTF16",
        "DeletionProtection": false,
        "PendingModifiedValues": {
            "MasterUserPassword": "****"
        },
        "TagList": [
            {
                "Key": "TEST",
                "Value": "testValue"
            }
        ]
    }
}
```

L'esempio seguente descrive il database del tenant `pdb1` su un'istanza database `my-cdb-inst` nella Regione Stati Uniti orientali (Virginia settentrionale).

**Example**  
Per Linux, macOS o Unix:  

```
1. aws rds describe-tenant-databases --region us-east-1 \
2. --db-instance-identifier my-cdb-inst \
3. --tenant-db-name pdb1
```
Per Windows:  

```
1. aws rds describe-tenant-databases --region us-east-1 ^
2. --db-instance-identifier my-cdb-inst ^
3. --tenant-db-name pdb1
```
Questo comando genera un output simile al seguente.   

```
{
    "TenantDatabases" : [
        {
            "DbiResourceId" : "db-abc123",
            "TenantDatabaseResourceId" : "tdb-bac567",
            "TenantDatabaseArn" : "arn:aws:rds:us-east-1:123456789012:db:my-cdb-inst:pdb1"
            "DBInstanceIdentifier" : "my-cdb-inst",
            "TenantDBName" : "pdb1",
            "Status" : "ACTIVE",
            "MasterUsername" : "masterawsuser"
            "Port" : "1234",
            "CharacterSetName": "UTF-8",
            "ParameterGroups": [
                {
                    "ParameterGroupName": "tenant-custom-pg",
                    "ParameterApplyStatus": "in-sync"
                }
            ],
            {
            "OptionGroupMemberships": [
                {
                    "OptionGroupName": "tenant-custom-og",
                    "Status": "in-sync"
                }
            ]
         }
    ]
}
```

# Aggiornamento del CDB
<a name="Oracle.Concepts.single-tenant.upgrades"></a>

È possibile aggiornare un CDB a una versione diversa di Oracle Database. Ad esempio, è possibile aggiornare un database CDB da Oracle Database 19c a Oracle Database 21c. Non è possibile modificare l'architettura del database durante un aggiornamento. Pertanto, non è possibile aggiornare un database non CDB a un database CDB oppure aggiornare un database CDB a un database non CDB.

La procedura per aggiornare un database CDB a un database CDB è la stessa valida per l'aggiornamento da un database CDB non CDB a un database non CDB. Per ulteriori informazioni, consulta [Aggiornamento del motore di database RDS per Oracle](USER_UpgradeDBInstance.Oracle.md).