Gestione delle tablespace - Amazon Relational Database Service

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

Gestione delle tablespace

Le seguenti stored procedure gestiscono i tablespace per i database Amazon RDS for Db2. Per eseguire queste procedure, l'utente master deve prima connettersi al database. rdsadmin

rdsadmin.create_tablespace

Crea un tablespace.

Sintassi

db2 "call rdsadmin.create_tablespace( 'database_name', 'tablespace_name', 'buffer_pool_name', tablespace_page_size, tablespace_initial_size, tablespace_increase_size, 'tablespace_type')"

Parametri

I parametri seguenti sono obbligatori:

database_name

Il nome del database in cui creare il tablespace. Il tipo di dati è. varchar

tablespace_name

Il nome del tablespace da creare. Il tipo di dati è. varchar

Il nome del tablespace presenta le seguenti restrizioni:

  • Non può essere uguale al nome di un tablespace esistente in questo database.

  • Può contenere solo i caratteri. _$#@a-zA-Z0-9

  • Non può iniziare con _ o$.

  • Non può iniziare conSYS.

I parametri seguenti sono facoltativi:

buffer_pool_name

Il nome del pool di buffer da assegnare al tablespace. Il tipo di dati è. varchar L'impostazione predefinita è una stringa vuota.

Importante

È necessario disporre già di un pool di buffer della stessa dimensione di pagina da associare al tablespace.

tablespace_page_size

La dimensione della pagina del tablespace in byte. Il tipo di dati è. integer Valori validi: 4096, 8192, 16384, 32768. L'impostazione predefinita è la dimensione della pagina utilizzata quando è stato creato il database tramite chiamatardsadmin.create_database.

Importante

Amazon RDS supporta l'atomicità di scrittura per pagine da 4 KiB, 8 KiB e 16 KiB. Al contrario, le pagine da 32 KB rischiano scritture strappate o dati parziali che vengano scritti sulla scrivania. Se utilizzi pagine da 32 KiB, ti consigliamo di abilitare il point-in-time ripristino e i backup automatici. Altrimenti, corri il rischio di non riuscire a recuperare le pagine danneggiate. Per ulteriori informazioni, consulta Introduzione ai backup e Ripristino a un'ora specifica per un'istanza database.

tablespace_initial_size

La dimensione iniziale del tablespace in kilobyte (KB). Il tipo di dati è. integer Valori validi: 48 o superiori. Il valore predefinito è null.

Se non imposti un valore, Db2 imposta un valore appropriato per te.

Nota

Questo parametro non è applicabile alle tablespace temporanee perché il sistema gestisce le tablespace temporanee.

tablespace_increase_size

La percentuale con cui aumentare la tablespace quando è piena. Il tipo di dati è. integer Valori validi: 1100. Il valore predefinito è null.

Se non imposti un valore, Db2 imposta un valore appropriato per te.

Nota

Questo parametro non è applicabile alle tablespace temporanee perché il sistema gestisce le tablespace temporanee.

tablespace_type

