

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 delle tablespace in RDS per Oracle
<a name="Appendix.Oracle.CommonDBATasks.TablespacesAndDatafiles"></a>

È possibile utilizzare i tablespace con RDS for Oracle, un'unità di archiviazione logica che archivia i dati del database.

**Importante**  
Se l'istanza DB dispone di repliche, si consiglia di utilizzare le impostazioni dei gruppi di parametri anziché le modifiche a livello di sessione per gestire le posizioni dei file predefinite. Le modifiche a livello di sessione alle posizioni dei file predefinite nell'istanza principale non si riflettono automaticamente nelle repliche. L'utilizzo delle impostazioni dei gruppi di parametri garantisce la coerenza delle posizioni dei file tra le istanze primarie e di replica.

**Topics**
+ [Specificazione delle posizioni dei file di database in RDS for Oracle](#Appendix.Oracle.CommonDBATasks.DatabaseFileLocations)
+ [Creazione e dimensionamento di tablespace in RDS for Oracle](#Appendix.Oracle.CommonDBATasks.CreatingTablespacesAndDatafiles)
+ [Creazione di tablespace su volumi di archiviazione aggiuntivi in RDS per Oracle](#Appendix.Oracle.CommonDBATasks.CreatingTablespacesWithFileLocations)
+ [Impostazione del tablespace predefinito in RDS per Oracle](#Appendix.Oracle.CommonDBATasks.SettingDefaultTablespace)
+ [Impostazione del tablespace temporaneo predefinito in RDS per Oracle](#Appendix.Oracle.CommonDBATasks.SettingDefTempTablespace)
+ [Creazione di un tablespace temporaneo nell’archivio dell’istanza](#Appendix.Oracle.CommonDBATasks.creating-tts-instance-store)

## Specificazione delle posizioni dei file di database in RDS for Oracle
<a name="Appendix.Oracle.CommonDBATasks.DatabaseFileLocations"></a>

RDS per Oracle utilizza Oracle Managed Files (OMF) per denominare i file di database. Quando si creano file di database, il database ricava l'impostazione in base all'impostazione corrente del parametro di inizializzazione. `DB_CREATE_FILE_DEST`

Il valore predefinito del parametro di `DB_CREATE_FILE_DEST` inizializzazione è `/rdsdbdata/db` per i database autonomi e `/rdsdbdata/db/pdb` per l'architettura containerizzata (CDB/MT). Se l'istanza DB dispone di volumi di storage aggiuntivi, è possibile impostare le posizioni dei volumi. `DB_CREATE_FILE_DEST` Ad esempio, se la tua istanza ha un volume montato`/rdsdbdata/db`, puoi `DB_CREATE_FILE_DEST` impostarlo su questo valore.

È possibile modificare il `DB_CREATE_FILE_DEST` parametro a livello di sessione o a livello di istanza del database Oracle.

### Modifica di DB\$1CREATE\$1FILE\$1SET a livello di istanza
<a name="Appendix.Oracle.CommonDBATasks.InstanceLevelModification"></a>

Per modificare il parametro a livello di istanza, aggiorna il parametro nel gruppo di parametri assegnato all'istanza DB e applicalo. Per ulteriori informazioni, consultare [Parametri di inizializzazione di RDS per Oracle](Oracle.Concepts.FeatureSupport.Parameters.md) e [Modifica dei parametri in un gruppo di parametri database in Amazon RDS](USER_WorkingWithParamGroups.Modifying.md).

### Modifica di DB\$1CREATE\$1FILE\$1DEST a livello di sessione
<a name="Appendix.Oracle.CommonDBATasks.SessionLevelModification"></a>

È possibile modificare il parametro a livello di sessione eseguendo un'`ALTER SESSION`istruzione. Questo approccio è utile quando si desidera creare file di database in una posizione specifica per una sessione particolare senza influire sull'intera istanza.

L'esempio seguente mostra come controllare il valore corrente del parametro e modificarlo per la sessione:

```
SHOW PARAMETER db_create_file_dest

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_create_file_dest                  string      /rdsdbdata/db

ALTER SESSION SET db_create_file_dest = '/rdsdbdata2/db';

Session altered.

SHOW PARAMETER db_create_file_dest

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_create_file_dest                  string      /rdsdbdata2/db
```

## Creazione e dimensionamento di tablespace in RDS for Oracle
<a name="Appendix.Oracle.CommonDBATasks.CreatingTablespacesAndDatafiles"></a>

Quando si creano tablespace, il database crea i file di dati nel volume di archiviazione specificato dal parametro di inizializzazione al momento della `DB_CREATE_FILE_DEST` creazione. Per impostazione predefinita, se non si specifica una dimensione del file di dati, gli spazi di tabella vengono creati con il valore predefinito di `AUTOEXTEND ON` e nessuna dimensione massima. Nell'esempio seguente, il tablespace è estensibile automaticamente. *users1*

```
CREATE TABLESPACE users1;
```

A causa di queste impostazioni predefinite, i tablespace possono aumentare e occupare tutto lo spazio di archiviazione allocato. Consigliamo di specificare una dimensione massima appropriata per tablespace permanenti e temporanei e che monitori attentamente l’utilizzo di spazio. 

L'esempio seguente crea un tablespace denominato *users2* con una dimensione iniziale di 1 gigabyte. Poiché la dimensione di un file di dati è specificata, ma `AUTOEXTEND ON` non è specificato, lo spazio di tabella non è estensibile automaticamente.

```
CREATE TABLESPACE users2 DATAFILE SIZE 1G;
```

L'esempio seguente crea una tablespace denominata *users3* con una dimensione iniziale di 1 gigabyte, estensione automatica attivata e una dimensione massima di 10 gigabyte.

```
CREATE TABLESPACE users3 DATAFILE SIZE 1G AUTOEXTEND ON MAXSIZE 10G;
```

L'esempio seguente crea un tablespace temporaneo denominato. *temp01*

```
CREATE TEMPORARY TABLESPACE temp01;
```

Puoi ridimensionare un tablespace di file di grandi dimensioni utilizzando `ALTER TABLESPACE`. Puoi specificare le dimensioni in kilobyte (K), megabyte (M), gigabyte (G), o terabyte (T). L'esempio seguente ridimensiona uno spazio tabella di un file di grandi dimensioni denominato *users\$1bf* a 200 MB.

```
ALTER TABLESPACE users_bf RESIZE 200M;
```

L'esempio seguente aggiunge un file di dati aggiuntivo a una tablespace di file di piccole dimensioni denominata. *users\$1sf*

```
ALTER TABLESPACE users_sf ADD DATAFILE SIZE 100000M AUTOEXTEND ON NEXT 250m MAXSIZE UNLIMITED;
```

## Creazione di tablespace su volumi di archiviazione aggiuntivi in RDS per Oracle
<a name="Appendix.Oracle.CommonDBATasks.CreatingTablespacesWithFileLocations"></a>

Per creare un tablespace su un volume di archiviazione aggiuntivo, modificate il `DB_CREATE_FILE_DEST` parametro impostando la posizione del volume. L'esempio seguente imposta la posizione del file su. `/rdsdbdata2/db`

```
ALTER SESSION SET db_create_file_dest = '/rdsdbdata2/db';

Session altered.
```

Nell'esempio seguente, create una tablespace sul volume aggiuntivo. `/rdsdbdata2/db`

```
CREATE TABLESPACE new_tablespace DATAFILE SIZE 10G;

Tablespace created.

SELECT tablespace_name,file_id,file_name FROM dba_data_files
WHERE tablespace_name = 'NEW_TABLESPACE';

TABLESPACE_NAME              FILE_ID FILE_NAME
------------------------- ---------- --------------------------------------------------------------------------------
NEW_TABLESPACE                     7 /rdsdbdata2/db/ORCL_A/datafile/o1_mf_newtable_a123b4c5_.dbf
```

Per creare una tablespace di file di piccole dimensioni e distribuirne i file di dati su diversi volumi di archiviazione, aggiungi i file di dati alla tablespace dopo averla creata. Nell'esempio seguente, crei una tablespace con i file di dati nella posizione predefinita di. `/rdsdbdata/db` Quindi impostate la destinazione predefinita su. `/rdsdbdata/db2` Quando aggiungete un file di dati alla tablespace appena creata, il database memorizza il file in. `/rdsdbdata/db2`

```
ALTER SESSION SET db_create_file_dest = '/rdsdbdata/db';

Session altered.

CREATE SMALLFILE TABLESPACE smalltbs DATAFILE SIZE 10G;

Tablespace created.

SELECT tablespace_name,file_id,file_name FROM dba_data_files
WHERE tablespace_name = 'SMALLTBS';

TABLESPACE_NAME              FILE_ID FILE_NAME
------------------------- ---------- --------------------------------------------------------------------------------
SMALLTBS                           8 /rdsdbdata/db/ORCL_A/datafile/o1_mf_smalltbs_n563yryk_.dbf

ALTER SESSION SET db_create_file_dest = '/rdsdbdata2/db';

Session altered.

ALTER TABLESPACE smalltbs ADD DATAFILE SIZE 10G;

Tablespace altered.

SELECT tablespace_name,file_id,file_name FROM dba_data_files
WHERE tablespace_name = 'SMALLTBS';

TABLESPACE_NAME              FILE_ID FILE_NAME
------------------------- ---------- --------------------------------------------------------------------------------
SMALLTBS                           8 /rdsdbdata/db/ORCL_A/datafile/o1_mf_smalltbs_n563yryk_.dbf
SMALLTBS                           9 /rdsdbdata2/db/ORCL_A/datafile/o1_mf_smalltbs_n564004g_.dbf
```

## Impostazione del tablespace predefinito in RDS per Oracle
<a name="Appendix.Oracle.CommonDBATasks.SettingDefaultTablespace"></a>

Puoi usare la procedura in Amazon RDS per impostare lo spazio di tabella predefinito `rdsadmin.rdsadmin_util.alter_default_tablespace`. La procedura `alter_default_tablespace` include i seguenti parametri. 


****  

| Nome del parametro | Tipo di dati | Default | Campo obbligatorio | Descrizione | 
| --- | --- | --- | --- | --- | 
|  `tablespace_name`  |  varchar  |  —  |  Sì  |  Il nome dello spazio tabella predefinito.  | 

L'esempio seguente imposta il tablespace predefinito su: *users2* 

```
EXEC rdsadmin.rdsadmin_util.alter_default_tablespace(tablespace_name => 'users2');
```

## Impostazione del tablespace temporaneo predefinito in RDS per Oracle
<a name="Appendix.Oracle.CommonDBATasks.SettingDefTempTablespace"></a>

Puoi usare la procedura in Amazon RDS per impostare lo spazio di tabella temporaneo predefinito `rdsadmin.rdsadmin_util.alter_default_temp_tablespace`. La procedura `alter_default_temp_tablespace` include i seguenti parametri. 


****  

| Nome del parametro | Tipo di dati | Default | Campo obbligatorio | Descrizione | 
| --- | --- | --- | --- | --- | 
|  `tablespace_name`  |  varchar  |  —  |  Sì  |  Il nome dello spazio tabella predefinito temporaneo.  | 

L'esempio seguente imposta il tablespace temporaneo predefinito su. *temp01* 

```
EXEC rdsadmin.rdsadmin_util.alter_default_temp_tablespace(tablespace_name => 'temp01');
```

## Creazione di un tablespace temporaneo nell’archivio dell’istanza
<a name="Appendix.Oracle.CommonDBATasks.creating-tts-instance-store"></a>

Per creare un tablespace temporaneo nell’archivio dell’istanza, utilizza la procedura Amazon RDS `rdsadmin.rdsadmin_util.create_inst_store_tmp_tblspace`. La procedura `create_inst_store_tmp_tblspace` include i seguenti parametri. 


****  

| Nome del parametro | Tipo di dati | Default | Campo obbligatorio | Descrizione | 
| --- | --- | --- | --- | --- | 
|  `p_tablespace_name`  |  varchar  |  —  |  Sì  |  Il nome dello spazio di tabella temporaneo.  | 

L'esempio seguente crea il tablespace temporaneo *temp01* nell'instance store. 

```
EXEC rdsadmin.rdsadmin_util.create_inst_store_tmp_tblspace(p_tablespace_name => 'temp01');
```

**Importante**  
Durante l'esecuzione di `rdsadmin_util.create_inst_store_tmp_tblspace`, lo spazio di tabella temporaneo appena creato non viene impostato automaticamente come spazio di tabella temporaneo predefinito. Per impostarlo come predefinito, consulta [Impostazione del tablespace temporaneo predefinito in RDS per Oracle](#Appendix.Oracle.CommonDBATasks.SettingDefTempTablespace).

Per ulteriori informazioni, consulta [Archiviazione di dati temporanei in un archivio dell'istanza RDS per Oracle](CHAP_Oracle.advanced-features.instance-store.md).