

# Procedimentos armazenados para espaços de tabela do RDS para Db2
<a name="db2-sp-managing-tablespaces"></a>

Os procedimentos integrados armazenados descritos neste tópico gerenciam tablespaces para bancos de dados do Amazon RDS para Db2. Para executar esses procedimentos, o usuário principal deve primeiro se conectar ao banco de dados `rdsadmin`. 

Esses procedimentos armazenados são usados em diversas tarefas. Essa lista não é exaustiva.
+ [Tarefas comuns para espaços de tabela](db2-managing-tablespaces.md)
+ [Gerar relatórios de performance](db2-managing-databases.md#db2-generating-performance-reports)
+ [Cópia de metadados do banco de dados com db2look](db2-native-db2-tools-db2look.md)
+ [Criação de um banco de dados de repositório para IBM Db2 Data Management Console](db2-connecting-with-ibm-data-management-console.md#db2-creating-repo-db-monitoring-dmc)

Consulte os seguintes procedimentos integrados armazenados para obter informações sobre sintaxe, parâmetros, notas de uso e exemplos.

**Topics**
+ [rdsadmin.create\$1tablespace](#db2-sp-create-tablespace)
+ [rdsadmin.alter\$1tablespace](#db2-sp-alter-tablespace)
+ [rdsadmin.rename\$1tablespace](#db2-sp-rename-tablespace)
+ [rdsadmin.drop\$1tablespace](#db2-sp-drop-tablespace)

## rdsadmin.create\$1tablespace
<a name="db2-sp-create-tablespace"></a>

Cria um espaço de tabela.

### Sintaxe
<a name="db2-sp-create-tablespace-syntax"></a>

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

### Parâmetros
<a name="db2-sp-create-tablespace.parameters"></a>

Os seguintes parâmetros são obrigatórios: 

*database\$1name*  
O nome do banco de dados no qual criar o espaço de tabela. O tipo de dados é `varchar`.

*tablespace\$1name*  
O nome do espaço de tabela a ser criado. O tipo de dados é `varchar`.  
O nome do espaço de tabela tem as seguintes restrições:  
+ Não pode ser igual ao nome de um espaço de tabela existente nesse banco de dados.
+ Só pode conter os caracteres `_$#@a-zA-Z0-9`.
+ Não pode começar com `_` ou `$`.
+ Não pode começar com `SYS`.

Os seguintes parâmetros são opcionais:

*buffer\$1pool\$1name*  
O nome do grupo de buffer para atribuir ao espaço de tabela. O tipo de dados é `varchar`. O padrão é uma string vazia.  
É necessário já ter um grupo de buffers do mesmo tamanho de página para associar ao espaço de tabela.

*tablespace\$1page\$1size*  
O tamanho da página do espaço de tabela em bytes. O tipo de dados é `integer`. Valores válidos: `4096`, `8192`, `16384`, `32768`. O padrão é o tamanho da página usado quando você criou o banco de dados chamando [rdsadmin.create\$1database](db2-sp-managing-databases.md#db2-sp-create-database).  
O Amazon RDS é compatível com a atomicidade de gravação para páginas de 4 KiB, 8 KiB e 16 KiB. Por outro lado, páginas de 32 KiB correm o risco de interromper gravações ou de dados parciais serem gravados na mesa. Se estiver usando páginas de 32 KiB, recomendamos habilitar a recuperação para um ponto no tempo e os backups automatizados. Caso contrário, você corre o risco de não conseguir se recuperar de páginas interrompidas. Para obter mais informações, consulte [Introdução aos backups](USER_WorkingWithAutomatedBackups.md) e [Restaurar uma instância de banco de dados para um momento especificado no Amazon RDS](USER_PIT.md).

*tablespace\$1initial\$1size*  
O tamanho inicial do espaço de tabela em kilobytes (KB). O tipo de dados é `integer`. Valores válidos: `48` ou superior. O padrão é nulo.   
Se você não definir um valor, o Db2 definirá um valor apropriado para você.   
Esse parâmetro não é aplicável a espaços de tabela temporários, pois o sistema gerencia esses espaços.

*tablespace\$1increase\$1size*  
A porcentagem pela qual aumentar o espaço de tabela quando ele ficar cheio. O tipo de dados é `integer`. Valores válidos: `1` a `100`. O padrão é nulo.  
Se você não definir um valor, o Db2 definirá um valor apropriado para você.  
Esse parâmetro não é aplicável a espaços de tabela temporários, pois o sistema gerencia esses espaços.

*tablespace\$1type*  
O tipo do espaço de tabela. O tipo de dados é `char`. Valores válidos: `U` (para dados do usuário), `T` (para dados temporários do usuário) ou `S` (para dados temporários do sistema). O padrão é `U`.

*tablespace\$1prefetch\$1size*  
O tamanho da página de pré-busca do espaço de tabela. O tipo de dados é `char`. Valores válidos: `AUTOMATIC` (sem distinção entre maiúsculas e minúsculas) ou números inteiros positivos diferentes de zero que sejam menores ou iguais a 32767.

### Observações de uso
<a name="db2-sp-create-tablespace-usage-notes"></a>

O RDS para Db2 sempre cria um grande banco de dados para dados. 

Para ter informações sobre como conferir o status de criação de um espaço de tabela, consulte [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status). 

### Exemplos
<a name="db2-sp-create-tablespace-examples"></a>

**Exemplo 1: criação de um tablespace e atribuição de um pool de buffers**

O exemplo a seguir cria um espaço de tabela chamado `SP8` e atribui um grupo de buffers chamado `BP8` para um banco de dados chamado `TESTDB`. O espaço de tabela tem um tamanho de página de espaço de tabela inicial de 4.096 bytes, um espaço de tabela inicial de 1.000 KB e um aumento de tamanho de tabela definido como 50%.

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

**Exemplo 2: criação de um tablespace temporário e atribuição de um pool de buffers**

O exemplo a seguir cria um espaço de tabela temporário chamado `SP8`. Ele atribui um grupo de buffer chamado `BP8` que tem 8 KiB de tamanho para um banco de dados chamado `TESTDB`.

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

**Exemplo 3: criar um espaço de tabela e atribuir um tamanho de página de pré-busca**

O exemplo a seguir cria um espaço de tabela chamado `SP8` para um banco de dados chamado `TESTDB`. O espaço de tabela tem um tamanho inicial de aumento de `50` e um tamanho de página de pré-busca de `800`.

```
db2 "call rdsadmin.create_tablespace(
    'TESTDB',
    'SP8',
    NULL,
    NULL,
    NULL,
    50,
    NULL,
    '800')"
```

## rdsadmin.alter\$1tablespace
<a name="db2-sp-alter-tablespace"></a>

Altera um espaço de tabela.

### Sintaxe
<a name="db2-sp-alter-tablespace-syntax"></a>

```
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',
    'tablespace_prefetch_size')"
```

### Parâmetros
<a name="db2-sp-alter-tablespace-parameters"></a>

Os seguintes parâmetros são obrigatórios: 

*database\$1name*  
O nome do banco de dados que usa o espaço de tabela. O tipo de dados é `varchar`.

*tablespace\$1name*  
O nome do espaço de tabela a ser alterado. O tipo de dados é `varchar`.

Os seguintes parâmetros são opcionais:

*buffer\$1pool\$1name*   
O nome do grupo de buffer para atribuir ao espaço de tabela. O tipo de dados é `varchar`. O padrão é uma string vazia.  
É necessário já ter um grupo de buffers do mesmo tamanho de página para associar ao espaço de tabela.

*tablespace\$1increase\$1size*  
A porcentagem pela qual aumentar o espaço de tabela quando ele ficar cheio. O tipo de dados é `integer`. Valores válidos: `1` a `100`. O padrão é `0`.

*max\$1size*  
O tamanho máximo do espaço de tabela. O tipo de dados é `varchar`. Valores válidos: *inteiro* `K` \$1 `M` \$1 `G` ou `NONE`. O padrão é `NONE`.

*reduce\$1max*  
Especifica se a marca d'água alta deve ser reduzida até o limite máximo. O tipo de dados é `char`. O padrão é `N`.

*reduce\$1stop*  
Especifica se um comando anterior `reduce_max` ou `reduce_value` deve ser interrompido. O tipo de dados é `char`. O padrão é `N`.

*reduce\$1value*  
O número ou a porcentagem para reduzir o limite máximo do espaço de tabela. O tipo de dados é `varchar`. Valores válidos: *inteiro* `K`\$1 `M` \$1 `G` ou `1` a `100`. O padrão é `N`.

*lower\$1high\$1water*  
Especifica se o comando `ALTER TABLESPACE LOWER HIGH WATER MARK` deve ser executado. O tipo de dados é `char`. O padrão é `N`.

*lower\$1high\$1water\$1stop*  
Especifica se o comando `ALTER TABLESPACE LOWER HIGH WATER MARK STOP` deve ser executado. O tipo de dados é `char`. O padrão é `N`.

*switch\$1online*  
Especifica se o comando `ALTER TABLESPACE SWITCH ONLINE` deve ser executado. O tipo de dados é `char`. O padrão é `N`.

*tablespace\$1prefetch\$1size*  
O tamanho da página de pré-busca do espaço de tabela. O tipo de dados é `char`. Valores válidos: `AUTOMATIC` (sem distinção entre maiúsculas e minúsculas) ou números inteiros positivos diferentes de zero que sejam menores ou iguais a 32767.  
Esse parâmetro só funciona com `buffer_pool_name`, `table_increase_size`, `max_size` e `switch_online`. Não funciona com `reduce_max`, `reduce_stop`, `reduce_value`, `lower_high_water` e `lower_high_water_stop`.

### Observações de uso
<a name="db2-sp-alter-tablespace-usage-notes"></a>

Antes de chamar o procedimento armazenado, examine estas considerações:
+ O procedimento armazenado `rdsadmin.alter_tablespace` não funcionará em um espaço de tabela com o `tablespace_type` definido como `T` para dados temporários do usuário.
+ Os parâmetros opcionais `reduce_max`, `reduce_stop`, `reduce_value`, `lower_high_water`, `lower_high_water_stop` e `switch_online` são mutuamente excludentes. Não é possível combiná-los com nenhum outro parâmetro opcional, como `buffer_pool_name`, no comando `rdsadmin.alter_tablespace`. Para obter mais informações, consulte [Statement not valid](db2-troubleshooting.md#alter-tablespace-sp-statement-not-valid).

Para ter informações sobre como conferir o status de alteração de um espaço de tabela, consulte [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status). 

Para ver as mensagens de erro exibidas ao chamar procedimentos armazenados, consulte [Erros de procedimentos armazenados](db2-troubleshooting.md#db2-troubleshooting-stored-procedures).

### Exemplos
<a name="db2-sp-alter-tablespace-examples"></a>

**Exemplo 1: diminuição da marca d'água alta**

O exemplo a seguir altera um espaço de tabela chamado `SP8` e atribui um grupo de buffers denominado `BP8` para um banco de dados denominado `TESTDB` para reduzir a marca d'água alta.

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

**Exemplo 2: redução da marca d'água alta**

O exemplo a seguir executa o comando `REDUCE MAX` em um espaço de tabela chamado `TBSP_TEST` no banco de dados `TESTDB`.

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

**Exemplo 3: interrupção de comandos para reduzir a marca d'água alta**

O exemplo a seguir executa o comando `REDUCE STOP` em um espaço de tabela chamado `TBSP_TEST` no banco de dados `TESTDB`. 

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

**Exemplo 4: alterar o tamanho da página de pré-busca existente**

O exemplo a seguir executa o comando `ALTER TABLESPACE SWITCH ONLINE` em um espaço de tabela chamado `TSBP_TEST` e altera o tamanho da página de pré-busca existente para `64`. 

```
db2 "call rdsadmin.alter_tablespace(
    'TESTDB',
    'TBSP_TEST',
    NULL,
    NULL,
    NULL,
    NULL,
    NULL,
    NULL,
    NULL,
    NULL,
    ‘Y’,
    ‘64’)"
```

## rdsadmin.rename\$1tablespace
<a name="db2-sp-rename-tablespace"></a>

Renomeia um espaço de tabela.

### Sintaxe
<a name="db2-sp-rename-tablespace-syntax"></a>

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

### Parâmetros
<a name="db2-sp-rename-tablespace-parameters"></a>

Os seguintes parâmetros são obrigatórios:

?  
Um marcador de parâmetro que gera uma mensagem de erro. Esse parâmetro só aceita ?.

*database\$1name*  
O nome do banco de dados ao qual pertence o espaço de tabela. O tipo de dados é `varchar`.

*source\$1tablespace\$1name*  
O nome do espaço de tabela a ser renomeado. O tipo de dados é `varchar`.

*target\$1tablespace\$1name*  
O novo nome do espaço de tabela. O tipo de dados é `varchar`.  
O nome tem as seguintes restrições:  
+ Não pode ser igual ao nome de um espaço de tabela existente.
+ Só pode conter os caracteres `_$#@a-zA-Z0-9`.
+ Não pode começar com `_` ou `$`.
+ Não pode começar com `SYS`.

### Observações de uso
<a name="db2-sp-rename-tablespace-usage-notes"></a>

Para ter informações sobre como conferir o status da renomeação de um espaço de tabela, consulte [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status).

Não é possível renomear espaços de tabela que pertençam ao banco de dados `rdsadmin`.

### Exemplos
<a name="db2-sp-rename-tablespace-examples"></a>

O exemplo a seguir renomeia um espaço de tabela denominado `SP8` para `SP9` em um banco de dados chamado `TESTDB`.

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

## rdsadmin.drop\$1tablespace
<a name="db2-sp-drop-tablespace"></a>

Descarta um espaço de tabela.

### Sintaxe
<a name="db2-sp-drop-tablespace-syntax"></a>

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

### Parâmetros
<a name="db2-sp-drop-tablespace-parameters"></a>

Os seguintes parâmetros são obrigatórios:

*database\$1name*  
O nome do banco de dados ao qual pertence o espaço de tabela. O tipo de dados é `varchar`.

*tablespace\$1name*  
O nome do espaço de tabela a ser descartado. O tipo de dados é `varchar`.

### Observações de uso
<a name="db2-sp-drop-tablespace-usage-notes"></a>

Para ter informações sobre como conferir o status de descarte de um espaço de tabela, consulte [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status).

### Exemplos
<a name="db2-sp-drop-tablespace-examples"></a>

O exemplo a seguir descarta um espaço de tabela denominado `SP8` de um banco de dados chamado `TESTDB`.

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