Il tipo di tablespace. Il tipo di dati è. char Valori validi: U (per i dati utente), T (per i dati temporanei dell'utente) o S (per i dati temporanei del sistema). Il valore predefinito è U.

Note per l'utilizzo

RDSper Db2 crea sempre un database di dati di grandi dimensioni.

Per informazioni sulla verifica dello stato della creazione di un tablespace, vedere. rdsadmin.get_task_status

Esempi

L'esempio seguente crea un tablespace chiamato SP8 e assegna un pool di buffer chiamato per un database chiamato. BP8 TESTDB La tablespace ha una dimensione iniziale della pagina tablespace di 4.096 byte, una tablespace iniziale di 1.000 KB e un aumento delle dimensioni della tabella impostato al 50%.

db2 "call rdsadmin.create_tablespace( 'TESTDB', 'SP8', 'BP8', 4096, 1000, 50)"

L'esempio seguente crea un tablespace temporaneo chiamato. SP8 Assegna un pool di buffer chiamato BP8 della dimensione di 8 KB per un database chiamato. TESTDB

db2 "call rdsadmin.create_tablespace( 'TESTDB', 'SP8', 'BP8', 8192, NULL, NULL, 'T')"

rdsadmin.alter_tablespace

Modifica un tablespace.

Sintassi

db2 "call rdsadmin.alter_tablespace( 'database_name', 'tablespace_name', 'buffer_pool_name', tablespace_increase_size, 'max_size', 'reduce_max', 'reduce_stop', 'reduce_value', 'lower_high_water', 'lower_high_water_stop', 'switch_online')"

Parametri

I parametri seguenti sono obbligatori:

database_name

Il nome del database che utilizza il tablespace. Il tipo di dati è. varchar

tablespace_name

Il nome del tablespace da modificare. Il tipo di dati è. varchar

I parametri seguenti sono facoltativi:

buffer_pool_name

Il nome del pool di buffer da assegnare al tablespace. Il tipo di dati è. varchar L'impostazione predefinita è una stringa vuota.

Importante

È necessario disporre già di un pool di buffer della stessa dimensione di pagina da associare al tablespace.

tablespace_increase_size

La percentuale con cui aumentare la tablespace quando è piena. Il tipo di dati è. integer Valori validi: 1100. Il valore predefinito è 0.

max_size

La dimensione massima per il tablespace. Il tipo di dati è. varchar Valori validi: integer K| M |G, oppureNONE. Il valore predefinito è NONE.

reduce_max

Specifica se ridurre la soglia massima al limite massimo. Il tipo di dati èchar. Il valore predefinito è N.

reduce_stop

Speciifica se interrompere un comando reduce_max o reduce_value un comando precedente. Il tipo di dati è. char Il valore predefinito è N.

reduce_value

Il numero o la percentuale di cui ridurre il limite massimo consentito dalla tablespace. Il tipo di dati è. varchar Valori validi: integer K| M | G o 1100. Il valore predefinito è N.

lower_high_water

Specifica se eseguire il ALTER TABLESPACE LOWER HIGH WATER MARK comando. Il tipo di dati èchar. Il valore predefinito è N.

lower_high_water_stop

Speciifica se eseguire il ALTER TABLESPACE LOWER HIGH WATER MARK STOP comando. Il tipo di dati èchar. Il valore predefinito è N.

switch_online

Speciifica se eseguire il ALTER TABLESPACE SWITCH ONLINE comando. Il tipo di dati èchar. Il valore predefinito è N.

Note per l'utilizzo

I parametri opzionalireduce_max,reduce_stop,reduce_value, lower_high_waterlower_high_water_stop, e si switch_online escludono a vicenda. Non è possibile combinarli con nessun altro parametro opzionale, ad esempio buffer_pool_name nel rdsadmin.alter_tablespace comando. Se si combinano questi parametri con qualsiasi altro parametro opzionale del rdsadmin.alter_tablespace comando, all'esecuzionerdsadmin.get_task_status, Db2 restituirà un errore simile al seguente:

DB21034E The command was processed as an SQL statement because it was not a valid Command Line Processor command. During SQL processing it returned: SQL1763N Invalid ALTER TABLESPACE statement for table space "TBSP_TEST" due to reason "12"

Per informazioni sulla verifica dello stato della modifica di un tablespace, vedere. rdsadmin.get_task_status

Esempi

L'esempio seguente modifica un tablespace chiamato SP8 e assegna un buffer pool chiamato a un database chiamato BP8 per abbassare il limite massimo. TESTDB

db2 "call rdsadmin.alter_tablespace( 'TESTDB', 'SP8', 'BP8', NULL, NULL, 'Y')"

L'esempio seguente esegue il REDUCE MAX comando su un tablespace chiamato nel database. TBSP_TEST TESTDB

db2 "call rdsadmin.alter_tablespace( 'TESTDB', 'TBSP_TEST', NULL, NULL, NULL, 'Y')"

L'esempio seguente esegue il REDUCE STOP comando su una tablespace chiamata TBSP_TEST nel database. TESTDB

db2 "call rdsadmin.alter_tablespace( 'TESTDB', 'TBSP_TEST', NULL, NULL, NULL, NULL, 'Y')"

rdsadmin.rename_tablespace

Rinomina un tablespace.

Sintassi

db2 "call rdsadmin.rename_tablespace( ?, 'database_name', 'source_tablespace_name', 'target_tablespace_name')"

Parametri

I parametri seguenti sono obbligatori:

?

Un indicatore di parametro che emette un messaggio di errore. Questo parametro accetta solo?.

database_name

Il nome del database a cui appartiene il tablespace. Il tipo di dati è. varchar

source_tablespace_name

Il nome del tablespace da rinominare. Il tipo di dati è. varchar

target_tablespace_name

Il nuovo nome del tablespace. Il tipo di dati è. varchar

Il nuovo nome presenta le seguenti restrizioni:

  • Non può essere uguale al nome di un tablespace esistente.

  • Può contenere solo i caratteri. _$#@a-zA-Z0-9

  • Non può iniziare con _ o$.

  • Non può iniziare conSYS.

Note per l'utilizzo

Per informazioni sulla verifica dello stato della ridenominazione di una tablespace, consulta. rdsadmin.get_task_status

Non è possibile rinominare le tablespace che appartengono al database. rdsadmin

Esempi

L'esempio seguente rinomina un tablespace chiamato a in un database chiamato. SP8 SP9 TESTDB

db2 "call rdsadmin.rename_tablespace( ?, 'TESTDB', 'SP8'. 'SP9')"

rdsadmin.drop_tablespace

Elimina un tablespace.

Sintassi

db2 "call rdsadmin.drop_tablespace( 'database_name', 'tablespace_name')"

Parametri

I parametri seguenti sono obbligatori:

database_name

Il nome del database a cui appartiene il tablespace. Il tipo di dati è. varchar

tablespace_name

Il nome del tablespace da eliminare. Il tipo di dati è. varchar

Note per l'utilizzo

Per informazioni sulla verifica dello stato dell'eliminazione di una tablespace, consulta. rdsadmin.get_task_status

Esempi

L'esempio seguente elimina un tablespace chiamato da un database chiamatoSP8. TESTDB

db2 "call rdsadmin.drop_tablespace( 'TESTDB', 'SP8')"