

# Procedimientos almacenados de espacios de tablas de RDS para Db2
<a name="db2-sp-managing-tablespaces"></a>

Los procedimientos almacenados integrados que se describen en este tema administran espacios de tabla de bases de datos de Amazon RDS para Db2. Para ejecutar estos procedimientos, el usuario maestro debe conectarse primero a la base de datos `rdsadmin`. 

Estos procedimientos almacenados se utilizan en diversas tareas. Esta lista no es exhaustiva.
+ [Tareas comunes para espacios de tablas](db2-managing-tablespaces.md)
+ [Generación de informes de rendimiento](db2-managing-databases.md#db2-generating-performance-reports)
+ [Copia de metadatos de bases de datos con db2look](db2-native-db2-tools-db2look.md)
+ [Creación de una base de datos de repositorios para IBM Db2 Data Management Console](db2-connecting-with-ibm-data-management-console.md#db2-creating-repo-db-monitoring-dmc)

Consulte los siguientes procedimientos almacenados integrados para obtener información sobre su sintaxis, parámetros, notas de uso y ejemplos.

**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>

Crea un espacio de tabla.

### Sintaxis
<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')"
```

### Parameters
<a name="db2-sp-create-tablespace.parameters"></a>

Se requieren los siguientes parámetros: 

*database\$1name*  
Nombre de la base de datos en la que se creará el espacio de tabla. El tipo de datos es `varchar`.

*tablespace\$1name*  
Nombre del espacio tabla que se va a crear. El tipo de datos es `varchar`.  
El nombre del espacio de tabla tiene las siguientes restricciones:  
+ No puede ser el mismo que el nombre de un espacio de tabla existente en esta base de datos.
+ Solo puede contener los caracteres `_$#@a-zA-Z0-9`.
+ No puede empezar con `_` o `$`.
+ No puede empezar con `SYS`.

Los siguientes parámetros son opcionales:

*buffer\$1pool\$1name*  
Nombre del grupo de búferes al que se asignará el espacio de tabla. El tipo de datos es `varchar`. El valor predeterminado es una cadena vacía.  
Debe tener ya un grupo de búferes del mismo tamaño de página para asociarlo al espacio de tabla.

*tablespace\$1page\$1size*  
El tamaño de página del espacio de tabla en bytes. El tipo de datos es `integer`. Valores válidos: `4096`, `8192`, `16384`, `32768`. El tamaño predeterminado es el tamaño de página utilizado al crear la base de datos al llamar a [rdsadmin.create\$1database](db2-sp-managing-databases.md#db2-sp-create-database).  
Amazon RDS admite la atomicidad de escritura para páginas de 4 KiB, 8 KiB y 16 KiB. Por el contrario, las páginas de 32 KiB corren el riesgo de tener errores de escritura o de que se escriban datos parciales en el escritorio. Si utiliza páginas de 32 KiB, le recomendamos habilitar la recuperación a un momento dado y las copias de seguridad automáticas. De lo contrario, corre el riesgo de no poder recuperarse de las páginas con errores. Para obtener más información, consulte [Introducción a las copias de seguridad](USER_WorkingWithAutomatedBackups.md) y [Restauración de una instancia de base de datos a un momento especificado para Amazon RDS](USER_PIT.md).

*tablespace\$1initial\$1size*  
El tamaño inicial del espacio de tabla en kilobytes (KB). El tipo de datos es `integer`. Valores válidos: `48` o superiores. El valor predeterminado es null (nulo).   
Si no establece un valor, Db2 establece un valor adecuado para su caso.   
Este parámetro no se aplica a los espacios de tabla temporales porque los administra el sistema.

*tablespace\$1increase\$1size*  
El porcentaje en el que se va a aumentar el espacio de tabla cuando se llene. El tipo de datos es `integer`. Valores válidos: `1`-`100`. El valor predeterminado es null (nulo).  
Si no establece un valor, Db2 establece un valor adecuado para su caso.  
Este parámetro no se aplica a los espacios de tabla temporales porque los administra el sistema.

*tablespace\$1type*  
El tipo de espacio de tabla. El tipo de datos es `char`. Valores válidos: `U` (para datos de usuario), `T` (para datos temporales de usuario) o `S` (para datos temporales del sistema). El valor predeterminado es `U`.

*tablespace\$1prefetch\$1size*  
El tamaño de página de captura previa del espacio de tabla. El tipo de datos es `char`. Valores válidos: `AUTOMATIC` (no distingue entre mayúsculas y minúsculas) o enteros positivos distintos de cero que sean menores o iguales a 32767.

### Notas de uso
<a name="db2-sp-create-tablespace-usage-notes"></a>

RDS para Db2 siempre crea una base de datos de gran tamaño para los datos. 

Para obtener más información sobre cómo comprobar el estado de creación de un espacio de tabla, consulte [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status). 

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

**Ejemplo 1: creación de un espacio de tabla y asignación de un grupo de búferes**

En el siguiente ejemplo, se crea un espacio de tabla llamado `SP8` y se asigna un grupo de búferes llamado `BP8` para una base de datos llamada `TESTDB`. El espacio de tabla tiene un tamaño de página de espacio de tabla inicial de 4096 bytes, un espacio de tabla inicial de 1000 KB y el aumento de tamaño de tabla está establecido en el 50 %.

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

**Ejemplo 2: creación de un espacio de tabla temporal y asignación de un grupo de búferes**

En el siguiente ejemplo, se crea un espacio de tabla temporal llamado `SP8`. Asigna un grupo de búferes denominado `BP8` (con un tamaño de 8 KiB) a una base de datos llamada `TESTDB`.

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

**Ejemplo 3: Creación de un espacio de tablas y asignar un tamaño de página de captura previa**

El siguiente ejemplo crea un espacio de tabla llamado `SP8` para una base de datos llamada `TESTDB`. El espacio de tabla tiene un aumento de tamaño inicial del espacio de tabla de `50` y un tamaño de página de captura previa 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>

Modifica un espacio de tabla.

### Sintaxis
<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')"
```

### Parameters
<a name="db2-sp-alter-tablespace-parameters"></a>

Se requieren los siguientes parámetros: 

*database\$1name*  
Nombre de la base de datos que usa el espacio de tabla. El tipo de datos es `varchar`.

*tablespace\$1name*  
El nombre del espacio de tabla que se va a modificar. El tipo de datos es `varchar`.

Los siguientes parámetros son opcionales:

*buffer\$1pool\$1name*   
Nombre del grupo de búferes al que se asignará el espacio de tabla. El tipo de datos es `varchar`. El valor predeterminado es una cadena vacía.  
Debe tener ya un grupo de búferes del mismo tamaño de página para asociarlo al espacio de tabla.

*tablespace\$1increase\$1size*  
El porcentaje en el que se va a aumentar el espacio de tabla cuando se llene. El tipo de datos es `integer`. Valores válidos: `1`-`100`. El valor predeterminado es `0`.

*max\$1size*  
El tamaño máximo del espacio de tabla. El tipo de datos es `varchar`. Valores válidos: *número entero* `K` \$1 `M` \$1 `G` o `NONE`. El valor predeterminado es `NONE`.

*reduce\$1max*  
Especifica si se debe reducir la marca de agua máxima hasta su límite máximo. El tipo de datos es `char`. El valor predeterminado es `N`.

*reduce\$1stop*  
Especifica si se debe interrumpir un comando `reduce_max` o `reduce_value` anterior. El tipo de datos es `char`. El valor predeterminado es `N`.

*reduce\$1value*  
El número o porcentaje de reducción del límite máximo del espacio de tabla. El tipo de datos es `varchar`. Valores válidos: *número entero* `K`\$1 `M` \$1 `G` o `1`–`100`. El valor predeterminado es `N`.

*lower\$1high\$1water*  
Especifica si se debe ejecutar el comando `ALTER TABLESPACE LOWER HIGH WATER MARK`. El tipo de datos es `char`. El valor predeterminado es `N`.

*lower\$1high\$1water\$1stop*  
Especifica si se debe ejecutar el comando `ALTER TABLESPACE LOWER HIGH WATER MARK STOP`. El tipo de datos es `char`. El valor predeterminado es `N`.

*switch\$1online*  
Especifica si se debe ejecutar el comando `ALTER TABLESPACE SWITCH ONLINE`. El tipo de datos es `char`. El valor predeterminado es `N`.

*tablespace\$1prefetch\$1size*  
El tamaño de página de captura previa del espacio de tabla. El tipo de datos es `char`. Valores válidos: `AUTOMATIC` (no distingue entre mayúsculas y minúsculas) o enteros positivos distintos de cero que sean menores o iguales a 32767.  
Este parámetro solo funciona con `buffer_pool_name`, `table_increase_size`, `max_size` y `switch_online`. No funciona con `reduce_max`, `reduce_stop`, `reduce_value`, `lower_high_water` y `lower_high_water_stop`.

### Notas de uso
<a name="db2-sp-alter-tablespace-usage-notes"></a>

Antes de llamar al procedimiento almacenado, tenga en cuenta lo siguiente:
+ El procedimiento almacenado `rdsadmin.alter_tablespace` no funcionará en un espacio de tablas con el valor `tablespace_type` establecido en `T` para los datos temporales del usuario.
+ Los parámetros opcionales `reduce_max`, `reduce_stop`, `reduce_value`, `lower_high_water`, `lower_high_water_stop` y `switch_online` son mutuamente excluyentes. No puede combinarlos con ningún otro parámetro opcional, por ejemplo `buffer_pool_name`, en el comando `rdsadmin.alter_tablespace`. Para obtener más información, consulte [Statement not valid](db2-troubleshooting.md#alter-tablespace-sp-statement-not-valid).

Para obtener más información sobre cómo comprobar el estado de modificación de un espacio de tabla, consulte [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status). 

Para ver los mensajes de error devueltos al llamar a los procedimientos almacenados, consulte [Errores en los procedimientos almacenados](db2-troubleshooting.md#db2-troubleshooting-stored-procedures).

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

**Ejemplo 1: bajada de la marca de agua superior**

En el siguiente ejemplo, se modifica un espacio de tabla llamado `SP8` y se asigna un grupo de búferes llamado `BP8` a una base de datos llamada `TESTDB` para reducir el límite máximo.

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

**Ejemplo 2: reducción de la marca de agua superior**

El siguiente ejemplo ejecuta el comando `REDUCE MAX` en un espacio de tabla llamado `TBSP_TEST` en la base de datos `TESTDB`.

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

**Ejemplo 3: interrupción de comandos para reducir la marca de agua superior**

El siguiente ejemplo ejecuta el comando `REDUCE STOP` en un espacio de tabla llamado `TBSP_TEST` en la base de datos `TESTDB`. 

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

**Ejemplo 4: Cambio del tamaño de la página de captura previa existente**

En el siguiente ejemplo, se ejecuta el comando `ALTER TABLESPACE SWITCH ONLINE` en un espacio de tabla llamado `TSBP_TEST` y se cambia el tamaño de la página de captura previa existente a `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>

Cambia el nombre de un espacio de tabla.

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

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

### Parameters
<a name="db2-sp-rename-tablespace-parameters"></a>

Se requieren los siguientes parámetros:

?  
Un marcador de parámetros que genera un mensaje de error. Este parámetro solo acepta ?

*database\$1name*  
El nombre de la base de datos al que corresponde el espacio de tabla. El tipo de datos es `varchar`.

*source\$1tablespace\$1name*  
El nombre del espacio de tabla que se va a cambiar. El tipo de datos es `varchar`.

*target\$1tablespace\$1name*  
En nuevo nombre del espacio de tabla. El tipo de datos es `varchar`.  
El nuevo nombre tiene las siguientes restricciones:  
+ No puede ser el mismo que el nombre de un espacio de tabla existente.
+ Solo puede contener los caracteres `_$#@a-zA-Z0-9`.
+ No puede empezar con `_` o `$`.
+ No puede empezar con `SYS`.

### Notas de uso
<a name="db2-sp-rename-tablespace-usage-notes"></a>

Para obtener más información sobre cómo comprobar el estado de cambio de nombre de un espacio de tabla, consulte [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status).

No puede cambiar el nombre de espacios de tabla que pertenecen a la base de datos `rdsadmin`.

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

El siguiente ejemplo cambia el nombre de un espacio de tabla llamado `SP8` a `SP9` una base de datos llamada `TESTDB`.

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

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

Elimina un espacio de tabla.

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

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

### Parameters
<a name="db2-sp-drop-tablespace-parameters"></a>

Se requieren los siguientes parámetros:

*database\$1name*  
El nombre de la base de datos al que corresponde el espacio de tabla. El tipo de datos es `varchar`.

*tablespace\$1name*  
Nombre del espacio de tabla que se va a eliminar. El tipo de datos es `varchar`.

### Notas de uso
<a name="db2-sp-drop-tablespace-usage-notes"></a>

Para obtener más información sobre cómo comprobar el estado de eliminación de un espacio de tabla, consulte [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status).

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

El siguiente ejemplo elimina un espacio de tabla llamado `SP8` de una base de datos llamada `TESTDB`.

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