

# Amazon RDS para Db2
<a name="CHAP_Db2"></a>

Amazon RDS admite instancias de base de datos que ejecutan las siguientes ediciones de IBM Db2:
+ Db2 Standard Edition
+ Db2 Advanced Edition

Amazon RDS admite instancias de base de datos que ejecutan las siguientes versiones de Db2:
+ Db2 11.5

Para obtener más información acerca de la compatibilidad con las versiones secundarias, consulte [Versiones de Db2 en Amazon RDS](Db2.Concepts.VersionMgmt.md).

Antes de crear una instancia de base de datos, complete los pasos que se describen en la sección [Configuración del entorno para Amazon RDS](CHAP_SettingUp.md) de esta guía del usuario. Cuando crea una instancia de base de datos con su usuario maestro, el usuario obtiene autoridad `DBADM`, con algunas limitaciones. Utilice este usuario para tareas administrativas, como crear cuentas de base de datos adicionales. No puede usar `SYSADM`, `SYSCTRL`, autoridad a nivel de instancia `SYSMAINT` ni autoridad a nivel de base de datos `SECADM`.

Puede crear lo siguiente: 
+ Instancias de base de datos
+ Instantáneas de base de datos
+ Restauraciones a un momento dado
+ Copias de seguridad de almacenamiento automatizadas 
+ Copias de seguridad de almacenamiento manuales

Puede utilizar instancias de base de datos que ejecuten Db2 en una nube privada virtual (VPC). También puede agregar características a la instancia de base de datos de Amazon RDS para Db2 habilitando diversas opciones. Amazon RDS admite implementaciones multi-AZ para RDS para Db2 como una solución de conmutación por error de alta disponibilidad.

**importante**  
Para ofrecer una experiencia de servicio administrado, Amazon RDS no proporciona acceso mediante shell a las instancias de base de datos. También restringe el acceso a ciertos procedimientos y tablas del sistema que requieren privilegios elevados. Puede acceder a la base de datos con clientes estándar de SQL, como IBM Db2 CLP. No obstante, no puede acceder al host directamente mediante Telnet o Secure Shell (SSH).

**Topics**
+ [Información general de Db2 en Amazon RDS](db2-overview.md)
+ [Requisitos previos para crear una instancia de base de datos de Amazon RDS para Db2](db2-db-instance-prereqs.md)
+ [Varias bases de datos en una instancia de base de datos de Amazon RDS para Db2](db2-multiple-databases.md)
+ [Conexión a la instancia de base de datos de Db2](USER_ConnectToDb2DBInstance.md)
+ [Protección de conexiones de instancias de bases de datos de Amazon RDS para Db2](Db2.Concepts.RestrictedDBAPrivileges.md)
+ [Administración de la instancia de base de datos de Amazon RDS para Db2](db2-administering-db-instance.md)
+ [Integración de una instancia de base de datos de Amazon RDS para Db2 con Amazon S3](db2-s3-integration.md)
+ [Migración de datos a Amazon RDS para Db2](db2-migrating-data-to-rds.md)
+ [Federación de Amazon RDS para Db2](db2-federation.md)
+ [Trabajo con las réplicas de Amazon RDS para Db2](db2-replication.md)
+ [Opciones de instancias de base de datos de Amazon RDS para Db2](Db2.Options.md)
+ [Procedimientos almacenados externos de Amazon RDS para Db2](db2-external-stored-procedures.md)
+ [Problemas conocidos y limitaciones para Amazon RDS para Db2](db2-known-issues-limitations.md)
+ [Referencia de procedimientos almacenados de Amazon RDS para Db2](db2-stored-procedures.md)
+ [Referencia de funciones definidas por el usuario de Amazon RDS para Db2](db2-user-defined-functions.md)
+ [Resolución de problemas de Amazon RDS para Db2](db2-troubleshooting.md)

# Información general de Db2 en Amazon RDS
<a name="db2-overview"></a>

Puede leer las siguientes secciones para obtener una descripción general de Db2 en Amazon RDS.

**Topics**
+ [Características de Amazon RDS para Db2](Db2.Concepts.FeatureSupport.md)
+ [Versiones de Db2 en Amazon RDS](Db2.Concepts.VersionMgmt.md)
+ [Opciones de licencias de Amazon RDS para Db2](db2-licensing.md)
+ [Amazon RDS para clases de instancia de Db2](Db2.Concepts.General.InstanceClasses.md)
+ [Roles predeterminados de Amazon RDS para Db2](db2-default-roles.md)
+ [Parámetros de Amazon RDS para Db2](db2-supported-parameters.md)
+ [Intercalación EBCDIC para bases de datos Db2 en Amazon RDS](db2-ebcdic.md)
+ [Zona horaria local para instancias de base de datos de Amazon RDS para Db2](db2-time-zone.md)

# Características de Amazon RDS para Db2
<a name="Db2.Concepts.FeatureSupport"></a>

Amazon RDS para Db2 admite la mayoría de las características y capacidades de la base de datos IBM Db2. Algunas características pueden disponer de una compatibilidad limitada o de privilegios restringidos. Para obtener más información sobre las características de la base de datos Db2 para versiones específicas de Db2, consulte la [documentación de IBM Db2](https://www.ibm.com/docs/en/db2).

Puede filtrar nuevas características de Amazon RDS en la página [Novedades de Database](https://aws.amazon.com/about-aws/whats-new/database/). En el filtro **Products** (Productos), elija **Amazon RDS**. A continuación, puede buscar con palabras clave como **Db2 2023**.

**nota**  
Las listas que siguen no son exhaustivas.

**Topics**
+ [Características admitidas de RDS para Db2](#db2-supported-features)
+ [Características no admitidas de RDS para Db2](#db2-unsupported-features)

## Características admitidas de RDS para Db2
<a name="db2-supported-features"></a>

RDS para Db2 admite características que incluyen las características nativas de IBM Db2 y las que son fundamentales de Amazon RDS.

### Características nativas de IBM Db2
<a name="db2-supported-features-native-db2"></a>

RDS para Db2 admite las siguientes características de bases de datos de Db2:
+ Creación de una base de datos estándar que utilice un conjunto de códigos, una intercalación, un tamaño de página y un territorio definidos por el cliente. Uso del procedimiento almacenado [rdsadmin.create\$1database](db2-sp-managing-databases.md#db2-sp-create-database) de Amazon RDS.
+ Adición, eliminación o modificación de usuarios y grupos locales. Uso de los procedimientos almacenados de Amazon RDS para [Procedimientos almacenados para conceder y revocar privilegios de RDS para Db2](db2-sp-granting-revoking-privileges.md).
+ Creación de roles con el procedimiento almacenado [rdsadmin.create\$1role](db2-sp-granting-revoking-privileges.md#db2-sp-create-role) de Amazon RDS.
+ Compatibilidad para tablas estándar organizadas en filas.
+ Compatibilidad para la carga de trabajo analítica para tablas organizadas en columnas.
+ Capacidad para definir características de compatibilidad con Db2, como Oracle y MySQL.
+ Compatibilidad con procedimientos almacenados externos basados en Java.
+ Compatibilidad con el cifrado de datos en tránsito mediante SSL/TLS.
+ Monitorización del estado de una base de datos (`ALIVE`, `DOWN`, `STORAGE_FULL`, `UNKNOWN` y `STANDBY_CONNECTABLE`).
+ Restauración de una base de datos Linux (LE) en línea o fuera de línea proporcionada por el cliente. Uso de procedimientos almacenados de Amazon RDS para [Procedimientos almacenados de bases de datos de RDS para Db2](db2-sp-managing-databases.md).
+ Aplicación de registros de archivo Db2 proporcionados por el cliente para mantener la base de datos sincronizada con las bases de datos Db2 autoadministradas. Uso de procedimientos almacenados de Amazon RDS para [Procedimientos almacenados de bases de datos de RDS para Db2](db2-sp-managing-databases.md).
+ Compatibilidad para la auditoría en el nivel de instancia y de base de datos de Db2.
+ Compatibilidad para la federación homogénea.
+ Capacidad para cargar una tabla a partir de archivos de datos en Amazon Simple Storage Service (Amazon S3).
+ Autorizaciones concedidas a usuarios, grupos o roles, tales como `CONNECT`, `SYSMON`, `ACCESSCTRL`, `DATAACCESS`, `SQLADM`, `WLMADM`, `EXPLAIN`, `LOAD` o `IMPLICIT_SCHEMA`.
+ Creación de varias bases de datos. 
**nota**  
Una instancia de base de datos de RDS para Db2 puede contener hasta 50 bases de datos. Para obtener más información, consulte [Varias bases de datos en una instancia de base de datos de Amazon RDS para Db2](db2-multiple-databases.md). 

### Características fundamentales de Amazon RDS
<a name="db2-supported-features-rds-core"></a>

RDS para Db2 es compatible con las siguientes características fundamentales de Amazon RDS:
+ Grupos de parámetros personalizados para asignar a las instancias de base de datos
+ Creación, modificación y eliminación de instancias de bases de datos
+ Restauración de una copia de seguridad autoadministrada de una base de datos Linux (LE) de Db2 en línea o sin conexión
**nota**  
Para poder restaurar la copia de seguridad, no proporcione un nombre para la base de datos al crear una instancia de base de datos. Para obtener más información, consulte [Creación de una instancia de base de datos de Amazon RDS](USER_CreateDBInstance.md).
+ Compatibilidad con los tipos de almacenamiento gp3, io2 e io1
+ Uso de AWS Managed Microsoft AD para la autenticación de Kerberos y la autorización de grupos LDAP para RDS para Db2
+ Modificación de los grupos de seguridad, los puertos, los tipos de instancias, el almacenamiento, los períodos de retención de las copias de seguridad y otros ajustes de las instancias de Db2 existentes
+ Protección contra eliminación para instancias de bases de datos
+ Recuperación en un momento dado (PITR) entre regiones, incluidas las copias de seguridad cifradas
+ Uso de AWS Key Management Service (AWS KMS) para el cifrado de almacenamiento y el cifrado en reposo
+ Instancias de base de datos multi-AZ con una en espera para alta disponibilidad
+ Reinicios de instancias de bases de datos
+ Actualizaciones de contraseñas maestras
+ Restauración de instancias de bases de datos a un momento especificado
+ Copia de seguridad y restauración de instancias de bases de datos mediante copias de seguridad de almacenamiento
+ Inicio y detención de instancias de bases de datos
+ Mantenimiento de instancias de bases de datos
+ Réplicas en espera y de lectura de la misma región y entre regiones

## Características no admitidas de RDS para Db2
<a name="db2-unsupported-features"></a>

RDS para Db2 no admite las siguientes funciones de bases de datos de Db2: 
+ Acceso a `SYSADM`, `SECADM` y `SYSMAINT` para el usuario maestro.
+ Procedimientos almacenados externos escritos en C, C\$1\$1 o Cobol.
+ Varias instancias de bases de datos Db2 en un único host.
+ Complementos GSS-API externos para la autenticación.
+ Complementos externos de terceros para realizar copias de seguridad o restaurar bases de datos de Db2.
+ Procesamiento masivo en paralelo (MPP) multinodo, como IBM Db2 Warehouse.
+ IBM Db2 pureScale.
+ Configuración manual de recuperación ante desastres de alta disponibilidad (HADR) para RDS para Db2.
**nota**  
Amazon RDS admite y administra HADR para RDS para Db2 a través de réplicas. Para obtener más información, consulte [Trabajo con las réplicas de Amazon RDS para Db2](db2-replication.md).  
RDS para Db2 admite implementaciones multi-AZ, copias de seguridad automatizadas entre regiones y replicación. Para obtener más información, consulte [Habilitación de implementaciones de instancias de bases de datos multi-AZ para Amazon RDS](Concepts.MultiAZSingleStandby.md) y [Replicación de las copias de seguridad automatizadas en otra Región de AWS](USER_ReplicateBackups.md).
+ Cifrado de bases de datos nativo.
+ Federación heterogénea para Informix, Sybase y Teradata. Para obtener más información, consulte [Federación de Amazon RDS para Db2](db2-federation.md).
+ Creación de rutinas no restringidas y migración de las rutinas no restringidas existentes mediante la creación de copias de seguridad y la restauración de los datos. Para obtener más información, consulte [Rutinas no restringidas](db2-known-issues-limitations.md#db2-known-issues-limitations-non-fenced-routines). 
+ Creación de nuevos espacios de tablas de almacenamiento no automáticos. Para obtener más información, consulte [Espacios de tablas de almacenamiento no automáticos durante la migración](db2-known-issues-limitations.md#db2-known-issues-limitations-non-automatic-storage-tablespaces).
+ Tablas externas.

# Versiones de Db2 en Amazon RDS
<a name="Db2.Concepts.VersionMgmt"></a>

En el caso de Db2, los números de versión adoptan la forma *major.minor.build.revision*, por ejemplo, 11.5.9.0.sb00000000.r1. La implementación de nuestra versión coincide con la de Db2.

**principal**  
El número de versión principal es tanto el entero como la primera parte fraccional del número de versión, por ejemplo, 11.5. Un cambio de versión se considera principal si el número de versión principal cambia, por ejemplo, si se pasa de la versión 11.5 a la 12.1.

**secundaria**  
El número de versión secundaria es tanto la tercera como la cuarta parte del número de versión, por ejemplo, el 9.0 de 11.5.9.0. La tercera parte indica el modpack de Db2, por ejemplo, el 9 en 9.0. La cuarta parte indica el fixpack de Db2, por ejemplo, el 0 en 9.0. Un cambio de versión se considera secundario si el modpack de Db2 o el fixpack de Db2 cambian; por ejemplo, si se pasa de la versión 11.5.9.0 a la 11.5.9.1 o de la 11.5.9.0 a la 11.5.10.0, con excepciones para actualizar las tablas del catálogo. (Amazon RDS se ocupa de estas excepciones).

**Creación de**  
El número de compilación es la quinta parte del número de versión, por ejemplo, sb00000000 en 11.5.9.0.sb00000000. Un número de compilación en el que la parte numérica está compuesta exclusivamente por ceros indica que se trata de una compilación estándar. Un número de compilación en el que la parte numérica no está compuesta exclusivamente por ceros indica que se trata de una compilación especial. El número de compilación cambia si hay una corrección de seguridad o una compilación especial de una versión de Db2 existente. Un cambio en el número de compilación también indica que Amazon RDS ha aplicado automáticamente una nueva versión secundaria.

**revision**  
El número de revisión es la sexta parte del número de versión, por ejemplo, r1 en 11.5.9.0.sb00000000.r1. Una revisión es una revisión de Amazon RDS de una versión de Db2 existente. Un cambio en el número de revisión indica que Amazon RDS ha aplicado automáticamente una nueva versión secundaria.

**Topics**
+ [Administración de actualizaciones para instancias de Amazon RDS Db2](Db2.Concepts.VersionMgmt.Supported.md)
+ [Versiones principales de Db2 compatibles en Amazon RDS](#Db2.Concepts.VersionMgmt.ReleaseCalendar)

# Administración de actualizaciones para instancias de Amazon RDS Db2
<a name="Db2.Concepts.VersionMgmt.Supported"></a>

Para ver la lista actual de versiones secundarias de Db2 compatibles en RDS, utilice uno de los siguientes comandos:

```
aws rds describe-db-engine-versions --engine db2-se
aws rds describe-db-engine-versions --engine db2-ae
```

Amazon RDS también admite la política de implementación de actualizaciones para administrar las actualizaciones automáticas de versiones secundarias en varios recursos de bases de datos y Cuentas de AWS. Para obtener más información, consulte [Uso de la política de implementación de actualizaciones de AWS Organizations para actualizaciones de versiones secundarias automáticas](RDS.Maintenance.AMVU.UpgradeRollout.md).

Puede especificar cualquier versión admitida actualmente de Db2 al crear una nueva instancia de base de datos. Puede especificar la versión principal (como Db2 11.5) y cualquier versión secundaria admitida para la versión principal especificada. Si no se especifica ninguna versión, Amazon RDS cambia de forma predeterminada a una versión admitida, normalmente la más reciente. Si se especifica una versión principal pero no una versión secundaria, Amazon RDS usa de manera predeterminada una versión reciente de la versión principal especificada. Para ver una lista de las versiones admitidas, así como de las versiones predeterminadas para instancias de bases de datos recién creadas, utilice el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-engine-versions.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-engine-versions.html) de la AWS Command Line Interface (AWS CLI). 

Por ejemplo, para enumerar las versiones de motor compatibles con Amazon RDS para Db2, ejecute el siguiente comando de la AWS CLI. Sustituya *region* por su Región de AWS.

Para Linux, macOS o Unix:

```
aws rds describe-db-engine-versions \
    --filters Name=engine,Values=db2-ae,db2-se \
    --query "DBEngineVersions[].{Engine:Engine, EngineVersion:EngineVersion, DBParameterGroupFamily:DBParameterGroupFamily}" \
    --region region
```

Para Windows:

```
aws rds describe-db-engine-versions ^
    --filters Name=engine,Values=db2-ae,db2-se ^
    --query "DBEngineVersions[].{Engine:Engine, EngineVersion:EngineVersion, DBParameterGroupFamily:DBParameterGroupFamily}" ^
    --region region
```

El resultado de este comando debería ser similar al siguiente ejemplo:

```
[
    {
    "Engine": "db2-ae",
    "EngineVersion": "11.5.9.0.sb00000000.r1",
    "DBParameterGroupFamily": "db2-ae-11.5"
    },
    {
    "Engine": "db2-se",
    "EngineVersion": "11.5.9.0.sb00000000.r1",
    "DBParameterGroupFamily": "db2-se-11.5"
    }
]
```

La versión predeterminada de Db2 puede variar según la Región de AWS. Para crear una instancia de base de datos con una versión secundaria concreta, especifique la versión secundaria durante la creación de la instancia de base de datos. Puede determinar la versión predeterminada de una Región de AWS para los motores de bases de datos `db2-ae` y `db2-se`ejecutando el comando ` describe-db-engine-versions`. En el siguiente ejemplo, se devuelve la versión predeterminada de `db2-ae` para Este de EE. UU. (Norte de Virginia).

Para Linux, macOS o Unix:

```
aws rds describe-db-engine-versions \
    --default-only --engine db2-ae \
    --query "DBEngineVersions[].{Engine:Engine, EngineVersion:EngineVersion, DBParameterGroupFamily:DBParameterGroupFamily}" \
    --region us-east-1
```

Para Windows:

```
aws rds describe-db-engine-versions ^
    --default-only --engine db2-ae ^
    --query "DBEngineVersions[].{Engine:Engine, EngineVersion:EngineVersion, DBParameterGroupFamily:DBParameterGroupFamily}" ^
    --region us-east-1
```

El resultado de este comando debería ser similar al siguiente ejemplo:

```
[
    {
    "Engine": "db2-ae",
    "EngineVersion": "11.5.9.0.sb00000000.r1",
    "DBParameterGroupFamily": "db2-ae-11.5"
    }
]
```

Con Amazon RDS, puede controlar cuándo se actualiza una instancia de Db2 a una nueva versión principal admitida por Amazon RDS. Puede mantener la compatibilidad con versiones específicas de Db2, probar nuevas versiones con una aplicación antes de implementarlas en producción y realizar las actualizaciones de versiones principales en el momento que le resulte más conveniente.

Cuando se habilita la actualización automática de versiones secundarias, Amazon RDS actualiza automáticamente sus instancias de bases de datos a nuevas versiones secundarias de Db2 a medida que sean compatibles con Amazon RDS. Los parches se instalan durante el periodo de mantenimiento programado. Puede modificar una instancia de base de datos para habilitar o desactivar actualizaciones automáticas de versiones secundarias. 

A excepción de las versiones 11.5.9.1 y 11.5.10.0 de Db2, las actualizaciones automáticas a la nueva versión secundaria de Db2 incluyen actualizaciones automáticas a nuevas versiones y revisiones. Para las versiones 11.5.9.1 y 11.5.10.0, actualice manualmente las versiones secundarias.

Si desactiva las actualizaciones programadas automáticamente, puede actualizar manualmente a una versión secundaria admitida siguiendo el mismo procedimiento que utilizaría para una actualización de la versión principal. Para obtener información, consulte [Actualización de una versión del motor de una instancia de base de datos ](USER_UpgradeDBInstance.Upgrading.md). 

## Versiones principales de Db2 compatibles en Amazon RDS
<a name="Db2.Concepts.VersionMgmt.ReleaseCalendar"></a>

Las versiones principales de RDS para Db2 están disponibles bajo soporte estándar al menos hasta el final de la vida útil de IBM (base) para la versión de IBM correspondiente. En la siguiente tabla se muestran las fechas que puede utilizar para planificar sus ciclos de prueba y actualización. Si Amazon amplía la compatibilidad con una versión de RDS para Db2 durante más tiempo de lo previsto originalmente, esta tabla se actualizará para reflejar la fecha posterior.

Puede utilizar las siguientes fechas para planificar sus ciclos de prueba y actualización. 

**nota**  
Las fechas con solo un mes y un año son aproximadas y se actualizan con una fecha exacta cuando se conoce.  
Puede ver las versiones principales de las bases de datos de Db2 ejecutando el comando [describe-db-major-engine-versions](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-major-engine-versions.html) de la AWS CLI o mediante la operación de la API de RDS [DescribeDBMajorEngineVersions](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBMajorEngineVersions.html).


| Versión principal de Db2  | Fecha de versión de IBM  | Fecha de versión de RDS  | Fin del soporte de IBM (edición Estándar y Avanzada) | Fin del soporte de IBM (extendido) | 
| --- | --- | --- | --- | --- | 
|  Db2 11.5  |  27 de junio de 2019  |  27 de noviembre de 2023  | 30 de abril de 2027 |  30 de abril de 2031  | 

# Opciones de licencias de Amazon RDS para Db2
<a name="db2-licensing"></a>

Amazon RDS para Db2 tiene dos opciones de licencias: traiga su propia licencia (BYOL) y licencia de Db2 a través de AWS Marketplace.

**Topics**
+ [Traiga su propia licencia (BYOL) para Db2](#db2-licensing-options-byol)
+ [Licencia de Db2 a través de AWS Marketplace](#db2-licensing-options-marketplace)
+ [Cambio entre licencias de Db2](#db2-edition-license-switching)

## Traiga su propia licencia (BYOL) para Db2
<a name="db2-licensing-options-byol"></a>

En el modelo BYOL, utiliza sus licencias existentes de Db2 para desplegar bases de datos en Amazon RDS. Compruebe que tiene la licencia de base de datos de Db2 adecuada para la clase de instancia de base de datos y la edición de base de datos de Db2 que desee ejecutar. También debe seguir las políticas de IBM en cuanto a licencias de software de bases de datos de IBM en el entorno de computación en la nube.

**nota**  
Las instancias de base de datos multi-AZ están en modo de espera inactivo porque la base de datos Db2 está instalada, pero no en ejecución. Las instancias en espera no son legibles, no se ejecutan ni atienden las solicitudes. Para obtener más información, consulte la [información sobre licencias de IBM Db2]( https://www.ibm.com/support/customer/csol/terms/licenses#license-search) en el sitio web de IBM.

En este modelo, continuará utilizando su cuenta de soporte de IBM activa y se pondrá en contacto con IBM directamente para las solicitudes de servicio relacionadas con las bases de datos Db2. Si tiene una cuenta de Soporte con soporte para incidencias, puede contactar a Soporte para solucionar problemas relacionados con Amazon RDS. Amazon Web Services y IBM tienen un proceso de soporte multiproveedor para las incidencias que necesitan asistencia por parte de las dos organizaciones. 

Amazon RDS admite el modelo BYOL para Db2 Standard Edition y Db2 Advanced Edition.

**Topics**
+ [ID de IBM para traiga su propia licencia (BYOL) para Db2](#db2-prereqs-ibm-info)
+ [Adición de ID de IBM a un grupo de parámetros para instancias de base de datos de RDS para Db2](#db2-licensing-options-byol-adding-ids)
+ [Integración de con AWS License Manager](#db2-lms-integration)

### ID de IBM para traiga su propia licencia (BYOL) para Db2
<a name="db2-prereqs-ibm-info"></a>

En el modelo BYOL, necesita su IBM Customer ID y su IBM Site ID para crear, modificar o restaurar instancias de base de datos RDS para Db2. Debe crear un grupo de parámetros personalizado con su IBM Customer ID y su IBM Site ID *antes* de crear una instancia de base de datos de RDS para Db2. Para obtener más información, consulte [Adición de ID de IBM a un grupo de parámetros para instancias de base de datos de RDS para Db2](#db2-licensing-options-byol-adding-ids). Puede ejecutar varias instancias de base de datos de RDS para Db2 con distintos IBM Customer IDs y IBM Site IDs en la misma Cuenta de AWS o Región de AWS. 

**importante**  
Si no podemos verificar su licencia con su IBM Customer ID y su IBM Site ID, podríamos cancelar cualquier instancia de base de datos que se ejecute con estas licencias no verificadas.

Si es un cliente nuevo de IBM Db2, primero debe comprar una licencia de software de Db2 en [https://www.ibm.com/products/db2/pricing](https://www.ibm.com/products/db2/pricing). Tras adquirir una licencia de software de Db2, recibirá un certificado de titularidad de IBM, en el que figuran su IBM Customer ID y su IBM Site ID.

Si ya es cliente de IBM Db2, puede encontrar su IBM Customer ID y su IBM Site ID en su certificado de titularidad de IBM. 

También puede encontrar su IBM Customer ID y su IBM Site ID en su cuenta de [IBM Passport Advantage Online](https://www.ibm.com/software/passportadvantage/pao_customer.html). Tras iniciar sesión, podrá ver ambos ID en la página principal o en la página de descargas de software.

### Adición de ID de IBM a un grupo de parámetros para instancias de base de datos de RDS para Db2
<a name="db2-licensing-options-byol-adding-ids"></a>

Como no puede modificar los grupos de parámetros predeterminados, debe crear un grupo de parámetros personalizado y, a continuación, modificarlo para incluir los valores de su IBM Customer ID y su IBM Site ID. Para obtener información acerca de los grupos de parámetros, consulte [Grupos de parámetros de base de datos para instancias de Amazon RDS](USER_WorkingWithDBInstanceParamGroups.md). 

**importante**  
Debe crear un grupo de parámetros personalizado con su IBM Customer ID y su IBM Site ID *antes* de crear una instancia de base de datos de RDS para Db2.

Utilice la configuración de parámetros en la tabla siguiente.


| Parámetro | Valor | 
| --- | --- | 
|  `rds.ibm_customer_id`  |  `<your IBM Customer ID>`  | 
|  `rds.ibm_site_id`  |  `<your IBM Site ID>`  | 
|  `ApplyMethod`  |  `immediate`, `pending-reboot`  | 

Estos parámetros son dinámicos, lo que significa que cualquier cambio en ellos se produce de forma inmediata y no es necesario reiniciar la instancia de base de datos. Si no desea que los cambios se apliquen de forma inmediata, puede configurar `ApplyMethod` como `pending-reboot` y programar estos cambios para que se realicen durante un período de mantenimiento.

Puede crear y modificar una instancia de base de datos mediante la Consola de administración de AWS, la AWS CLI o la API de Amazon RDS. 

#### Consola
<a name="db2-licensing-options-adding-ids-console"></a>

**Para agregar su IBM Customer ID y su IBM Site ID a un grupo de parámetros**

1. Cree un nuevo grupo de parámetros de base de datos. Para obtener más información acerca de cómo crear un grupo de parámetros de base de datos, consulte [Creación de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Creating.md).

1. Modifique el grupo de parámetros que ha creado. Para obtener más información acerca de cómo modificar un grupo de parámetros, consulte [Modificación de los parámetros de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Modifying.md).

#### AWS CLI
<a name="db2-licensing-options-adding-ids-cli"></a>

**Para agregar su IBM Customer ID y su IBM Site ID a un grupo de parámetros**

1. Cree un grupo de parámetros personalizado ejecutando el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-parameter-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-parameter-group.html). 

   Incluya las siguientes opciones obligatorias:
   + `--db-parameter-group-name`: un nombre para el grupo de parámetros que se está creando.
   + `--db-parameter-group-family`: la edición y la versión principal del motor de Db2. Valores válidos: `db2-se-11.5`, `db2-ae-11.5`. 
   + `--description`: la descripción para este grupo de parámetros.

   Para obtener más información acerca de cómo crear un grupo de parámetros de base de datos, consulte [Creación de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Creating.md).

1. Modifique los parámetros del grupo de parámetros personalizado que creó ejecutando el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-parameter-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-parameter-group.html).

   Incluya las siguientes opciones obligatorias:
   + `--db-parameter-group-name`: el nombre del grupo de parámetros creado.
   + `--parameters`: una matriz de los nombres de parámetros, valores y métodos de aplicación para la actualización del parámetro.

   Para obtener más información acerca de cómo modificar un grupo de parámetros, consulte [Modificación de los parámetros de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Modifying.md).

#### API de RDS
<a name="db2-licensing-options-adding-ids-api"></a>

**Para agregar su IBM Customer ID y su IBM Site ID a un grupo de parámetros**

1. Creación de un grupo de parámetros de base de datos personalizado con la operación [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBParameterGroup.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBParameterGroup.html) de la API de Amazon RDS.

   Incluya los siguientes parámetros obligatorios:
   + `DBParameterGroupName`
   + `DBParameterGroupFamily`
   + `Description`

   Para obtener más información acerca de cómo crear un grupo de parámetros de base de datos, consulte [Creación de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Creating.md).

1. Modifique los parámetros del grupo de parámetros personalizado que creó mediante la operación [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBParameterGroup.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBParameterGroup.html) de la API de RDS.

   Incluya los siguientes parámetros obligatorios:
   + `DBParameterGroupName`
   + `Parameters`

   Para obtener más información acerca de cómo modificar un grupo de parámetros, consulte [Modificación de los parámetros de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Modifying.md).

Ahora está listo para crear una instancia de base de datos y asociar el grupo de parámetros personalizado a la instancia de base de datos. Para obtener más información, consulte [Creación de una instancia de base de datos de Amazon RDS](USER_CreateDBInstance.md) y [Asociación de un grupo de parámetros de base de datos con una instancia de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Associating.md).

### Integración de con AWS License Manager
<a name="db2-lms-integration"></a>

Para ayudar a monitorear el uso de licencias de RDS para Db2 en el modelo BYOL, [AWS License Manager](https://aws.amazon.com/license-manager/) se integra con RDS para Db2. License Manager admite el seguimiento de las ediciones del motor de RDS para Db2 basadas en CPU virtuales (vCPU). También puede utilizar License Manager con AWS Organizations para administrar todas las cuentas de su organización de forma centralizada.

Para hacer un seguimiento del uso de licencias de las instancias de base de datos de RDS para Db2, debe crear licencias autoadministradas. Puede crear licencias autoadministradas mediante la Consola de administración de AWS, la CLI de AWS License Manager y la API de AWS License Manager. O bien, puede automatizar la creación de licencias autoadministradas con plantillas CloudFormation y Terraform. 

Los recursos de RDS para Db2 que coinciden con el filtro de información del producto se asocian automáticamente a la configuración de la licencia autoadministrada. La detección de instancias de base de datos de RDS para Db2 puede tardar hasta 24 horas.

En la siguiente tabla, se muestran los valores disponibles para el filtro de información del producto Edición del motor de RDS para Db2.


| Valor | Descripción | 
| --- | --- | 
|  `db2-se`  |  Db2 Standard Edition  | 
|  `db2-ae`  |  Db2 Advanced Edition  | 

**Topics**
+ [Terminología](#db2-lms-integration-terms)
+ [Creación de una licencia autoadministrada en AWS License Manager](#db2-lms-integration-tracking)
+ [Automatización de la creación de licencias autoadministradas en AWS License Manager con plantillas](#db2-lms-integration-templates)
+ [Ajustes para crear licencias autoadministradas](#db2-settings-lms)

#### Terminología
<a name="db2-lms-integration-terms"></a>

En esta página se utilizan los siguientes términos al hablar de la integración de Amazon RDS con AWS License Manager.

Licencia autoadministrada  
La licencia autoadministrada es un término que se utiliza en AWS License Manager. La consola de Amazon RDS hace referencia a la licencia como una configuración de AWS License Manager. Una licencia autoadministrada incluye reglas de asignación de licencias que se basan en las condiciones de los acuerdos de su empresa. Las reglas que cree determinan el modo en que AWS procesa los comandos que consumen licencias. Cuando cree una licencia autoadministrada, trabaje en estrecha colaboración con el equipo de conformidad de su organización para revisar los acuerdos de su empresa. Para obtener más información, consulte [Self-managed licenses in License Manager](https://docs.aws.amazon.com/license-manager/latest/userguide/license-configurations.html).

#### Creación de una licencia autoadministrada en AWS License Manager
<a name="db2-lms-integration-tracking"></a>

Puede crear una licencia autoadministrada mediante la Consola de administración de AWS, la CLI de AWS License Manager y la API de AWS License Manager.

**nota**  
Si crea una instancia de base de datos de RDS para Db2 mediante la Consola de administración de AWS, creará una licencia autoadministrada al introducir un nombre para la licencia. A continuación, Amazon RDS asocia la instancia de base de datos a esta licencia. (en la consola de Amazon RDS, se hace referencia a esta licencia como una configuración de AWS License Manager). Si desea crear una instancia de base de datos de RDS para Db2 mediante la CLI de AWS License Manager o la API de AWS License Manager, primero debe crear una licencia autoadministrada con los siguientes pasos. La misma situación se aplica a la restauración de una instancia de base de datos de RDS para Db2 a un momento determinado o a partir de una instantánea.

##### Consola
<a name="db2-lms-integration.console"></a>

**Creación de una licencia autoadministrada para realizar un seguimiento del uso de licencias de sus instancias de base de datos de RDS para Db2**

1. Vaya a [https://console.aws.amazon.com/license-manager/](https://console.aws.amazon.com/license-manager/).

1. Cree una licencia autoadministrada.

   Para obtener instrucciones, consulte [Create a self-managed license](https://docs.aws.amazon.com/license-manager/latest/userguide/create-license-configuration.html) en la *Guía del usuario de AWS License Manager*.

   Agregue una regla para un **RDS Product Information Filter (Filtro de información del producto de RSD)** en el panel **Product Information (Información del producto)**.

   Para obtener más información, consulte [ProductInformation](https://docs.aws.amazon.com/license-manager/latest/APIReference/API_ProductInformation.html) en la *Referencia de la API de AWS License Manager*.

##### AWS License Manager CLI
<a name="db2-lms-integration.cli"></a>

**nota**  
Este procedimiento utiliza el comando de la CLI de AWS License Manager.

Para crear una licencia autoadministrada mediante la AWS CLI, ejecute el comando [create-license-configuration](https://docs.aws.amazon.com/cli/latest/reference/license-manager/create-license-configuration.html) de AWS License Manager. Utilice las opciones `--cli-input-json` o `--cli-input-yaml` para pasar las opciones al comando. 

Para obtener más información, consulte [Ajustes para crear licencias autoadministradas](#db2-settings-lms).

El siguiente código crea una licencia autoadministrada para Db2 Standard Edition.

```
aws license-manager create-license-configuration --cli-input-json file://rds-db2-se.json
```

El siguiente JSON es el contenido del archivo `rds-db2-se.json` utilizado en el comando anterior.

```
{
    "Name": "rds-db2-se",
    "Description": "RDS Db2 Standard Edition",
    "LicenseCountingType": "vCPU",
    "LicenseCountHardLimit": false,
    "ProductInformationList": [
        {
            "ResourceType": "RDS",
            "ProductInformationFilterList": [
                {
                    "ProductInformationFilterName": "Engine Edition",
                    "ProductInformationFilterValue": ["db2-se"],
                    "ProductInformationFilterComparator": "EQUALS"
                }
            ]
        }
    ]
}
```

Para obtener más información acerca de la información del producto, consulte [Detección automatizada del inventario de recursos](https://docs.aws.amazon.com/license-manager/latest/userguide/automated-discovery.html) en la *Guía del usuario de AWS License Manager*.

Para obtener más información sobre el parámetro `--cli-input`, consulte [Generar AWS CLIel esqueleto y los parámetros de entrada a partir de un archivo de entrada JSON o YAML ](https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-skeleton.html)en la *AWS CLIGuía del usuario de* 

##### AWS License ManagerAPI
<a name="db2-lms-integration.api"></a>

**nota**  
Este procedimiento utiliza el comando de la API de AWS License Manager.

Para crear una licencia autoadministrada, utilice la operación de la API de AWS License Manager [https://docs.aws.amazon.com/license-manager/latest/APIReference/API_CreateLicenseConfiguration.html](https://docs.aws.amazon.com/license-manager/latest/APIReference/API_CreateLicenseConfiguration.html) con los siguientes parámetros obligatorios:
+ `Name`
+ `LicenseCountingType` 
+ `ProductInformationList`
+ `ResourceType`
+ `ProductInformationFilterList`
+ `ProductInformationFilterName`
+ `ProductInformationFilterValue`
+ `ProductInformationFilterComparator`

Para obtener más información acerca de los parámetros , consulte [Ajustes para crear licencias autoadministradas](#db2-settings-lms).

#### Automatización de la creación de licencias autoadministradas en AWS License Manager con plantillas
<a name="db2-lms-integration-templates"></a>

Puede automatizar la creación de licencias autoadministradas usando las plantillas CloudFormation y Terraform.

La siguiente plantilla CloudFormation de ejemplo crea licencias autoadministradas para Db2 Standard Edition en RDS para Db2. Para una plantilla para Db2 Advanced Edition, actualice los valores de `Name`, `Description` y `ProductInformationFilter`.

```
AWSTemplateFormatVersion: "2010-09-09"
Description: CloudFormation template to create a License Configuration for Db2 Standard Edition on RDS for Db2.

Resources:
  Db2LicenseConfiguration:
    Type: "AWS::LicenseManager::LicenseConfiguration"
    Properties:
      Name: "rds-db2-se"
      Description: "Db2 Standard Edition on RDS for Db2"
      LicenseCountingType: "vCPU"
      LicenseCountHardLimit: false
      ProductInformationList:
        - ResourceType: "RDS"
          ProductInformationFilterList:
            - ProductInformationFilterName: "Engine Edition"
              ProductInformationFilterValue:
                - "db2-se"
              ProductInformationFilterComparator: "EQUALS"
```

 Para obtener más información sobre el uso de CloudFormation con Amazon RDS, consulte [Creación de recursos de Amazon RDS con AWS CloudFormation](creating-resources-with-cloudformation.md).

La siguiente plantilla Terraform de ejemplo crea licencias autoadministradas para Db2 Standard Edition en RDS para Db2. Sustituya *us-east-1* por su Región de AWS. Para una plantilla para Db2 Advanced Edition, actualice los valores de `name`, `description` y `product_information_filter`.

```
provider "aws" {
  region = "us-east-1"
}

resource "aws_licensemanager_license_configuration" "rds_db2_license_config" {
  name                     = "rds-db2-se"
  description              = "Db2 Standard Edition on RDS for Db2
  license_counting_type    = "vCPU"
  license_count_hard_limit = false

  product_information_list {
    resource_type = "RDS"

    product_information_filter {
      name       = "Engine Edition"
      comparator = "EQUALS"
      value      = ["db2-se"]
    }
  }
}
```

Para obtener más información sobre el uso de Terraform y Amazon RDS, consulte [Using Terraform as an IaC tool for the Nube de AWS](https://docs.aws.amazon.com/prescriptive-guidance/latest/choose-iac-tool/terraform.html) y [Best practices for using the Terraform AWS Provider](https://docs.aws.amazon.com/prescriptive-guidance/latest/terraform-aws-provider-best-practices/introduction.html) en *Recomendaciones de AWS*.

#### Ajustes para crear licencias autoadministradas
<a name="db2-settings-lms"></a>

En la siguiente tabla, podrá encontrar información sobre la configuración para crear licencias autoadministradas mediante la CLI de AWS License Manager, la API de AWS License Manager, una plantilla de CloudFormation y una plantilla de Terraform. El nombre del parámetro de la siguiente tabla aparece en el formato del nombre utilizado en la API de AWS License Manager y la plantilla de CloudFormation.


| Nombre del parámetro | Tipo de datos | Obligatorio | Descripción | 
| --- | --- | --- | --- | 
|  Nombre  |  cadena  |  Sí  |  El nombre de la configuración de la licencia.  | 
|  Descripción  |  cadena  |  No  |  La descripción de la configuración de la licencia.  | 
|  LicenseCountingType  |  cadena  |  Sí  |  La dimensión utilizada para realizar un seguimiento del inventario de licencias. Valor válido: `vCPU`.  | 
| LicenseCountHardLimit | booleano | No | Indica si se utiliza una aplicación de licencias estricta o flexible. Si se supera el límite estricto, se bloqueará el lanzamiento de nuevas instancias. | 
|  ProductInformationList  |  matriz de objetos  |  Sí  | Una lista de información del producto para la configuración de una licencia. | 
|  ResourceType  |  cadena  |  Sí  |  El tipo de recurso. Valor válido: `RDS`.  | 
|  ProductInformationFilterList  |  matriz de objetos  |  Sí  |  Una lista de filtros de información del producto para la configuración de una licencia.  | 
|  ProductInformationFilterName  |  cadena  |  Sí  |  El nombre del tipo de filtro que se está declarando. Valor válido: `Engine Edition`.  | 
|  ProductInformationFilterValue  |  matriz de cadenas  | Sí |  Valor para filtrar. Puede especificar solo un valor. Valores válidos: `db2-se` o `db2-ae`.  | 
| ProductInformationFilterComparator |  cadena  |  Sí  | El operador lógico de ProductInformationFilterName. Valor válido: EQUALS. | 

## Licencia de Db2 a través de AWS Marketplace
<a name="db2-licensing-options-marketplace"></a>

En la licencia Db2 a través del modelo AWS Marketplace, se paga una tarifa por hora para suscribirse a licencias de Db2. Este modelo le ayuda a empezar rápidamente con RDS para Db2 sin necesidad de adquirir licencias. 

Para utilizar la licencia Db2 a través de AWS Marketplace, necesita una suscripción de AWS Marketplace activa para la edición de IBM Db2 concreta que quiera usar. Si aún no tiene una, [suscríbase a AWS Marketplace](#db2-marketplace-subscribing-registering) para esa edición IBM Db2.

Amazon RDS admite la licencia de Db2 a través de AWS Marketplace para la edición estándar de IBM Db2 y la edición avanzada de IBM Db2.

**Topics**
+ [Terminología](#db2-marketplace-terminology)
+ [Pagos y facturación](#db2-marketplace-billing)
+ [Suscripción a listados de Db2 Marketplace y registro con IBM](#db2-marketplace-subscribing-registering)
+ [Obtención de una oferta privada](#db2-marketplace-private-offer)

### Terminología
<a name="db2-marketplace-terminology"></a>

En esta página se utilizan los siguientes términos al hablar de la integración de Amazon RDS con AWS Marketplace.

Suscripción a SaaS  
En AWS Marketplace, los productos de software como servicio (SaaS), como el modelo de licencia de pago por uso, adoptan un modelo de suscripción basado en el uso. IBM, que es el vendedor de software de Db2, realiza un seguimiento de su uso y usted solo paga por lo que usa.

Oferta pública  
Las ofertas públicas le permiten adquirir productos de AWS Marketplace directamente desde la Consola de administración de AWS.

Oferta privada  
Las ofertas privadas son un programa de compra que permite a los vendedores y compradores negociar unas condiciones del contrato de licencia del usuario final (CLUF) y unos precios personalizados para compras en AWS Marketplace.

Tarifas de Db2 Marketplace  
Las tarifas que cobra IBM por el uso de la licencia de software de Db2. Estas tarifas de servicio se calculan íntegramente a través de AWS Marketplace y aparecen en su factura de AWS, en la sección AWS Marketplace correspondiente.

Cuotas de Amazon RDS  
Las tarifas que cobra AWS por el RDS para los servicios de Db2, que no incluyen las licencias cuando se utiliza AWS Marketplace para licencias de Db2. Las tarifas se calculan a través de los servicios de Amazon RDS que se utilizan y aparecen en su factura de AWS.

### Pagos y facturación
<a name="db2-marketplace-billing"></a>

RDS para Db2 se integra con AWS Marketplace para ofrecer licencias de Db2 de pago por uso y por hora. Las tarifas de Db2 Marketplace incluyen los costos de licencia del software de Db2 y las tarifas de Amazon RDS incluyen los costos del uso que haga de la instancia de base de datos de RDS para Db2. Para obtener más información acerca de los precios, consulte [Precios de Amazon RDS para Db2](https://aws.amazon.com/rds/db2/pricing/).

Para cancelar las tarifas, debe eliminar cualquier instancia de base de datos de RDS para Db2. Además, puede eliminar sus suscripciones a AWS Marketplace de las licencias de Db2. Si elimina las suscripciones sin eliminar las instancias de base de datos, Amazon RDS seguirá facturándole por el uso de las instancias de base de datos. Para obtener más información, consulte [Eliminación de una instancia de base de datos](USER_DeleteInstance.md).

Puede ver las facturas y administrar los pagos de sus instancias de base de datos de RDS para Db2 que utilizan una licencia de Db2 a través AWS Marketplace en la [consola de AWS Billing](https://console.aws.amazon.com/billing). Sus facturas incluyen dos cargos: uno por el uso de la licencia de Db2 a través de AWS Marketplace y otro por el uso de Amazon RDS. Para obtener más información, consulte [Viewing your bill](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/getting-viewing-bill.html) en la *Guía de usuario de Administración de facturación y costos de AWS*.

### Suscripción a listados de Db2 Marketplace y registro con IBM
<a name="db2-marketplace-subscribing-registering"></a>

Para utilizar la licencia de Db2 a través de AWS Marketplace, debe utilizar la Consola de administración de AWS para completar las dos tareas siguientes. No puede completar estas tareas a través de la AWS CLI o de la API de RDS.

**nota**  
Si quiere crear sus instancias de base de datos mediante la AWS CLI o la API de RDS, primero debe completar estas dos tareas.

**Topics**
+ [Tarea 1: suscribirse a Db2 en AWS Marketplace](#db2-marketplace-subscribing)
+ [Tarea 2: registre su suscripción con IBM](#db2-marketplace-registering)

#### Tarea 1: suscribirse a Db2 en AWS Marketplace
<a name="db2-marketplace-subscribing"></a>

Para utilizar la licencia de Db2 con AWS Marketplace, debe tener una suscrición a AWS Marketplace activa para Db2. Como las suscripciones están asociadas a una edición de IBM Db2 específica, debe suscribirse a Db2 en AWS Marketplace para cada edición de Db2 que desee utilizar: [edición avanzada de IBM Db2](https://aws.amazon.com/marketplace/pp/prodview-w6m4yctzzy5fk), [edición estándar de IBM Db2](https://aws.amazon.com/marketplace/pp/prodview-gbsgwalbkphv6). Para obtener información sobre suscripciones de AWS Marketplace, consulte [Saas usage-based subscriptions](https://docs.aws.amazon.com/marketplace/latest/buyerguide/buyer-saas-products.html#saas-pricing-models) en la *AWS Marketplace Buyer Guide*.

Le recomendamos que se suscriba a Db2 en AWS Marketplace *antes* de empezar a [crear una instancia de base de datos](USER_CreateDBInstance.md). 

#### Tarea 2: registre su suscripción con IBM
<a name="db2-marketplace-registering"></a>

Tras suscribirse a Db2 en AWS Marketplace, complete el registro de su pedido de IBM desde la página de AWS Marketplace correspondiente al tipo de suscripción a Db2 que haya elegido. En la página de AWS Marketplace, elija **Ver las opciones de compra** y, a continuación, elija **Configurar la cuenta**. Puede registrarse con su cuenta de IBM existente o creando una cuenta de IBM gratuita. 

### Obtención de una oferta privada
<a name="db2-marketplace-private-offer"></a>

Puede solicitar una oferta privada de AWS Marketplace para Db2 de IBM. Para obtener más información, consulte [Private offers](https://docs.aws.amazon.com/marketplace/latest/buyerguide/buyer-private-offers.html) en la *Guía del comprador de AWS Marketplace*.

**nota**  
Si es usted usuario de AWS Organizations y ha recibido una oferta privada que se ha enviado a sus cuentas de pagador y de afiliado, siga el procedimiento que se indica a continuación para suscribirse a Db2 directamente en cada cuenta de su organización.

**Obtención de una oferta privada de Db2**

1. Una vez enviada la oferta privada, conéctese a la consola de AWS Marketplace.

1. Abra el correo electrónico que contiene un enlace a una oferta privada de Db2.

1. Siga el enlace para acceder directamente a la oferta privada.
**nota**  
Si sigue este enlace antes de iniciar sesión en la cuenta correcta, aparecerá el error **Página no encontrada** (404).

1. Revise los términos y condiciones.

1. Elija **Aceptar condiciones**.
**nota**  
Si no se acepta una oferta privada de AWS Marketplace, las tarifas de servicio de Db2 de AWS Marketplace se seguirán facturando a la tarifa por hora pública.

1. Para comprobar los detalles de la oferta, seleccione **Mostrar detalles** en el listado de productos.

Tras completar el procedimiento, puede crear su instancia de base de datos siguiendo los pasos que se indican en [Creación de una instancia de base de datos de Amazon RDS](USER_CreateDBInstance.md). En la Consola de administración de AWS, en **Licencia**, asegúrese de elegir **A través de AWS Marketplace**.

## Cambio entre licencias de Db2
<a name="db2-edition-license-switching"></a>

Puede cambiar de entre licencias de Db2 en RDS para Db2. Por ejemplo, puede empezar con traiga su propia licencia (BYOL) y, a continuación, cambiar a la licencia de Db2 a través de AWS Marketplace. 

**importante**  
Si desea cambiar a una licencia de Db2 a través de AWS Marketplace, asegúrese de tener una suscripción de AWS Marketplace activa para la edición de IBM Db2 que desee utilizar. Si no la tiene, primero [suscríbase a Db2 en AWS Marketplace](#db2-marketplace-subscribing-registering) para esa edición de Db2 y, a continuación, complete el procedimiento de restauración. 

### Consola
<a name="db2-restore-pitr-console"></a>

**Cambio entre licencias de Db2**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon RDS en [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. En el panel de navegación, elija **Automated backups** (Copias de seguridad automatizadas).

   Las copias de seguridad automatizadas se muestran en la pestaña **Current Region** (Región actual).

1. Elija la instancia de base de datos que quiere restaurar.

1. Para **Actions** (Acciones), elija **Restore to point in time** (Restaurar a un momento dado).

   Aparecerá la ventana **Restore to point in time (Restaurar a un momento dado)**.

1. Elija **Latest restorable time** (Última hora de restauración) para restaurar a la última hora posible o elija **Custom** (Personalizar) para elegir una hora.

   Si elige **Personalizar**, escriba la fecha y hora en la que quiere restaurar la instancia.
**nota**  
Las horas se muestran en su zona horaria local, que se indica mediante una diferencia de la hora universal coordinada (UTC). Por ejemplo, UTC-5 es la hora estándar del Este/horario de verano central.

1. Para el **motor de base de datos**, elija la licencia de Db2 que desee utilizar.

1. En **Identificador de instancias de bases de datos**, escriba el nombre la instancia de bases de datos restaurada de destino. El nombre debe ser único.

1. Elija otras opciones según sea necesario, como la clase de instancia de base de datos, el almacenamiento y si quiere utilizar el escalado automático de almacenamiento.

   Para obtener más información acerca de cada configuración, consulte [Configuración de instancias de base de datos](USER_CreateDBInstance.Settings.md).

1. Elija **Restore to point in time** (Restaurar a un momento dado). 

Para obtener más información, consulte [Restauración de una instancia de base de datos a un momento especificado para Amazon RDS](USER_PIT.md).

### AWS CLI
<a name="db2-restore-pitr-cli"></a>

Para cambiar entre licencias de Db2, utilice el comando [restore-db-instance-to-point-in-time](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-to-point-in-time.html). El siguiente ejemplo restaura la última versión de un momento específico, establece el motor de base de datos en IBM Db2 Advanced Edition y ajusta el modelo de licencia de Db2 a través de AWS Marketplace.

Puede especificar otras opciones. Para obtener más información acerca de cada configuración, consulte [Configuración de instancias de base de datos](USER_CreateDBInstance.Settings.md).

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

```
1. aws rds restore-db-instance-to-point-in-time \
2.     --source-db-instance-identifier my_source_db_instance \
3.     --target-db-instance-identifier my_target_db_instance \
4.     --use-latest-restorable-time \
5.     --engine db2-ae \
6.     --license-model marketplace-license
```
Para Windows:  

```
1. aws rds restore-db-instance-to-point-in-time ^
2.     --source-db-instance-identifier my_source_db_instance ^
3.     --target-db-instance-identifier my_target_db_instance ^
4.     --use-latest-restorable-time ^
5.     --engine db2-ae ^
6.     --license-model marketplace-license
```

Para obtener más información, consulte [Restauración de una instancia de base de datos a un momento especificado para Amazon RDS](USER_PIT.md).

### API de RDS
<a name="db2-restore-pitr-api"></a>

Para cambiar de entre licencias de Db2, llame a la operación [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceToPointInTime.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceToPointInTime.html) de la API de Amazon RDS con los siguientes parámetros:
+ `SourceDBInstanceIdentifier`
+ `TargetDBInstanceIdentifier`
+ `RestoreTime`
+ `Engine`
+ `LicenseModel`

Para obtener más información, consulte [Restauración de una instancia de base de datos a un momento especificado para Amazon RDS](USER_PIT.md).

# Amazon RDS para clases de instancia de Db2
<a name="Db2.Concepts.General.InstanceClasses"></a>

La capacidad de cómputo y de memoria de la instancia de base de datos se determina mediante su clase de instancia. La clase de instancia de base de datos que necesita depende de la potencia de procesamiento y de los requisitos de memoria.



## Clases de instancia admitidas de RDS para Db2
<a name="Db2.Concepts.InstanceClasses.Supported"></a>

Las clases de instancia admitidas de Amazon RDS para Db2 son un subconjunto de las clases de instancia de base de datos de Amazon RDS. Para ver la lista completa de las clases de instancia de Amazon RDS, consulte [Clases de instancia de base de datos de ](Concepts.DBInstanceClass.md).

**Topics**
+ [Clases de instancia de RDS para Db2 admitidas para Db2 Standard Edition](#Db2.Concepts.InstanceClasses.Supported.SE)
+ [Clases de instancia de RDS para Db2 admitidas para Db2 Advanced Edition](#Db2.Concepts.InstanceClasses.Supported.AE)

### Clases de instancia de RDS para Db2 admitidas para Db2 Standard Edition
<a name="Db2.Concepts.InstanceClasses.Supported.SE"></a>

En la tabla siguiente, se muestran todas las clases de instancia compatibles con la Db2 Standard Edition de la base de datos de Db2 versión 11.5.9.0. Estas clases de instancias están disponibles para traiga su propia licencia (BYOL) y licencia de Db2 a través de AWS Marketplace.


| Tipo de clase de instancia | Clase de instancia | 
| --- | --- | 
|  Clases de instancia de uso general con procesadores Intel Xeon Scalable de tercera generación, almacenamiento SSD y optimización de red  |  db.m6idn.large–db.m6idn.8xlarge  | 
|  Clases de instancia de uso general con procesadores Intel Xeon Scalable de tercera generación  |  db.m6in.large–db.m6in.8xlarge  | 
|  Clases de instancia de uso general  |  db.m7i.large–db.m7i.8xlarge db.m6i.large–db.m6i.8xlarge  | 
|  Clases de instancia optimizada para memoria con SSD local basado en NVMe y con procesadores Intel Xeon Scalable de tercera generación  |  db.x2iedn.xlarge  | 
|  Clases de instancia optimizada para memoria con procesadores Intel Xeon Scalable de tercera generación  |  db.r6idn.large–db.r6idn.4xlarge db.r6in.large–db.r6in.4xlarge  | 
|  Clases de instancia optimizadas para memoria  |  db.r7i.large–db.r7i.8xlarge db.r6i.large–db.r6i.4xlarge  | 
|  Clases de instancia de rendimiento con ráfagas  |  db.t3.small–db.t3.2xlarge  | 

### Clases de instancia de RDS para Db2 admitidas para Db2 Advanced Edition
<a name="Db2.Concepts.InstanceClasses.Supported.AE"></a>

En la tabla siguiente, se muestran todas las clases de instancia compatibles con la Db2 Advanced Edition de la base de datos de Db2 versión 11.5.9.0. Estas clases de instancias están disponibles para traiga su propia licencia (BYOL) y licencia de Db2 a través de AWS Marketplace.


| Tipo de clase de instancia | Clase de instancia | 
| --- | --- | 
|  Clases de instancia de uso general con procesadores Intel Xeon Scalable de tercera generación, almacenamiento SSD y optimización de red  |  db.m6idn.large–db.m6idn.32xlarge  | 
|  Clases de instancia de uso general con procesadores basados en procesadores Intel Xeon Scalable de tercera generación  |  db.m6in.large–db.m6in.32xlarge  | 
|  Clases de instancia de uso general  |  db.m6i.large–db.m7i.48xlarge db.m7i.large–db.m7i.48xlarge  | 
|  Clases de instancia optimizada para memoria con SSD local basado en NVMe y con procesadores Intel Xeon Scalable de tercera generación  |  db.x2iedn.xlarge–db.x2iedn.32xlarge  | 
|  Clases de instancia optimizada para memoria con procesadores Intel Xeon Scalable de tercera generación  |  db.r6idn.large–db.r6idn.32xlarge db.r6in.8xlarge–db.r6in.32xlarge  | 
|  Clases de instancia optimizadas para memoria  |  db.r6i.large–db.r7i.48xlarge db.r7i.large–db.r7i.48xlarge  | 
|  Clases de instancia de rendimiento con ráfagas  |  db.t3.small–db.t3.2xlarge  | 

# Roles predeterminados de Amazon RDS para Db2
<a name="db2-default-roles"></a>

RDS para Db2 añade los seis siguientes roles y se los otorga al `master_user_role` con la opción `ADMIN`. Cuando se aprovisiona la base de datos, RDS para Db2 concede `master_user_role` al usuario maestro. El usuario maestro, a su vez, puede conceder estos roles a otros usuarios, grupos o roles con instrucciones `GRANT` nativas conectándose a la base de datos.
+ **DBA**: RDS para Db2 crea este rol vacío con autorización de `DATAACCESS`. El usuario maestro puede agregar más autorizaciones o privilegios a este rol y, a continuación, conceder el rol a otros usuarios, grupos o roles. 
+ **DBA\$1RESTRICTED**: RDS para Db2 crea este rol vacío. El usuario maestro puede agregar privilegios a este rol y, a continuación, conceder el rol a otros usuarios, grupos o roles.
+ **DEVELOPER**: RDS para Db2 crea este rol vacío con autorización de `DATAACCESS`. El usuario maestro puede agregar más autorizaciones o privilegios a este rol y, a continuación, conceder el rol a otros usuarios, grupos o roles. 
+ **ROLE\$1NULLID\$1PACKAGES**: RDS para Db2 otorga privilegios de `EXECUTE` a este rol en los paquetes `ALL NULLID` que estaban enlazados a Db2 cuando se ejecutó `CREATE DATABASE`.
+ **ROLE\$1PROCEDURES**: RDS para Db2 otorga privilegios `EXECUTE` a este rol en todos los procedimientos de `SYSIBM`.
+ **ROLE\$1TABLESPACES**: RDS para Db2 otorga privilegios `USAGE` a los espacios de tabla creados por el comando `CREATE DATABASE`.

# Parámetros de Amazon RDS para Db2
<a name="db2-supported-parameters"></a>

Amazon RDS para Db2 utiliza tres tipos de parámetros: parámetros de configuración del administrador de bases de datos, variables de registro y parámetros de configuración de bases de datos. Puede administrar los dos primeros tipos mediante grupos de parámetros y el último tipo mediante el procedimiento almacenado [rdsadmin.update\$1db\$1param](db2-sp-managing-databases.md#db2-sp-update-db-param).

De manera predeterminada, una instancia de base de datos de RDS para Db2 usa un grupo de parámetros de base de datos específico de una base de datos y una instancia de base de datos Db2. Este grupo de parámetros contiene parámetros para el motor de base de datos IBM Db2, específicamente los parámetros de configuración del administrador de bases de datos y variables de registro. Para obtener más información sobre el trabajo con grupos de parámetros, consulte [Grupos de parámetros para Amazon RDS](USER_WorkingWithParamGroups.md).

Los parámetros de configuración de RDS para Db2 se configuran en los valores predeterminados del motor de almacenamiento que ha seleccionado. Para obtener más información sobre los parámetros Db2, consulte [Db2 database configuration parameters](https://www.ibm.com/docs/en/db2/11.5?topic=parameters-database-configuration) en la documentación de IBM Db2.

**Topics**
+ [Visualización de los parámetros en los grupos de parámetros](#db2-viewing-parameter-group-parameters)
+ [Visualización de todos los parámetros con los comandos de Db2](#db2-viewing-parameters-db2-commands)
+ [Modificación de los parámetros en grupos de parámetros](#db2-modifying-parameter-group-parameters)
+ [Modificación de parámetros de configuración de la base de datos con comandos de Db2](#db2-modifying-parameters-db2-commands)

## Visualización de los parámetros en los grupos de parámetros
<a name="db2-viewing-parameter-group-parameters"></a>

Los parámetros de configuración del administrador de bases de datos y las variables de registro se establecen en grupos de parámetros. Puede ver los parámetros de configuración del administrador de bases de datos y las variables de registro de una versión específica de Db2 mediante la Consola de administración de AWS, la AWS CLI o la API de RDS.

### Consola
<a name="db2-viewing-parameter-group-parameters-console"></a>

**Para ver los valores de los parámetros de un grupo de parámetros de base de datos**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon RDS en [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. En el panel de navegación, seleccione **Parameter groups** (Grupos de parámetros).

   Los grupos de parámetros de base de datos aparecen en una lista.

1. Seleccione el nombre del grupo de parámetros para ver su lista de parámetros.

### AWS CLI
<a name="db2-viewing-parameter-group-parameters-cli"></a>

Puede ver los parámetros de configuración del administrador de bases de datos y las variables de registro de una versión de Db2 ejecutando el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-engine-default-parameters.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-engine-default-parameters.html). Especifique uno de los siguientes valores para la opción `--db-parameter-group-family`:
+ `db2-ae-11.5`
+ `db2-se-11.5`

Por ejemplo, para ver los parámetros de Db2 Standard Edition 11.5, ejecute el siguiente comando:

```
aws rds describe-engine-default-parameters --db-parameter-group-family db2-se-11.5
```

El resultado de este comando debería ser similar al siguiente ejemplo:



```
{
    "EngineDefaults": {
        "Parameters": [
            {
                "ParameterName": "agent_stack_sz",
                "ParameterValue": "1024",
                "Description": "You can use this parameter to determine the amount of memory that is allocated by Db2 for each agent thread stack.",
                "Source": "engine-default",
                "ApplyType": "static",
                "DataType": "integer",
                "AllowedValues": "256-32768",
                "IsModifiable": false
            },
            {
                "ParameterName": "agentpri",
                "ParameterValue": "-1",
                "Description": "This parameter controls the priority given to all agents and to other database manager instance processes and threads by the operating system scheduler. This priority determines how CPU time is allocated to the database manager processes, agents, and threads relative to other processes and threads running on the machine.",
                "Source": "engine-default",
                "ApplyType": "static",
                "DataType": "integer",
                "AllowedValues": "1-99",
                "IsModifiable": false
            },
            ...
        ]
    }
}
```

Para enumerar solo los parámetros modificables de Db2 Standard Edition 11.5, ejecute el siguiente comando.

Para Linux, macOS o Unix:

```
aws rds describe-engine-default-parameters \
    --db-parameter-group-family db2-se-11.5 \
    --query 'EngineDefaults.Parameters[?IsModifiable==`true`].{ParameterName:ParameterName, DefaultValue:ParameterValue}'
```

Para Windows:

```
aws rds describe-engine-default-parameters ^
    --db-parameter-group-family db2-se-11.5 ^
    --query 'EngineDefaults.Parameters[?IsModifiable==`true`].{ParameterName:ParameterName, DefaultValue:ParameterValue}'
```

### API de RDS
<a name="db2-viewing-parameter-group-parameters-api"></a>

Para ver los valores de los parámetros de un grupo de parámetros de base de datos, utilice la operación [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBParameters.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBParameters.html) con el siguiente parámetro obligatorio.
+ `DBParameterGroupName`

## Visualización de todos los parámetros con los comandos de Db2
<a name="db2-viewing-parameters-db2-commands"></a>

Puede ver los ajustes de los parámetros de configuración del administrador de bases de datos, los parámetros de configuración de la base de datos y las variables de registro mediante los comandos de Db2.

**Visualización de la configuración**

1. Conexión a su base de datos Db2. En el siguiente ejemplo, sustituya *database\$1name*, *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to database_name user master_username using master_password"
   ```

1. Busque la versión de Db2 compatible.

   ```
   db2 "select service_level, fixpack_num from table(sysproc.env_get_inst_info()) as instanceinfo"
   ```

1. Vea los parámetros de una versión específica de Db2.
   + Para ver los parámetros de configuración del administrador de bases de datos, ejecute el siguiente comando:

     ```
     db2 "select cast(substr(name,1,24) as varchar(24)) as name, case 
         when value_flags = 'NONE' then '' else value_flags end flags, 
         cast(substr(value,1,64) as varchar(64)) as current_value
         from sysibmadm.dbmcfg
         order by name asc with UR"
     ```
   + Vea los parámetros de configuración del administrador de bases de datos ejecutando el siguiente comando:

     ```
     db2 "select cast(substr(name,1,24) as varchar(24)) as name, case 
         when value_flags = 'NONE' then '' else value_flags end flags, 
         cast(substr(value,1,64) as varchar(64)) as current_value 
         from table(db_get_cfg(null)) order by name asc, member asc with UR"
     ```
   + Vea las variables de registro configuradas actualmente ejecutando el siguiente comando:

     ```
     db2 "select cast(substr(reg_var_name,1,50) as varchar(50)) as reg_var_name, 
         cast(substr(reg_var_value,1,50) as varchar(50)) as reg_var_value, 
         level from table(env_get_reg_variables(null)) 
         order by reg_var_name,member with UR"
     ```

## Modificación de los parámetros en grupos de parámetros
<a name="db2-modifying-parameter-group-parameters"></a>

Puede modificar los parámetros de configuración del administrador de bases de datos y las variables de registro en grupos de parámetros personalizados mediante la Consola de administración de AWS, la AWS CLI o la API de RDS. Para obtener más información, consulte [Grupos de parámetros de base de datos para instancias de Amazon RDS](USER_WorkingWithDBInstanceParamGroups.md).

### Consola
<a name="db2-modifying-parameter-group-parameters-console"></a>

**Modificación de parámetros de configuración del administrador de bases de datos y variables de registro**

1. Cree un grupo de parámetros personalizado. Para obtener más información acerca de cómo crear un grupo de parámetros de base de datos, consulte [Creación de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Creating.md).

1. Modifique los parámetros en ese grupo de parámetros personalizado. Para obtener más información acerca de cómo modificar un grupo de parámetros, consulte [Modificación de los parámetros de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Modifying.md).

### AWS CLI
<a name="db2-modifying-parameter-group-parameters-cli"></a>

**Modificación de parámetros de configuración del administrador de bases de datos y variables de registro**

1. Cree un grupo de parámetros personalizado ejecutando el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-parameter-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-parameter-group.html). 

   Incluya las siguientes opciones obligatorias:
   + `--db-parameter-group-name`: un nombre para el grupo de parámetros que se está creando.
   + `--db-parameter-group-family`: la edición y la versión principal del motor de Db2. Valores válidos: `db2-se-11.5`, `db2-ae-11.5`. 
   + `--description`: la descripción para este grupo de parámetros.

   Para obtener más información acerca de cómo crear un grupo de parámetros de base de datos, consulte [Creación de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Creating.md).

1. Modifique los parámetros del grupo de parámetros personalizado que creó ejecutando el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-parameter-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-parameter-group.html).

   Incluya las siguientes opciones obligatorias:
   + `--db-parameter-group-name`: el nombre del grupo de parámetros creado.
   + `--parameters`: una matriz de los nombres de parámetros, valores y métodos de aplicación para la actualización del parámetro.

   Para obtener más información acerca de cómo modificar un grupo de parámetros, consulte [Modificación de los parámetros de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Modifying.md).

### API de RDS
<a name="db2-modifying-parameter-group-parameters-api"></a>

**Modificación de parámetros de configuración del administrador de bases de datos y variables de registro**

1. Cree un grupo de parámetros de base de datos personalizado con la operación [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBParameterGroup.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBParameterGroup.html).

   Incluya los siguientes parámetros obligatorios:
   + `DBParameterGroupName`
   + `DBParameterGroupFamily`
   + `Description`

   Para obtener más información acerca de cómo crear un grupo de parámetros de base de datos, consulte [Creación de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Creating.md).

1. Modifique los parámetros del grupo de parámetros personalizado que creó mediante la operación [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBParameterGroup.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBParameterGroup.html).

   Incluya los siguientes parámetros obligatorios:
   + `DBParameterGroupName`
   + `Parameters`

   Para obtener más información acerca de cómo modificar un grupo de parámetros, consulte [Modificación de los parámetros de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Modifying.md).

## Modificación de parámetros de configuración de la base de datos con comandos de Db2
<a name="db2-modifying-parameters-db2-commands"></a>

Puede modificar parámetros de configuración de la base de datos con comandos de Db2.

**Modificación de parámetros de configuración de la base de datos**

1. Conéctese a la base de datos `rdsadmin`. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. Cambie los parámetros de configuración de la base de datos mediante una llamada al procedimiento almacenado `rdsadmin.update_db_param`. Para obtener más información, consulte [rdsadmin.update\$1db\$1param](db2-sp-managing-databases.md#db2-sp-update-db-param). 

   ```
   db2 "call rdsadmin.update_db_param(
       'database_name', 
       'parameter_to_modify', 
       'changed_value',
       'restart_database')"
   ```

# Intercalación EBCDIC para bases de datos Db2 en Amazon RDS
<a name="db2-ebcdic"></a>

Amazon RDS para Db2 admite la intercalación EBCDIC para las bases de datos Db2. Solo puede especificar una secuencia de intercalación EBCDIC para una base de datos al crear la base de datos mediante el procedimiento almacenado [rdsadmin.create\$1database](db2-sp-managing-databases.md#db2-sp-create-database) de Amazon RDS. 

Al crear una instancia de base de datos de RDS para Db2 mediante la Consola de administración de AWS, AWS CLI o la API de RDS, puede especificar un nombre de base de datos. Si especifica un nombre de base de datos, Amazon RDS crea una base de datos con la intercalación predeterminada de `SYSTEM`. Si necesita crear una base de datos con la intercalación EBCDIC, no especifique un nombre de base de datos al crear una instancia de base de datos.

La intercalación de una base de datos en RDS para Db2 se establece en el momento de la creación y es inmutable.

**Para crear una base de datos Db2 con intercalación EBCDIC**

1. Si no tiene una instancia de base de datos de RDS para Db2, cree una instancia de base de datos pero no especifique un nombre de base de datos. Puede crear una instancia de base de datos mediante la Consola de administración de AWS, la AWS CLI o la API de RDS. Para obtener más información, consulte [Creación de una instancia de base de datos](USER_CreateDBInstance.md#USER_CreateDBInstance.Creating).

1. Cree una base de datos de Db2 y establezca la opción de intercalación en un valor EBCDIC mediante una llamada al procedimiento almacenado `rdsadmin.create_database`. Para obtener más información, consulte [rdsadmin.create\$1database](db2-sp-managing-databases.md#db2-sp-create-database).
**importante**  
Después de crear una base de datos mediante el procedimiento almacenado, no puede cambiar la secuencia de intercalación. Si desea que una base de datos utilice una secuencia de intercalación diferente, elimine la base de datos mediante una llamada al procedimiento almacenado [rdsadmin.drop\$1database](db2-sp-managing-databases.md#db2-sp-drop-database). A continuación, cree una base de datos con la secuencia de intercalación requerida.

# Zona horaria local para instancias de base de datos de Amazon RDS para Db2
<a name="db2-time-zone"></a>

La zona horaria de una instancia de base de datos de Amazon RDS en la que se ejecuta Db2 se define de forma predeterminada. El valor predeterminado es la Hora Universal Coordinada (UTC). Para que coincida con la zona horaria de sus aplicaciones, en su lugar puede definir la zona horaria de su instancia de base de datos en una hora local.

La zona horaria se define al crear inicialmente la instancia de base de datos. Puede crear su instancia de base de datos utilizando la Consola de administración de AWS, la API de RDS o la AWS CLI. Para obtener más información, consulte [Creación de una instancia de base de datos](USER_CreateDBInstance.md#USER_CreateDBInstance.Creating).

Si su instancia de base de datos forma parte de una implementación multi-AZ, al conmutar por error, su zona horaria seguirá siendo la zona horaria local que definió.

Puede restaurar la instancia de base de datos a un punto temporal que especifique. La hora aparece en la zona horaria local. Para obtener más información, consulte [Restauración de una instancia de base de datos a un momento especificado para Amazon RDS](USER_PIT.md).

Definir la zona horaria local en su instancia de base de datos tiene las siguientes limitaciones:
+ No puede modificar la zona horaria de una instancia de base de datos de Amazon RDS para Db2 existente.
+ No puede restaurar una instantánea a partir de una instancia de base de datos de una zona horaria en una instancia de base de datos de una zona horaria diferente.
+ Es recomendable que no restaure un archivo de copia de seguridad de una zona horaria en una zona horaria diferente. Si restaura un archivo de copia de seguridad de una zona horaria en otra, debe auditar las consultas y las aplicaciones para comprobar los efectos del cambio de zona horaria.

## Zonas horarias disponibles
<a name="db2-time-zone-values"></a>

Puede utilizar los siguientes valores para el ajuste de la zona horaria.


| Zona | Time zone (Zona horarioa) | 
| --- | --- | 
|  África  |  África/Casablanca, África/El Cairo, África/Harare, África/Lagos, África/Luanda, África/Monrovia, África/Nairobi, África/Trípoli, África/Windhoek  | 
|  América  |  América/Araguaína, América/Argentina/Buenos\$1Aires, América/Asunción, América/Bogotá, América/Caracas, América/Chicago, América/Chihuahua, América/Cuiaba, América/Denver, América/Detroit, América/Fortaleza, América/Godthab, América/Guatemala, América/Halifax, América/Lima, América/Los\$1Ángeles, América/Manaos, América/Matamoros, América/Ciudad\$1de\$1México, América/Monterrey, América/Montevideo, América/Nueva\$1York, América/Phoenix, América/Santiago, América/São\$1Paulo, América/Tijuana, América/Toronto  | 
|  Asia  |  Asia/Amán, Asia/Asjabad, Asia/Bagdad, Asia/Bakú, Asia/Bangkok, Asia/Beirut, Asia/Calcuta, Asia/Daca, Asia/Damasco, Asia/Ereván, Asia/Hong\$1Kong, Asia/Irkutsk, Asia/Jerusalén, Asia/Kabul, Asia/Karachi, Asia/Katmandú, Asia/Kolkata, Asia/Krasnoyarsk, Asia/Magadán, Asia/Manila, Asia/Mascate, Asia/Novosibirsk, Asia/Rangún, Asia/Riad, Asia/Seúl, Asia/Shanghái, Asia/Singapur, Asia/Taipéi, Asia/Teherán, Asia/Tokio, Asia/Ulán\$1Bator, Asia/Vladivostok, Asia/Yakarta, Asia/Yakutsk  | 
|  Atlántico  |  Atlántico/Azores, Atlántico/Cabo\$1Verde  | 
|  Australia  |  Australia/Adelaida, Australia/Brisbane, Australia/Darwin, Australia/Eucla, Australia/Hobart, Australia/Lord\$1Howe, Australia/Perth, Australia/Sídney  | 
|  Brasil  |  Brasil/DeNoronha, Brasil/Este  | 
|  Canadá  |  Canadá/Terranova, Canadá/Saskatchewan  | 
|  etc  |  Etc/GMT-3  | 
|  Europa  |  Europa/Ámsterdam, Europa/Atenas, Europa/Berlín, Europa/Dublín, Europa/Helsinki, Europa/Kaliningrado, Europa/Londres, Europa/Madrid, Europa/Moscú, Europa/París, Europa/Praga, Europa/Roma, Europa/Sarajevo, Europa/Estocolmo  | 
|  Pacífico  |  Pacífico/Apia, Pacífico/Auckland, Pacífico/Chatham, Pacífico/Fiyi, Pacífico/Guam, Pacífico/Honolulu, Pacífico/Kiritimati, Pacífico/Marquesas, Pacífico/Samoa, Pacífico/Tongatapu, Pacífico/Wake  | 
|  EE. UU.  |  EE. UU./Alaska, EE. UU./Central, EE. UU./Indiana-Este, EE. UU./Este, EE. UU./Pacífico  | 
|  UTC  |  UTC  | 

# Requisitos previos para crear una instancia de base de datos de Amazon RDS para Db2
<a name="db2-db-instance-prereqs"></a>

Estos son los requisitos previos para crear una instancia de base de datos. 

**Topics**
+ [Cuenta de administrador](#db2-prereqs-admin-account)
+ [Consideraciones adicionales](#db2-prereqs-additional-considerations)

## Cuenta de administrador
<a name="db2-prereqs-admin-account"></a>

Cuando se crea una instancia de base de datos, debe designar una cuenta de administrador para la instancia. Amazon RDS concede autoridad `DBADM` a esta cuenta de administrador de base de datos local.

La cuenta de administrador tiene las siguientes características, capacidades y limitaciones:
+ Es un usuario local y no un Cuenta de AWS.
+ No tiene autoridades a nivel de instancia de Db2, como `SYSADM`, `SYSMAINT` o `SYSCTRL`.
+ No se puede detener ni iniciar una instancia de Db2.
+ No se puede eliminar una base de datos Db2 si especificó el nombre al crear la instancia de base de datos.
+ Tiene acceso completo a la base de datos Db2, incluidas las tablas y vistas del catálogo.
+ Puede crear usuarios y grupos locales mediante procedimientos almacenados de Amazon RDS.
+ Puede conceder y revocar autoridades y privilegios.

La cuenta de administrador puede realizar las siguientes tareas: 
+ Crear, modificar o eliminar instancias de base de datos.
+ Crear instantáneas de bases de datos.
+ Iniciar una restauración a un momento dado
+ Crear copias de seguridad automatizadas de instantáneas de bases de datos.
+ Crear copias de seguridad manuales de instantáneas de bases de datos.
+ Utilizar otras características de Amazon RDS.

## Consideraciones adicionales
<a name="db2-prereqs-additional-considerations"></a>

Antes de crear una instancia de base de datos, tenga en cuenta lo siguiente:
+ Cada instancia de base de datos de Amazon RDS para Db2 puede alojar hasta 50 bases de datos Db2. Para obtener más información, consulte [Varias bases de datos en una instancia de base de datos de Amazon RDS para Db2](db2-multiple-databases.md). 
+ Initial database name (Nombre inicial de base de datos)
  + Si no proporciona un nombre al crear una instancia de base de datos, Amazon RDS no crea una base de datos. 
  + No proporcione un nombre de base de datos en las siguientes circunstancias:
    + Desea modificar el parámetro `db2_compatibility_vector`. Para obtener más información, consulte [Establecimiento del parámetro db2\$1compatibility\$1vector](db2-known-issues-limitations.md#db2-known-issues-limitations-db2-compatibility-vector).
+ En el modelo traiga su propia licencia (BYOL), primero debe crear un grupo de parámetros personalizado que contenga el IBM Customer ID y el IBM Site ID. Para obtener más información, consulte [Traiga su propia licencia (BYOL) para Db2](db2-licensing.md#db2-licensing-options-byol).
+ En la licencia Db2 a través del modelo AWS Marketplace, necesita una suscripción de AWS Marketplace activa para la edición de IBM Db2 concreta que quiera usar. Si aún no tiene una, [suscríbase a Db2 en AWS Marketplace](db2-licensing.md#db2-marketplace-subscribing-registering) para la edición IBM Db2 que desee utilizar. Para obtener más información, consulte [Licencia de Db2 a través de AWS Marketplace](db2-licensing.md#db2-licensing-options-marketplace).

# Varias bases de datos en una instancia de base de datos de Amazon RDS para Db2
<a name="db2-multiple-databases"></a>

Puede crear varias bases de datos en una única instancia de base de datos de RDS para Db2 llamando al procedimiento almacenado [rdsadmin.create\$1database](db2-sp-managing-databases.md#db2-sp-create-database). Una única instancia de base de datos de RDS para Db2 está limitada a 50 bases de datos. Este número incluye las bases de datos en estado activado y desactivado. 

**nota**  
Si crea varias bases de datos en una instancia de base de datos de RDS para Db2 creada antes del 15 de noviembre de 2024, debe reiniciar la instancia de base de datos para permitir la compatibilidad con varias bases de datos.

Cuando cree bases de datos, Amazon RDS las activa de manera predeterminada. Para optimizar los recursos de memoria, puede desactivar las bases de datos que utilice con poca frecuencia y, posteriormente, activarlas cuando sea necesario. Para obtener más información, consulte [Desactivación de una base de datos](db2-managing-databases.md#db2-deactivating-database) y [Activación de una base de datos](db2-managing-databases.md#db2-activating-database). 

El número de bases de datos activadas en una instancia de base de datos depende de los recursos de memoria disponibles en el servidor. Los recursos de memoria se diferencian según la clase de instancia de base de datos y la cantidad de memoria configurada para la base de datos. Para obtener información acerca de las clases de instancia de base de datos, consulte [Clases de instancia de base de datos de ](Concepts.DBInstanceClass.md). Para obtener más información sobre cómo actualizar la memoria de una base de datos de RDS para Db2, consulte [rdsadmin.update\$1db\$1param](db2-sp-managing-databases.md#db2-sp-update-db-param).

Le recomendamos que elija una clase de instancia de base de datos con 2 GB de memoria para las tareas comunes de una base de datos, los requisitos del sistema operativo y otras tareas de automatización de Amazon RDS, como las copias de seguridad. Para obtener más información sobre el cambio de clase de instancias de bases de datos, consulte [Modificación de una instancia de base de datos de Amazon RDS](Overview.DBInstance.Modifying.md).

Además, IBM recomienda contar con un mínimo de 1 GB de memoria para cada base de datos activa. Para obtener más información, consulte los [requisitos de disco y memoria](https://www.ibm.com/docs/en/db2/11.5?topic=servers-disk-memory-requirements) en la documentación de IBM.

Puede calcular el número máximo de bases de datos activas que puede tener una instancia de base de datos con la siguiente fórmula:

```
Active database limit = (total server memory - 2 GB) / 1 GB 
```

El siguiente ejemplo muestra el número máximo de bases de datos activas para una instancia de base de datos con una clase de instancia de base de datos db.m6i.xlarge:

```
Active database limit = (total server memory - 2 GB) / 1 GB 
                      = (16 GB - 2 GB) / 1 GB 
                      = 14 databases
```

Si una base de datos activa se bloquea, cuando Amazon RDS la recupera vuelve a activarla. En algunos casos, como cuando se modifica una clase de instancia de base de datos a una configuración de memoria inferior, es posible que no haya suficiente memoria para activar todas las bases de datos de la instancia de base de datos. En esos casos, Amazon RDS activa las bases de datos en el orden en que se crearon.

**nota**  
Las bases de datos que Amazon RDS no pueda activar por falta de memoria permanecen desactivadas.

# Conexión a la instancia de base de datos de Db2
<a name="USER_ConnectToDb2DBInstance"></a>

Cuando Amazon RDS haya aprovisionado su instancia de base de datos de Amazon RDS para Db2, puede usar cualquier aplicación cliente de SQL estándar para conectarse a la instancia de base de datos. Como Amazon RDS es un servicio administrado, no puede iniciar sesión como `SYSADM`, `SYSCTRL`, `SECADM` ni`SYSMAINT`.

Puede conectarse a una instancia de base de datos que ejecute el motor de base de datos IBM Db2mediante IBM Db2 CLP, IBM CLPPlus, DBeaver o IBM Db2 Data Management Console. 

**nota**  
La conexión a una base de datos Db2 se puede producir con errores si la instancia de base de datos de RDS para Db2 no tiene memoria suficiente. Para obtener más información, consulte [Error de conexión a la base](db2-troubleshooting.md#db2-database-connection-error).

**Topics**
+ [Búsqueda del punto de conexión de la instancia de base de datos de Amazon RDS para Db2](db2-finding-instance-endpoint.md)
+ [Conexión a la instancia de base de datos de Amazon RDS para Db2 con IBM Db2 CLP](db2-connecting-with-clp-client.md)
+ [Conexión a la instancia de base de datos de Amazon RDS para Db2 con IBM CLPPlus](db2-connecting-with-ibm-clpplus-client.md)
+ [Conexión a la instancia de base de datos de Amazon RDS para Db2 con DBeaver](db2-connecting-with-dbeaver.md)
+ [Conexión a la instancia de base de datos de Amazon RDS para Db2 con IBM Db2 Data Management Console](db2-connecting-with-ibm-data-management-console.md)
+ [Consideraciones sobre grupos de seguridad con Amazon RDS para Db2](db2-security-groups-considerations.md)

# Búsqueda del punto de conexión de la instancia de base de datos de Amazon RDS para Db2
<a name="db2-finding-instance-endpoint"></a>

Cada instancia de base de datos de Amazon RDS contiene un punto de enlace y cada punto de enlace contiene el nombre DNS y el número de puerto para la instancia de base de datos. Para conectarse a su instancia de base de datos de Amazon RDS para Db2 con una aplicación cliente SQL, necesita el nombre de DNS y el número de puerto para la instancia de base de datos.

Puede encontrar los puntos de enlace para una instancia de base de datos mediante la Consola de administración de AWS o la AWS CLI.

## Consola
<a name="db2-finding-instance-endpoint-console"></a>

**Para encontrar el punto de conexión de una instancia de base de datos de RDS para Db2**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon RDS en [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1.  En la esquina superior derecha de la consola, elija la Región de AWS de la instancia de base de datos.

1. Busque el nombre DNS y el número de puerto para su instancia de base de datos de RDS para Db2. 

   1. Elija **Databases (Bases de datos)** para ver una lista de las instancias de base de datos. 

   1. Seleccione el nombre de la instancia de base de datos de RDS para Db2 para mostrar los detalles de la instancia. 

   1. En la pestaña **Connectivity & security (Conectividad y seguridad)**, copie el punto de enlace. También anote el número de puerto. Necesita el punto de enlace y el número de puerto para conectarse a la instancia de base de datos.   
![\[La pestaña Conectividad y seguridad de una instancia de base de datos que muestra el punto de conexión y el puerto.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/db2-connectivity-security.png)

## AWS CLI
<a name="db2-finding-instance-endpoint-cli"></a>

Para encontrar el punto de conexión de una instancia de base de datos de RDS para Db2, ejecute el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html). En el ejemplo siguiente, sustituya *database-1* por el nombre de su instancia de base de datos.

Para Linux, macOS o Unix:

```
aws rds describe-db-instances \
    --db-instance-identifier database-1 \
    --query 'DBInstances[].{DBInstanceIdentifier:DBInstanceIdentifier,DBName:DBName,Endpoint:Endpoint}' \
    --output json
```

Para Windows:

```
aws rds describe-db-instances ^
    --db-instance-identifier database-1 ^
    --query 'DBInstances[].{DBInstanceIdentifier:DBInstanceIdentifier,DBName:DBName,Endpoint:Endpoint}' ^
    --output json
```

El resultado de este comando debería ser similar al siguiente ejemplo. La línea `Address` en la salida contiene el nombre DNS. 

```
[
    {
        "DBInstanceIdentifier": "database-1",
        "DBName": "DB2DB",
        "Endpoint": {
            "Address": "database-1.123456789012.us-east-2.amazonaws.com",
            "Port": 50000,
            "HostedZoneId": "Z2OC4A7DETW6VH"
        }
    }
]
```

# Conexión a la instancia de base de datos de Amazon RDS para Db2 con IBM Db2 CLP
<a name="db2-connecting-with-clp-client"></a><a name="db2-downloading-package"></a>

Puede utilizar una utilidad de línea de comandos como IBM Db2 CLP para conectarse a instancias de base de datos de Amazon RDS para Db2. Esta utilidad forma parte de IBM Data Server Runtime Client. Para descargar el cliente** **desde IBM Fix Central, consulte [IBM Data Server Client Packages Version 11.5 Mod 8 Fix Pack 0](https://www.ibm.com/support/pages/node/6830885) en el servicio de soporte de IBM. 

**Topics**
+ [Terminología](#db2-connecting-ibm-clp-terms)
+ [Instalación del cliente](#db2-connecting-ibm-clp-install-client)
+ [Conexión a una instancia de base de datos](#db2-connecting-ibm-clp-connect-db-instance)
+ [Solución de problemas de conexiones a la instancia de base de datos de RDS para Db2](#db2-troubleshooting-connections-clp)

## Terminología
<a name="db2-connecting-ibm-clp-terms"></a>

Los siguientes términos ayudan a explicar los comandos que se utilizan al [conectarse a la instancia de base de datos de RDS para Db2](#db2-connecting-ibm-clp-connect-db-instance).

**catalog tcpip node**  
Este comando registra un nodo de base de datos remoto con un cliente Db2 local, lo que hace que la aplicación cliente pueda acceder al nodo. Para catalogar un nodo, debe proporcionar información como el nombre de host del servidor, el número de puerto y el protocolo de comunicación. A partir de ahí, el nodo catalogado representa un servidor de destino en el que residen una o más bases de datos remotas. Para obtener más información, consulte [Comando CATALOG TCPIP/TCPIP4/TCPIP6 NODE](https://www.ibm.com/docs/en/db2/11.5?topic=commands-catalog-tcpip-node) en la documentación de IBM Db2.

**catalog database**  
Este comando registra una base de datos remota con un cliente Db2 local, lo que hace que la aplicación cliente pueda acceder a la base de datos. Para catalogar una base de datos, debe proporcionar información como el alias de la base de datos, el nodo en el que reside y el tipo de autenticación necesario para conectarse a la base de datos. Para obtener más información, consulte [Comando CATALOG DATABASE](https://www.ibm.com/docs/en/db2/11.5?topic=commands-catalog-database) en la documentación de IBM Db2.

## Instalación del cliente
<a name="db2-connecting-ibm-clp-install-client"></a>

Después de [downloading the package for Linux](#db2-downloading-package), instale el cliente con privilegios de administrador o raíz.

**nota**  
Para instalar el cliente en AIX o Windows, siga el mismo procedimiento pero modifique los comandos para su sistema operativo.

**Para instalar el cliente en Linux**

1. Ejecute **`./db2_install -f sysreq`** y elija **`yes`** para aceptar la licencia.

1. Elija la ubicación para instalar el cliente.

1. Ejecute **`clientInstallDir/instance/db2icrt -s client` *instance\$1name***. Sustituya *instance\$1name* por un usuario de sistema operativo válido en Linux. En Linux, el nombre de la instancia de base de datos de Db2 está vinculado al nombre de usuario del sistema operativo.

   Este comando crea un directorio **`sqllib`** en el directorio principal del usuario designado en Linux.

## Conexión a una instancia de base de datos
<a name="db2-connecting-ibm-clp-connect-db-instance"></a>

Para conectarse a una instancia de base de datos de RDS para Db2, necesita su nombre DNS y el número de puerto. Para obtener información sobre cómo encontrarlos, consulte [Búsqueda del punto de conexión](db2-finding-instance-endpoint.md). También debe conocer el nombre de la base de datos, el nombre de usuario maestro y la contraseña maestra que definió al crear la instancia de base de datos de RDS para Db2. Para obtener más información sobre cómo encontrarlos, consulte [Creación de una instancia de base de datos](USER_CreateDBInstance.md#USER_CreateDBInstance.Creating).

**Para conectarse a una instancia de base de datos de RDS para Db2 con IBM Db2 CLP**

1. Inicie sesión con el nombre de usuario que especificó durante la instalación del cliente IBM Db2 CLP.

1. Catalogue su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *node\$1name*, *dns\$1name* y *port* por el nombre del nodo del catálogo local, el nombre de DNS de la instancia de base de datos y el número de puerto.

   ```
   1. db2 catalog TCPIP node node_name remote dns_name server port
   ```

   **Ejemplo**

   ```
   db2 catalog TCPIP node remnode remote database-1.123456789012.us-east-1.amazonaws.com server 50000
   ```

1. Catalogación de la base de datos `rdsadmin` y su base de datos. Esto le permitirá conectarse a la base de datos `rdsadmin` para realizar algunas tareas administrativas mediante los procedimientos almacenados de Amazon RDS. Para obtener más información, consulte [Administración de la instancia de base de datos de RDS para Db2](db2-administering-db-instance.md).

   En el siguiente ejemplo, sustituya *database\$1alias*, *node\$1name* y *database\$1name* por los alias de esta base de datos, el nombre del nodo definido en el paso anterior y el nombre de la base de datos. `server_encrypt` cifra el nombre de usuario y la contraseña a través de la red.

   ```
   db2 catalog database rdsadmin [ as database_alias ] at node node_name authentication server_encrypt
       
   db2 catalog database database_name [ as database_alias ] at node node_name authentication server_encrypt
   ```

   **Ejemplo**

   ```
   db2 catalog database rdsadmin at node remnode authentication server_encrypt
       
   db2 catalog database testdb as rdsdb2 at node remnode authentication server_encrypt
   ```

1. Conexión a su base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *rds\$1database\$1alias*, *master\$1username* y *master\$1password* por el nombre de la base de datos, el nombre de usuario maestro y la contraseña maestra de su instancia de base de datos de RDS para Db2.

   ```
   db2 connect to rds_database_alias user master_username using master_password
   ```

   El resultado de este comando debería ser similar al siguiente ejemplo:

   ```
   Database Connection Information
       
       Database server        = DB2/LINUXX8664 11.5.9.0
       SQL authorization ID   = ADMIN
       Local database alias   = TESTDB
   ```

1. Ejecución de consultas y visualización de resultados. El siguiente ejemplo muestra una instrucción SQL que selecciona la base de datos que ha creado.

   ```
   db2 "select current server from sysibm.dual"
   ```

   El resultado de este comando debería ser similar al siguiente ejemplo:

   ```
   1
       ------------------
       TESTDB
       
       1 record(s) selected.
   ```

## Solución de problemas de conexiones a la instancia de base de datos de RDS para Db2
<a name="db2-troubleshooting-connections-clp"></a>

Si recibe el siguiente error `NULLID`, eso normalmente indica que las versiones del cliente y del servidor de RDS para Db2 no coinciden. Para ver las versiones del cliente de Db2 compatibles, consulte [Combinaciones compatibles de clientes, controladores y niveles de servidor](https://www.ibm.com/docs/en/db2/11.5?topic=communications-supported-combinations-clients-drivers-server-levels) en la documentación de IBM Db2.

```
db2 "select * from syscat.tables"
SQL0805N Package "NULLID.SQLC2O29 0X4141414141454A69" was not found.
SQLSTATE=51002
```

Tras recibir este error, debe vincular los paquetes de su antiguo cliente de Db2 a una versión de servidor de Db2 compatible con RDS para Db2. 

**Para vincular paquetes de un cliente de Db2 anterior a un servidor de Db2 más reciente**

1. Localice los archivos de la vinculación en la máquina cliente. Normalmente, estos archivos se encuentran en el directorio **bnd** de la ruta de instalación del cliente de Db2 y tienen la extensión **.bnd**.

1. Conexión al servidor Db2. En el ejemplo siguiente, sustituya *database\$1name* por el nombre de su servidor Db2. Sustituya *master\$1username* y *master\$1password* por su información. Este usuario tiene autoridad `DBADM`. 

   ```
   db2 connect to database_name user master_username using master_password
   ```

1. Ejecute el comando `bind` para vincular los paquetes.

   1. Navegue hasta el directorio donde se encuentran los archivos de vinculación en la máquina cliente.

   1. Ejecute el comando `bind` para cada archivo.

      Se requieren las siguientes opciones:
      + `blocking all`: vincula todos los paquetes del archivo de vinculación en una sola solicitud de base de datos. 
      + `grant public`: otorga permiso a `public` para ejecutar el paquete.
      + `sqlerror continue`: especifica que el proceso `bind` continúa incluso si se producen errores.

      Para obtener más información sobre el comando `bind`, consulte [Comando BIND](https://www.ibm.com/docs/en/db2/11.5?topic=commands-bind) en la documentación de IBM Db2.

1. Compruebe que la vinculación se ha realizado correctamente consultando la vista del catálogo `syscat.package` o comprobando el mensaje devuelto tras el comando `bind`.

Para obtener más información, consulte [DB2 v11.5 Bind File and Package Name List](https://www.ibm.com/support/pages/node/6190455) en el servicio de soporte de IBM.

# Conexión a la instancia de base de datos de Amazon RDS para Db2 con IBM CLPPlus
<a name="db2-connecting-with-ibm-clpplus-client"></a>

Puede utilizar una utilidad como IBM CLPPlus para conectarse a una instancia de base de datos de Amazon RDS para Db2. Esta utilidad forma parte de IBM Data Server Runtime Client. Para descargar el cliente** **desde IBM Fix Central, consulte [IBM Data Server Client Packages Version 11.5 Mod 8 Fix Pack 0](https://www.ibm.com/support/pages/node/6830885) en el servicio de soporte de IBM. 

**importante**  
Le recomendamos que ejecute IBM CLPPlus en un sistema operativo que admita interfaces gráficas de usuario como macOS, Windows o Linux con un equipo de sobremesa. Si ejecuta Linux headless, utilice el switch **-nw** con comandos CLPPlus.

**Topics**
+ [Instalación del cliente](#db2-connecting-ibm-clpplus-install-client)
+ [Conexión a una instancia de base de datos](#db2-connecting-ibm-clpplus-connect-db-instance)
+ [Recuperación de datos CLOB desde procedimientos almacenados de DB2](#db2-connecting-ibm-clpplus-retrieve-clob-data)

## Instalación del cliente
<a name="db2-connecting-ibm-clpplus-install-client"></a>

Tras descargar el paquete para Linux, instale el cliente. 

**nota**  
Para instalar el cliente en AIX o Windows, siga el mismo procedimiento pero modifique los comandos para su sistema operativo.

**Para instalar el cliente en Linux**

1. Ejecuta **`./db2_install`**.

1. Ejecute **`clientInstallDir/instance/db2icrt -s client` *instance\$1name***. Sustituya *instance\$1name* por un usuario de sistema operativo válido en Linux. En Linux, el nombre de la instancia de base de datos de Db2 está vinculado al nombre de usuario del sistema operativo.

   Este comando crea un directorio **`sqllib`** en el directorio principal del usuario designado en Linux.

## Conexión a una instancia de base de datos
<a name="db2-connecting-ibm-clpplus-connect-db-instance"></a>

Para conectarse a una instancia de base de datos de RDS para Db2, necesita su nombre DNS y el número de puerto. Para obtener información sobre cómo encontrarlos, consulte [Búsqueda del punto de conexión](db2-finding-instance-endpoint.md). También debe conocer el nombre de la base de datos, el nombre de usuario maestro y la contraseña maestra que definió al crear la instancia de base de datos de RDS para Db2. Para obtener más información sobre cómo encontrarlos, consulte [Creación de una instancia de base de datos](USER_CreateDBInstance.md#USER_CreateDBInstance.Creating).

**Para conectarse a una instancia de base de datos de RDS para Db2 con IBM CLPPlus**

1. Revise la sintaxis del comando. En el siguiente ejemplo, sustituya *clientDir* por la ubicación en la que está instalado el cliente. 

   ```
   cd clientDir/bin
       ./clpplus -h
   ```

1. Configure su servidor Db2. En el siguiente ejemplo, sustituya *dsn\$1name*, *database\$1name*, *endpoint* y *port* por el nombre de DSN, el nombre de la base de datos, el punto de conexión y el puerto de su instancia de base de datos de RDS para Db2. Para obtener más información, consulte [Búsqueda del punto de conexión de la instancia de base de datos de Amazon RDS para Db2](db2-finding-instance-endpoint.md).

   ```
   db2cli writecfg add -dsn dsn_name -database database_name -host endpoint -port port -parameter "Authentication=SERVER_ENCRYPT"
   ```

1. Conéctese a una instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *dsn\$1name* por el nombre de usuario maestro y el nombre de DSN.

   ```
   ./clpplus -nw master_username@dsn_name
   ```

1. Se abrirá una ventana de Java Shell. Introduzca la contraseña maestra para su instancia de base de datos de RDS para Db2. 
**nota**  
Si no se abre una ventana Java Shell, ejecute `./clpplus -nw` para usar la misma ventana de línea de comandos.

   ```
   Enter password: *********
   ```

   Se realizará una conexión y se producirá un resultado similar al del siguiente ejemplo:

   ```
   Database Connection Information :
   ---------------------------------
   Hostname = database-1.abcdefghij.us-east-1.rds.amazonaws.com
   Database server = DB2/LINUXX8664  SQL110590
   SQL authorization ID = admin
   Local database alias = DB2DB
   Port = 50000
   ```

1. Ejecución de consultas y visualización de resultados. El siguiente ejemplo muestra una instrucción SQL que selecciona la base de datos que ha creado. 

   ```
   SQL > select current server from sysibm.dual;
   ```

   El resultado de este comando debería ser similar al siguiente ejemplo:

   ```
   1
       --------------------
       DB2DB
       SQL>
   ```

## Recuperación de datos CLOB desde procedimientos almacenados de DB2
<a name="db2-connecting-ibm-clpplus-retrieve-clob-data"></a>

Los procedimientos almacenados como rdsadmin.db2pd\$1command devuelven resultados en columnas CLOB, que admiten hasta 2 GB de datos. Sin embargo, DB2 CLP limita los resultados de CLOB a 8 KB (8192 bytes) truncando cualquier dato que supere este límite. Para recuperar el resultado completo, utilice CLPPLUS en su lugar.

1. Obtención del ID de tarea (task\$1id) 

   ```
   db2 "select task_id, task_type, database_name, lifecycle, varchar(bson_to_json(task_input_params), 500) as task_params,
   cast(task_output as varchar(500)) as task_output, CREATED_AT, LAST_UPDATED_AT from table(rdsadmin.get_task_status(null,null,null))"
   ```

1. Ejecución del comando CLPPLUS

   Después de obtener el task\$1id, ejecute el siguiente comando desde la petición de Unix (sustituya TASK\$1ID por el ID numérico real de la tarea):

   ```
   $ (echo "select task_output from table(rdsadmin.get_task_status(task_id,null,null));" ; echo "disconnect;" ; echo "exit;") | clpplus -nw -silent masteruser/MasterUserPassword@hostname:port_num/rdsadmin
   ```

# Conexión a la instancia de base de datos de Amazon RDS para Db2 con DBeaver
<a name="db2-connecting-with-dbeaver"></a>

Puede utilizar herramientas de terceros, por ejemplo, DBeaver, para conectarse a instancias de base de datos de Amazon RDS para Db2. Para descargar esta utilidad, consulte [Comunidad DBeaver](https://dbeaver.io/). 

Para conectarse a una instancia de base de datos de RDS para Db2, necesita su nombre DNS y el número de puerto. Para obtener información sobre cómo encontrarlos, consulte [Búsqueda del punto de conexión](db2-finding-instance-endpoint.md). También debe conocer el nombre de la base de datos, el nombre de usuario maestro y la contraseña maestra que definió al crear la instancia de base de datos de RDS para Db2. Para obtener más información sobre cómo encontrarlos, consulte [Creación de una instancia de base de datos](USER_CreateDBInstance.md#USER_CreateDBInstance.Creating).

**Para conectarse a una instancia de base de datos de RDS para Db2 con DBeaver**

1. Inicie **DBeaver**.

1. Elija el icono de **Nueva conexión** en la barra de herramientas y, a continuación, elija **Db2 para LUW**.  
![\[El menú que muestra los tipos de motores en DBeaver.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/dbeaver-add-connection.png)

1. En la ventana **Conexión a una base de datos**, proporcione información sobre su instancia de base de datos de RDS para Db2.

   1.  Introduzca la información siguiente:
      + En **Nombre del host**, escriba el nombre DNS de la instancia de base de datos.
      + En **Puerto**, escriba el número de puerto de la instancia de base de datos.
      + En **Base de datos**, escriba el nombre de la base de datos.
      + En **Username (Nombre de usuario)**, escriba el nombre del administrador de base de datos para la instancia de base de datos.
      + En **Contraseña**, escriba la contraseña del administrador de base de datos para la instancia de base de datos.

   1. Seleccione **Guardar contraseña**.

   1. Seleccione **Configuración del controlador**.   
![\[La ventana Conexión a una base de datos con varios ajustes de conexión rellenados en DBeaver.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/dbeaver-connect-database.png)

1. En la ventana **Editar controlador**, especifique propiedades de seguridad adicionales.

   1. Seleccione la pestaña **Propiedades del controlador**.

   1. Agregue dos **Propiedades de usuario**.

      1. Abra el menú contextual (con el botón derecho del ratón) y, a continuación, seleccione **Agregar nueva propiedad**.

      1. En **Nombre de la propiedad**, ponga **encryptionAlgorithm** y seleccione **Aceptar**.

      1. Con la fila **encryptionAlgorithm** seleccionada, elija la columna **Valor** y añada **2**.

      1. Abra el menú contextual (con el botón derecho del ratón) y, a continuación, seleccione **Agregar nueva propiedad**.

      1. En **Nombre de propiedad**, ponga **securityMechanism** y seleccione **Aceptar**.

      1. Con la fila **securityMechanism** seleccionada, elija la columna **Valor** y añada **7**.

   1. Seleccione **Aceptar**.  
![\[La pestaña Propiedades del controlador en la ventana Editar controlador en DBeaver.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/dbeaver-driver-properties-tab.png)

1. En la ventana **Conectarse a una base de datos**, seleccione **Probar conexión**. Si no tiene un controlador DB2 JBDC instalado en su ordenador, el controlador se descargará automáticamente.

1. Seleccione **Aceptar**.

1. Seleccione **Finalizar**.

1. En la pestaña **Navegación de base de datos**, elija el nombre de la base de datos. Ahora puede explorar objetos.

Ahora lo tiene todo listo para ejecutar comandos SQL.

**Para ejecutar comandos SQL y ver los resultados**

1. En el menú superior, elija **SQL**. Esto abre un panel de scripts SQL.

1. En el panel **Script**, introduzca un comando SQL.

1. Para ejecutar el comando, pulse el botón **Ejecutar consulta SQL**.

1. En el panel de resultados de SQL, consulte los resultados de sus consultas SQL.  
![\[Ventana que muestra cómo ejecutar un comando SQL y ver los resultados en DBeaver.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/dbeaver-sql-run-example.png)

# Conexión a la instancia de base de datos de Amazon RDS para Db2 con IBM Db2 Data Management Console
<a name="db2-connecting-with-ibm-data-management-console"></a>

Puede conectarse a una instancia de base de datos de Amazon RDS para Db2 con IBM Db2 Data Management Console. IBM Db2 Data Management Console puede administrar y monitorear varias instancias de base de datos de RDS para Db2. 

**nota**  
Debe tener un equipo con Amazon EC2 Linux o Windows que esté en la misma VPC y el mismo grupo de seguridad que la instancia de base de datos de RDS para Db2. La VPC y el grupo de seguridad controlan la conexión a la instancia de base de datos a través de la red interna. 

IBM Db2 Data Management Console requiere una base de datos del repositorio de Db2 para almacenar los metadatos y las métricas de rendimiento, pero no puede crear automáticamente una base de datos de repositorio de RDS para Db2. En cambio, primero debe crear una base de datos del repositorio para supervisar una o varias instancias de base de datos de RDS para Db2. A continuación, puede instalar IBM Db2 Data Management Console y conectarse a la instancia de base de datos de RDS para Db2 con IBM Db2 Data Management Console.

**Topics**
+ [Paso 1: creación de una base de datos del repositorio para supervisar instancias de base de datos](#db2-creating-repo-db-monitoring-dmc)
+ [Paso 2: instalación y configuración de IBM Db2 Data Management Console](#db2-install-setup-dmc)
+ [Paso 3: configuración de la base de datos del repositorio y conexión a las instancias de base de datos de RDS para Db2](#db2-connecting-db-instances-with-dmc)
+ [Uso de IBM Db2 Data Management Console](#db2-using-dmc)

## Paso 1: creación de una base de datos del repositorio para supervisar instancias de base de datos
<a name="db2-creating-repo-db-monitoring-dmc"></a>

Puede utilizar una instancia de base de datos RDS para Db2 existente del tamaño adecuado como repositorio para que IBM Db2 Data Management Console monitorice otras instancias de base de datos de RDS para Db2. Sin embargo, dado que el usuario administrador no tiene la autoridad `SYSCTRL` para crear grupos de búferes y espacios de tabla, no se puede utilizar la creación de repositorios de IBM Db2 Data Management Console para crear una base de datos de repositorios. En su lugar, debe crear una base de datos del repositorio. Esta base de datos del repositorio supervisa las instancias de base de datos de RDS para Db2. 

Puede crear una base de datos del repositorio de dos maneras diferentes. Puede crear una base de datos de RDS para Db2 y, a continuación, crear manualmente un grupo de búferes, un espacio de tablas de usuario y un espacio de tablas temporal del sistema. O bien, puede crear una instancia de Amazon EC2 independiente para alojar una base de datos del repositorio de IBM Db2 Data Management Console.

**Topics**
+ [Creación manual de un grupo de búferes, un espacio de tablas de usuario y un espacio de tablas temporal del sistema](#db2-manually-creating-dmc)
+ [Creación de una instancia de Amazon EC2 para alojar un repositorio de IBM Db2 Data Management Console](#db2-creating-ec2-dmc)

### Creación manual de un grupo de búferes, un espacio de tablas de usuario y un espacio de tablas temporal del sistema
<a name="db2-manually-creating-dmc"></a>

**Creación de un grupo de búferes, un espacio de tablas de usuario y un espacio de tablas temporal del sistema**

1. Conéctese a la base de datos `rdsadmin`. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 connect to rdsadmin user master_username using master_password  
   ```

1. Cree un grupo de búferes para IBM Db2 Data Management Console. En el siguiente ejemplo, sustituya *database\$1name* por el nombre del repositorio que ha creado para que IBM Db2 Data Management Console monitorice sus instancias de base de datos RDS para Db2. 

   ```
   db2 "call rdsadmin.create_bufferpool('database_name', 
        'BP4CONSOLE', 1000, 'Y', 'Y', 32768)"
   ```

1. Cree un espacio de tablas de usuario para IBM Db2 Data Management Console. En el siguiente ejemplo, sustituya *database\$1name* por el nombre del repositorio que ha creado para que IBM Db2 Data Management Console monitorice sus instancias de base de datos RDS para Db2. 

   ```
   db2 "call rdsadmin.create_tablespace('database_name', 
        'TS4CONSOLE', 'BP4CONSOLE', 32768)"
   ```

1. Cree un espacio de tablas temporal del sistema para IBM Db2 Data Management Console. En el siguiente ejemplo, sustituya *database\$1name* por el nombre del repositorio que ha creado para que IBM Db2 Data Management Console monitorice sus instancias de base de datos RDS para Db2. 

   ```
   db2 "call rdsadmin.create_tablespace('database_name',
       'TS4CONSOLE_TEMP', 'BP4CONSOLE', 32768, 0, 0, 'S')"
   ```

Ya tiene todo listo para instalar IBM Db2 Data Management Console. Para obtener más información sobre la instalación y la configuración, consulte [Paso 2: instalación y configuración de IBM Db2 Data Management Console](#db2-install-setup-dmc).

### Creación de una instancia de Amazon EC2 para alojar un repositorio de IBM Db2 Data Management Console
<a name="db2-creating-ec2-dmc"></a>

Puede crear una instancia de Amazon Elastic Compute Cloud (Amazon EC2) independiente para alojar un repositorio de IBM Db2 Data Management Console. Para obtener información sobre cómo crear una instancia de Amazon EC2, consulte [Tutorial: Introducción a las instancias Linux de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EC2_GetStarted.html) en la *Guía de usuario de Amazon EC2*.

## Paso 2: instalación y configuración de IBM Db2 Data Management Console
<a name="db2-install-setup-dmc"></a>

Tras crear un grupo de búferes, un espacio de tablas de usuario y un espacio de tablas temporal del sistema, tendrá todo listo para instalar y configurar IBM Db2 Data Management Console. 

**importante**  
Debe tener un equipo con Amazon EC2 Linux o Windows que esté en la misma VPC y el mismo grupo de seguridad que la instancia de base de datos de RDS para Db2. La VPC y el grupo de seguridad controlan la conexión a la instancia de base de datos a través de la red interna. Además, ya debe haber [creado una base de datos del repositorio](#db2-creating-repo-db-monitoring-dmc) para IBM Db2 Data Management Console.

**Instalación y configuración de IBM Db2 Data Management Console**

1. Descargue IBM Db2 Data Management Console en [IBM Db2 Data Management Console Version 3.1x releases](https://www.ibm.com/support/pages/ibm-db2-data-management-console-version-31x-releases-new-features-and-enhancements) en el sitio web de soporte de IBM.

1. Instalar IBM Db2 Data Management Console.

1. Abra IBM Db2 Data Management Console y utilice la dirección IP del equipo con Amazon EC2 y el número de puerto que utilizó para la conexión HTTP o HTTPS a la instancia de Amazon EC2. Por ejemplo, utilice `http://xx.xx.xx.xx:11080` o `https://xx.xx.xx.xx.11081`. Sustituya `xx.xx.xx.xx` por la dirección IP del equipo con Amazon EC2. `11080` y `11081` son los puertos predeterminados para las conexiones HTTP y HTTPS.

1. (Opcional) Si desea usar el puerto 80 o 443 en la instancia de Amazon EC2, puede usar Apache httpd o un servidor HTTP de Nginx para enviar mediante proxy el puerto de IBM Db2 Data Management Console a los puertos 80 o 443. Para obtener más información, consulte [Apache HTTP Server Project](https://httpd.apache.org) y [el sitio web de nginx](https://nginx.org/en/).

   Para permitir la conexión a IBM Db2 Data Management Console, debe editar las reglas de entrada del grupo de seguridad. Si usa un proxy, cambie el puerto 80 o 443 de TCP/IP para redirigirlo a los puertos de IBM Db2 Data Management Console. Si no usa un proxy, cambie el puerto 80 o 443 de TCP/IP por los puertos predeterminados 11080 (HTTP) o 11081 (HTTPS).

Ahora puede iniciar sesión en IBM Db2 Data Management Console para configurar la base de datos del repositorio y conectarse a las instancias de base de datos de RDS para Db2. Para obtener más información, consulte [Configuración de la base de datos del repositorio y conexión a las instancias de base de datos](#db2-connecting-db-instances-with-dmc).

## Paso 3: configuración de la base de datos del repositorio y conexión a las instancias de base de datos de RDS para Db2
<a name="db2-connecting-db-instances-with-dmc"></a>

Cuando se conecte a la base de datos del repositorio por primera vez, IBM Db2 Data Management Console configurará automáticamente el repositorio. Una vez configurada la base de datos del repositorio, puede añadir conexiones de base de datos a IBM Db2 Data Management Console. 

Para conectarse a una instancia de base de datos de RDS para Db2, necesita su nombre DNS y el número de puerto. Para obtener información sobre cómo encontrarlos, consulte [Búsqueda del punto de conexión](db2-finding-instance-endpoint.md). También debe conocer el nombre de la base de datos, el nombre de usuario maestro y la contraseña maestra que definió al crear la instancia de base de datos de RDS para Db2. Para obtener más información sobre cómo encontrarlos, consulte [Creación de una instancia de base de datos](USER_CreateDBInstance.md#USER_CreateDBInstance.Creating). Si se conecta a través de Internet, permita que el tráfico llegue al puerto de la base de datos. Para obtener más información, consulte [Creación de una instancia de base de datos](USER_CreateDBInstance.md#USER_CreateDBInstance.Creating).

**Para conectarse a instancias de base de datos de RDS para Db2 con IBM Db2 Data Management Console**

1. Inicie sesión en IBM Db2 Data Management Console con las credenciales que ha configurado durante la instalación.

1. Configure el repositorio. 

   1. En la sección **Conexión y base de datos**, introduzca la siguiente información para su instancia de base de datos de RDS para Db2: 
      + En **Nombre del host**, escriba el nombre DNS de la instancia de base de datos.
      + En **Puerto**, escriba el número de puerto de la instancia de base de datos.
      + En **Base de datos**, escriba el nombre de la base de datos.  
![\[La sección Conexión y base de datos en IBM Db2 Data Management Console con los campos Host, Puerto y Base de datos.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/ibm-dmc-connection-database.png)

   1. En la sección **Seguridad y credenciales**, introduzca la siguiente información para su instancia de base de datos de RDS para Db2:
      + En **Tipo de seguridad**, elija **Usuario y contraseña cifrados**.
      + En **Username (Nombre de usuario)**, escriba el nombre del administrador de base de datos para la instancia de base de datos.
      + En **Contraseña**, escriba la contraseña del administrador de base de datos para la instancia de base de datos.

   1. Elija **Probar conexión**.
**nota**  
Si la conexión no se realiza correctamente, confirme que el puerto de la base de datos esté abierto según las reglas de entrada del grupo de seguridad. Para obtener más información, consulte [Consideraciones sobre grupos de seguridad con Amazon RDS para Db2](db2-security-groups-considerations.md).

      Si no [ha creado manualmente un grupo de búferes, un espacio de tabla de usuario ni un espacio de tabla temporal del sistema](#db2-manually-creating-dmc) en RDS para Db2, es posible que aparezca el siguiente mensaje de error:   
![\[Mensaje de error sobre la falta de permisos para realizar operaciones.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/ibm-dmc-error-message.png)

      Asegúrese de haber creado una tabla de búfer, un espacio de tablas y objetos para un que un repositorio IBM Db2 Data Management Console monitorice su instancia de base de datos de RDS para Db2. También puede utilizar una instancia de base de datos de Db2 de Amazon EC2 para alojar un repositorio de IBM Db2 Data Management Console con el fin de supervisar la instancia de base de datos de RDS para Db2. Para obtener más información, consulte [Paso 1: creación de una base de datos del repositorio para supervisar instancias de base de datos](#db2-creating-repo-db-monitoring-dmc).

   1. Tras probar satisfactoriamente su conexión, seleccione **Siguiente**.  
![\[La sección Seguridad y credenciales en IBM Db2 Data Management Console.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/ibm-dmc-security-credential.png)

   Si IBM Db2 Data Management Console encuentra el grupo de búferes, el espacio de tabla de usuario y el espacio de tabla temporal del sistema en la instancia de base de datos de RDS para Db2, IBM Db2 Data Management Console configurará automáticamente la base de datos del repositorio. Si usa la instancia de Db2 en la instancia de Amazon EC2 como base de datos del repositorio, IBM Db2 Data Management Console creará automáticamente el grupo de búferes y otros objetos.

1. En la ventana de **Configurar inscripción al monitor de eventos de estadísticas**, seleccione **Siguiente**. 

1. (Opcional) Agregue una nueva conexión. Si desea utilizar una instancia de base de datos de RDS para Db2 diferente para la administración y la monitorización, agregue una conexión a una instancia de base de datos de RDS para Db2 que no sea de repositorio.

   1. En la sección **Conexión y base de datos**, introduzca la siguiente información para que la instancia de base de datos de RDS para Db2 la utilice en la administración y la monitorización:
      + En **Nombre de la conexión**, introduzca el identificador de la base de datos de Db2. 
      + En **Nombre del host**, escriba el nombre DNS de la instancia de base de datos.
      + En **Puerto**, escriba el número de puerto de la instancia de base de datos.
      + En **Base de datos**, escriba el nombre de la base de datos.  
![\[La sección Conexión y base de datos para una nueva conexión en IBM Db2 Data Management Console con los campos Host, Puerto y Base de datos.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/ibm-dmc-new-connection-database.png)

   1. En la sección **Seguridad y credenciales**,** **seleccione **Habilitar la recopilación de datos de monitorización**.

   1. Escriba la siguiente información para la instancia de base de datos de RDS para Db2: 
      + En **Username (Nombre de usuario)**, escriba el nombre del administrador de base de datos para la instancia de base de datos.
      + En **Contraseña**, escriba la contraseña del administrador de base de datos para la instancia de base de datos.

   1. Elija **Probar conexión**.

   1. Tras probar satisfactoriamente su conexión, seleccione **Guardar**.  
![\[Sección Seguridad y credenciales para una nueva conexión en IBM Db2 Data Management Console.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/ibm-dmc-new-security-credential.png)

   Una vez agregada la conexión, aparecerá una ventana similar a la siguiente. Esta ventana indica que la base de datos se ha configurado correctamente.  
![\[Esta ventana indica que la base de datos se ha configurado correctamente en IBM Db2 Data Management Console.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/ibm-dmc-configuration-success.png)

1. Seleccione **Ir a bases de datos**. Aparecerá una ventana de bases de datos similar a la que se muestra a continuación. Esta ventana es un panel que muestra las métricas, los estados y las conexiones.  
![\[La ventana de resumen de Bases de datos en IBM Db2 Data Management Console.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/ibm-dmc-database-view.png)

Ya puede comenzar a utilizar IBM Db2 Data Management Console.

## Uso de IBM Db2 Data Management Console
<a name="db2-using-dmc"></a>

Puede utilizar IBM Db2 Data Management Console para realizar los siguientes tipos de tareas:
+ Administrar varias instancias de base de datos de RDS para Db2.
+ Ejecutar comandos SQL.
+ Explorar, crear o cambiar los datos y los objetos de la base de datos.
+ Crear instrucciones `EXPLAIN PLAN` en SQL.
+ Ajustar consultas.

**Para ejecutar comandos SQL y ver los resultados**

1. En la barra de navegación, seleccione **SQL**.

1. Introduzca un comando SQL.

1. Seleccione **Ejecutar todo**.

1. Para ver los resultados, seleccione la pestaña **Resultados**.

![\[La ventana Base de datos que muestra cómo ejecutar un comando de SQL y ver los resultados en IBM Db2 Data Management Console.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/ibm-dmc-sql-run-example.png)


# Consideraciones sobre grupos de seguridad con Amazon RDS para Db2
<a name="db2-security-groups-considerations"></a>

Para poder conectarse a la instancia de base de datos de Amazon RDS para Db2, esta debe estar asociada a un grupo de seguridad que contenga las direcciones IP y la configuración de red necesarias. La instancia de base de datos de RDS para Db2 puede utilizar el grupo de seguridad predeterminado. Si se asignó un grupo de seguridad no configurado predeterminado cuando se creó la instancia de base de datos de RDS para Db2, el firewall evitará las conexiones a Internet. Para obtener información acerca de la creación de grupos de seguridad nuevos, consulte [Control de acceso con grupos de seguridad](Overview.RDSSecurityGroups.md).

Después de crear el nuevo grupo de seguridad, modifique la instancia de base de datos para asociarla al grupo. Para obtener más información, consulte [Modificación de una instancia de base de datos de Amazon RDS](Overview.DBInstance.Modifying.md). 

Puede mejorar la seguridad utilizando SSL para cifrar conexiones a su instancia de base de datos. Para obtener más información, consulte [Uso de SSL con una instancia de base de datos de Amazon RDS para Db2](Db2.Concepts.SSL.md).

# Protección de conexiones de instancias de bases de datos de Amazon RDS para Db2
<a name="Db2.Concepts.RestrictedDBAPrivileges"></a>

Amazon RDS para Db2 admite formas de mejorar la seguridad de sus instancias de base de datos de RDS para Db2. 

**Topics**
+ [Uso de SSL con una instancia de base de datos de Amazon RDS para Db2](Db2.Concepts.SSL.md)
+ [Uso de la autenticación de Kerberos para Amazon RDS para Db2](db2-kerberos.md)

# Uso de SSL con una instancia de base de datos de Amazon RDS para Db2
<a name="Db2.Concepts.SSL"></a>

SSL es un protocolo estándar del sector que se utiliza para proteger las conexiones de red entre el cliente y el servidor. Después de la versión 3.0 de SSL, el nombre se cambió a TLS, pero a menudo nos referimos al protocolo como SSL. Amazon RDS admite el cifrado SSL para las instancias de bases de datos de Amazon RDS para Db2. Con SSL/TLS puede cifrar una conexión entre el cliente de la aplicación y la instancia de base de datos de RDS para Db2. La compatibilidad con SSL/TLS está disponible en todas las Regiones de AWS para RDS para Db2.



A fin de habilitar el cifrado SSL/TLS para una instancia de base de datos de RDS para Db2, agregue la opción Db2 SSL al grupo de parámetros asociado a la instancia de base de datos. Amazon RDS utiliza un segundo puerto, según lo requiera Db2, para las conexiones SSL/TLS. Esto permite que se produzca la comunicación cifrada de SSL y de texto sin cifrar al mismo tiempo entre una instancia de base de datos y un cliente Db2. Por ejemplo, es posible utilizar el puerto con la comunicación de texto sin cifrar para ponerse en contacto con otros recursos dentro de una VPC mientras se utiliza el puerto con comunicación cifrada SSL para ponerse en contacto con recursos situados fuera de la VPC. 

**Topics**
+ [Crear una conexión SSL/TLS](#db2-creating-ssl-connection)
+ [Conexión a su servidor de bases de datos Db2](#db2-connecting-to-server-ssl)

## Crear una conexión SSL/TLS
<a name="db2-creating-ssl-connection"></a>

Para crear una conexión SSL/TLS, elija una autoridad de certificación (CA), descargue un paquete de certificados para todas las Regiones de AWS y agregue parámetros a un grupo de parámetros personalizado.

### Paso 1: elegir una CA y descargar un certificado
<a name="db2-creating-ssl-connection-prereq"></a>

Elija una autoridad de certificación (CA) y descargue un paquete de certificados para todas las Regiones de AWS. Para obtener más información, consulte [Uso de SSL/TLS para cifrar una conexión a una instancia o un clúster de base de datos](UsingWithRDS.SSL.md).

### Paso 2: actualizar los parámetros de un grupo de parámetros personalizado
<a name="db2-updating-parameters-ssl"></a>

**importante**  
Si utiliza el modelo traiga su propia licencia (BYOL) para RDS para Db2, modifique el grupo de parámetros personalizado que creó para su IBM Customer ID y su IBM Site ID. Si utiliza un modelo de licencia diferente para RDS para Db2, siga el procedimiento para agregar parámetros a un grupo de parámetros personalizado. Para obtener más información, consulte [Opciones de licencias de Amazon RDS para Db2](db2-licensing.md). 

No puede modificar los grupos de parámetros predeterminados de las instancias de base de datos de RDS para Db2. Por lo tanto, debe crear un grupo de parámetros personalizado, modificarlo y asociarlo a las instancias de base de datos de RDS para Db2. Para obtener información acerca de los grupos de parámetros, consulte [Grupos de parámetros de base de datos para instancias de Amazon RDS](USER_WorkingWithDBInstanceParamGroups.md).

 Utilice la configuración de parámetros en la tabla siguiente.


| Parámetro | Valor | 
| --- | --- | 
| DB2COMM | TCPIP,SSL o SSL | 
| SSL\$1SVCENAME | <any port number except the number used for the non-SSL port> | 

**Para actualizar los parámetros de un grupo de parámetros personalizado**

1. Cree un grupo de parámetros personalizado ejecutando el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-parameter-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-parameter-group.html). 

   Incluya las siguientes opciones obligatorias:
   + `--db-parameter-group-name`: un nombre para el grupo de parámetros que se está creando.
   + `--db-parameter-group-family`: la edición y la versión principal del motor de Db2. Valores válidos: `db2-se-11-5`, `db2-ae-11.5`. 
   + `--description`: la descripción para este grupo de parámetros.

   Para obtener más información acerca de cómo crear un grupo de parámetros de base de datos, consulte [Creación de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Creating.md).

1. Modifique los parámetros del grupo de parámetros personalizado que creó ejecutando el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-parameter-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-parameter-group.html).

   Incluya las siguientes opciones obligatorias:
   + `--db-parameter-group-name`: el nombre del grupo de parámetros creado.
   + `--parameters`: una matriz de los nombres de parámetros, valores y métodos de aplicación para la actualización del parámetro.

   Para obtener más información acerca de cómo modificar un grupo de parámetros, consulte [Modificación de los parámetros de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Modifying.md).

1. Asocie el grupo de parámetros a la instancia de base de datos de RDS para Db2. Para obtener más información, consulte [Asociación de un grupo de parámetros de base de datos con una instancia de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Associating.md).

## Conexión a su servidor de bases de datos Db2
<a name="db2-connecting-to-server-ssl"></a>

Las instrucciones para conectarse al servidor de bases de datos Db2 son específicas del lenguaje.

------
#### [ Java ]

**Para conectarse a su servidor de bases de datos Db2 mediante Java**

1. Descargue el controlador JDBC. Para obtener más información, consulte [DB2 JDBC Driver Versions and Downloads](https://www.ibm.com/support/pages/db2-jdbc-driver-versions-and-downloads) en el servicio de asistencia de IBM.

1. Cree un archivo de script de shell con el siguiente contenido. Este script agrega todos los certificados del paquete a un Java KeyStore.
**importante**  
Compruebe que `keytool` exista en la ruta del script para que el script pueda localizarlo. Si utiliza un cliente de Db2, puede localizar el `keytool` en `~sqlib/java/jdk64/jre/bin`.

   ```
   #!/bin/bash
   PEM_FILE=$1
   PASSWORD=$2
   KEYSTORE=$3
   # number of certs in the PEM file
   CERTS=$(grep 'END CERTIFICATE' $PEM_FILE| wc -l)
   for N in $(seq 0 $(($CERTS - 1))); do
       ALIAS="${PEM_FILE%.*}-$N"
       cat $PEM_FILE |
       awk "n==$N { print }; /END CERTIFICATE/ { n++ }" |
       keytool -noprompt -import -trustcacerts -alias $ALIAS -keystore $KEYSTORE -storepass $PASSWORD
   done
   ```

1. Para ejecutar el script de shell e importar el archivo PEM con el paquete de certificados en un Java KeyStore, ejecute el siguiente comando. Sustituya *shell\$1file\$1name.sh* por el nombre del archivo de script de shell y *password* por la contraseña de su Java KeyStore.

   ```
    ./shell_file_name.sh global-bundle.pem password truststore.jks
   ```

1. Para comprobar la conexión a su servidor Db2, ejecute el siguiente comando. Sustituya los siguientes marcadores de posición del ejemplo por la información de la instancia de base de datos de RDS para Db2.
   + *ip\$1address*: la dirección IP del punto de conexión de la instancia de base de datos.
   + *port*: número de puerto de la conexión SSL. Puede ser cualquier número de puerto, excepto el número que se utiliza para el puerto que no es SSL.
   + *database\$1name*: el nombre de la base de datos en su instancia de base de datos.
   + *master\$1username*: el nombre de usuario maestro para la instancia de base de datos.
   + *master\$1password*: la contraseña maestra de la instancia de base de datos.

   ```
   export trustStorePassword=MyPassword
   java -cp ~/dsdriver/jdbc_sqlj_driver/linuxamd64/db2jcc4.jar \
   com.ibm.db2.jcc.DB2Jcc -url \
   "jdbc:db2://ip_address:port/database_name:\
   sslConnection=true;sslTrustStoreLocation=\
   ~/truststore.jks;\
   sslTrustStorePassword=${trustStorePassword};\
   sslVersion=TLSv1.2;\
   encryptionAlgorithm=2;\
   securityMechanism=7;" \
   -user master_username -password master_password
   ```

------
#### [ Node.js ]

**Para conectarse a su servidor de bases de datos Db2 mediante Node.js**

1. Instale el controlador **node-ibm\$1db**. Para obtener más información, consulte [Installing the node-ibm\$1db driver on Linux and UNIX systems](https://www.ibm.com/docs/en/db2/11.5?topic=nodejs-installing-node-db-driver-linux-unix-systems) en la documentación de IBM Db2.

1. Cree un archivo JavaScript basado en el siguiente contenido. Sustituya los siguientes marcadores de posición del ejemplo por la información de la instancia de base de datos de RDS para Db2.
   + *ip\$1address*: la dirección IP del punto de conexión de la instancia de base de datos.
   + *master\$1username*: el nombre de usuario maestro para la instancia de base de datos.
   + *master\$1password*: la contraseña maestra de la instancia de base de datos.
   + *database\$1name*: el nombre de la base de datos en su instancia de base de datos.
   + *port*: número de puerto de la conexión SSL. Puede ser cualquier número de puerto, excepto el número que se utiliza para el puerto que no es SSL.

   ```
   var ibmdb = require("ibm_db");
   const hostname = "ip_address";
   const username = "master_username";
   const password = "master_password";
   const database = "database_name";
   const port = "port";
   const certPath = "/root/qa-bundle.pem";
   ibmdb.open("DRIVER={DB2};DATABASE=" + database + ";HOSTNAME=" + hostname + ";UID=" + username + ";PWD=" + password + ";PORT=" + port + ";PROTOCOL=TCPIP;SECURITY=SSL;SSLServerCertificate=" + certPath + ";", function (err, conn){
    if (err) return console.log(err);
    conn.close(function () {
    console.log('done');
    });
   });
   ```

1. Para ejecutar el archivo JavaScript ejecute el siguiente comando:

   ```
   node ssl-test.js
   ```

------
#### [ Python ]

**Para conectarse a su servidor de bases de datos Db2 mediante Python**

1. Cree un archivo Python con el siguiente contenido. Sustituya los siguientes marcadores de posición del ejemplo por la información de la instancia de base de datos de RDS para Db2.
   + *port*: número de puerto de la conexión SSL. Puede ser cualquier número de puerto, excepto el número que se utiliza para el puerto que no es SSL.
   + *master\$1username*: el nombre de usuario maestro para la instancia de base de datos.
   + *master\$1password*: la contraseña maestra de la instancia de base de datos.
   + *database\$1name*: el nombre de la base de datos en su instancia de base de datos.
   + *ip\$1address*: la dirección IP del punto de conexión de la instancia de base de datos.

   ```
   import click
   import ibm_db
   import sys
   
   port = port;
   master_user_id = "master_username" # Master id used to create your DB instance
   master_password = "master_password" # Master password used to create your DB instance
   db_name = "database_name" # If not given "db-name'
   vpc_customer_private_ip = "ip_address" # Hosts end points - Customer private IP Addressicert_path = "/root/ssl/global-bundle.pem" # cert path
   
   @click.command()        
   @click.option("--path", help="certificate path")
   def db2_connect(path):
   
       try:
           conn = ibm_db.connect(f"DATABASE={db_name};HOSTNAME={vpc_customer_private_ip};PORT={port};
               PROTOCOL=TCPIP;UID={master_user_id};PWD={master_password};SECURITY=ssl;SSLServerCertificate={path};", "", "")
           try:
               ibm_db.exec_immediate(conn, 'create table tablename (a int);')
               print("Query executed successfully")
           except Exception as e:
               print(e)
           finally:
               ibm_db.close(conn)
               sys.exit(1)
       except Exception as ex:
           print("Trying to connect...")
   
   if __name__ == "__main__":
       db2_connect()
   ```

1. Cree el siguiente script de shell, que ejecuta el archivo Python que ha creado. Reemplace *python\$1file\$1name.py* por el nombre de su archivo de script Python.

   ```
   #!/bin/bash
   PEM_FILE=$1
   # number of certs in the PEM file
   CERTS=$(grep 'END CERTIFICATE' $PEM_FILE| wc -l)
   
   for N in $(seq 0 $(($CERTS - 1))); do
       ALIAS="${PEM_FILE%.*}-$N"
       cert=`cat $PEM_FILE | awk "n==$N { print }; /END CERTIFICATE/ { n++ }"`
       cat $PEM_FILE | awk "n==$N { print }; /END CERTIFICATE/ { n++ }" > $ALIAS.pem
       python3 <python_file_name.py> --path $ALIAS.pem
       output=`echo $?`
       if [ $output == 1 ]; then
           break
       fi
   done
   ```

1. Para importar el archivo PEM con el paquete de certificados y ejecutar el script de shell, ejecute el siguiente comando. Sustituya *shell\$1file\$1name.sh* por el nombre de su archivo de script de shell.

   ```
   ./shell_file_name.sh global-bundle.pem
   ```

------
#### [ Db2 CLP ]

**Para conectarse a su servidor de bases de datos Db2 mediante Db2 CLP**

1. Para conectarse a la instancia de Db2 mediante Db2 CLP, necesita GSKit, que puede descargar en [IBM Fix Central](https://www.ibm.com/support/fixcentral/swg/selectFixes?parent=Security+Systems&product=ibm/Tivoli/IBM+Global+Security+Kit&release=All&platform=All&function=fixId&fixids=8.0.*&source=fc). Para usar Db2 CLP, también necesita el cliente de IBM Db2, que puede descargar desde [Descargar clientes y controladores iniciales de la versión 11.5](https://www.ibm.com/support/pages/download-initial-version-115-clients-and-drivers) en IBM Support.

1. Cree un almacén de claves.

   ```
   gsk8capicmd_64 -keydb -create -db "directory/keystore-filename" -pw "changeThisPassword" -type pkcs12 -stash
   ```

1. Importe las agrupaciones de certificados al almacén de claves.

   ```
   gsk8capicmd_64 -cert -import -file global-bundle.pem -target directory/keystore-filename> -target_stashed
   ```

1. Actualice la configuración de la instancia de Db2. 

   ```
   db2 update dbm cfg using SSL_CLNT_KEYDB keystore-filename SSL_CLNT_STASH keystore stash file immediate
   ```

1. Catalogue el nodo y la base de datos.

   ```
   db2 catalog tcpip node ssluse1 REMOTE endpoint SERVER ssl_svcename security ssl
   
   db2 catalog database testdb as ssltest at node ssluse1
   ```

1. Conéctese a la base de datos.

   ```
   db2 connect to ssltest user username using password
   ```

------

# Uso de la autenticación de Kerberos para Amazon RDS para Db2
<a name="db2-kerberos"></a>

Puede usar la autenticación de Kerberos para autenticar a los usuarios cuando se conecten a su instancia de base de datos de Amazon RDS para Db2. En esta configuración, su instancia de base de datos funciona con AWS Directory Service for Microsoft Active Directory, también llamado AWS Managed Microsoft AD. Se agrega el dominio y demás información del directorio AWS Managed Microsoft AD a la instancia de base de datos de RDS para Db2. Cuando los usuarios se autentican con una instancia de base de datos de RDS para Db2 unida al dominio de confianza, las solicitudes de autenticación se reenvían al directorio AWS Managed Microsoft AD que se ha creado con Directory Service. 

Mantener todas las credenciales en el mismo directorio puede ahorrarle tiempo y esfuerzo. Con este método, dispone de un lugar centralizado para almacenar y administrar credenciales de numerosas instancias de bases de datos. El uso de un directorio también puede mejorar su perfil de seguridad general.

Además, puede acceder a las credenciales desde su propio Microsoft Active Directory en las instalaciones. Para ello, cree una relación de dominio de confianza para que el directorio de AWS Managed Microsoft AD confíe en su Microsoft Active Directory en las instalaciones. De esta manera, los usuarios pueden acceder a las instancias de la base de datos de RDS para Db2 con la misma experiencia de inicio de sesión único (SSO) de Windows que cuando acceden a cargas de trabajo en la red en las instalaciones.

Para obtener más información, consulte [¿Qué es Directory Service?](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/what_is.html) en la *Guía de administración de AWS Directory Service*.

Para obtener información sobe la autenticación Kerberos, consulte los siguientes temas:

**Temas**
+ [Configuración de la autenticación de Kerberos para instancias de base de datos de Amazon RDS para Db2](db2-kerberos-setting-up.md)
+ [Conexión a Amazon RDS para Db2 con autenticación de Kerberos](db2-kerberos-connecting.md)

## Disponibilidad en regiones y versiones
<a name="db2-kerberos-setting-up.RegionVersionAvailability"></a>

La disponibilidad de las características varía según las versiones específicas de cada motor de base de datos y entre Regiones de AWS. Para obtener más información sobre la disponibilidad en versiones y regiones de RDS para Db2 con autenticación de Kerberos, consulte [Regiones y motores de base de datos admitidos para autenticación de Kerberos en Amazon RDS](Concepts.RDS_Fea_Regions_DB-eng.Feature.KerberosAuthentication.md).

**nota**  
La autenticación de Kerberos no es compatible con las clases de instancia de base de datos que están en desuso para las instancias de base de datos de RDS para Db2. Para obtener más información, consulte [Amazon RDS para clases de instancia de Db2](Db2.Concepts.General.InstanceClasses.md).

## Información general sobre la autenticación de Kerberos para instancias de base de datos de RDS para Db2
<a name="db2-kerberos-setting-up-overview"></a>

Para configurar la autenticación de Kerberos para una instancia de base de datos de RDS para Db2, complete los siguientes pasos generales, que se describen con más detalle más adelante: 

1. Utilice AWS Managed Microsoft AD para crear un directorio de AWS Managed Microsoft AD. Puede utilizar la Consola de administración de AWS, la AWS Command Line Interface (AWS CLI) o Directory Service para crear el directorio. Para obtener más información, consulte [Eliminar su directorio AWS Managed Microsoft AD](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ms_ad_getting_started_create_directory.html) en la *Guía de administración de AWS Directory Service*. 

1. Cree un rol de AWS Identity and Access Management (IAM) que utilice la política de IAM administrada `AmazonRDSDirectoryServiceAccess`. El rol de IAM permite a Amazon RDS realizar llamadas al directorio. 

   Para que el rol de IAM permita el acceso, el punto de conexión AWS Security Token Service (AWS STS) debe activarse en la Región de AWS correcta para su Cuenta de AWS. Los puntos de conexión de AWS STS están activos de forma predeterminada en todas las Regiones de AWS y puede usarlos sin ninguna acción posterior. Para obtener más información, consulte [Activación y desactivación de AWS STS en una región de Región de AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html#sts-regions-activate-deactivate) en la *Guía del usuario de IAM*. 

1. Cree o modifique una instancia de base de datos de RDS para Db2 desde la Consola de administración de AWS, la AWS CLI o la API de RDS utilizando uno de los siguientes métodos:
   + Cree una nueva instancia de base de datos de RDS para Db2 utilizando la consola, el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html) o la operación de la API [CreateDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html). Para ver instrucciones, consulte [Creación de una instancia de base de datos de Amazon RDS](USER_CreateDBInstance.md).
   + Modifique una instancia de base de datos de RDS para Db2 existente mediante la consola, el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) o la operación de la API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html). Para obtener instrucciones, consulte [Modificación de una instancia de base de datos de Amazon RDS](Overview.DBInstance.Modifying.md). 
   + Restaure una instancia de base de datos de RDS para Db2 a partir de una instantánea de base de datos utilizando la consola, el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-db-snapshot.html](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-db-snapshot.html) o la operación de la API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceFromDBSnapshot.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceFromDBSnapshot.html). Para obtener instrucciones, consulte [Restauración a una instancia de base de datos](USER_RestoreFromSnapshot.md). 
   + Restaure una instancia de base de datos de RDS para Db2 en un momento dado utilizando la consola, el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-to-point-in-time.html](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-to-point-in-time.html) o la operación de la API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceToPointInTime.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceToPointInTime.html). Para obtener instrucciones, consulte [Restauración de una instancia de base de datos a un momento especificado para Amazon RDS](USER_PIT.md). 

   Puede localizar la instancia de base de datos en la misma Amazon Virtual Private Cloud (VPC) que el directorio o en una Cuenta de AWS o VPC diferente. Cuando cree o modifique la instancia de base de datos de RDS para Db2, realice las siguientes tareas:
   + Proporcione el identificador de dominio (identificador `d-*`) que se generó cuando creó el directorio.
   + Proporcione el nombre del rol de IAM que ha creado.
   + Verifique que el grupo de seguridad de la instancia de base de datos pueda recibir tráfico de entrada del grupo de seguridad del directorio.

1. Configure el cliente de Db2 y verifique que el tráfico puede fluir entre el host cliente y Directory Service para los puertos siguientes:
   + TCP/UDP puerto 53 – DNS
   + TCP 88 – autenticación de Kerberos
   + TCP 389 — LDAP
   + TCP 464 – autenticación de Kerberos

## Administración de una instancia de base de datos en un dominio
<a name="db2-kerberos-managing-domain"></a>

Puede usar la Consola de administración de AWS, la AWS CLI o la API de RDS para administrar la instancia de base de datos y la relación con su Microsoft Active Directory. Puede, por ejemplo, puede asociar un Active Directory para habilitar la autenticación de Kerberos. También puede eliminar la asociación para que un Active Directory deshabilite la autenticación de Kerberos. También puede mover una instancia de base de datos para que sea autenticada externamente por un Microsoft Active Directory a otro.

Por ejemplo, al ejecutar el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) de la CLI, puede llevar a cabo las siguientes acciones:
+ Vuelva a intentar habilitar la autenticación de Kerberos en una pertenencia que haya dado un error especificando el ID de directorio de la pertenencia actual para la opción `--domain`.
+ Deshabilite la autenticación de Kerberos en una instancia de base de datos especificando `none` para la opción `--domain`.
+ Trasladar una instancia de base de datos de un dominio a otro especificando el identificador de dominio del nuevo dominio para la opción `--domain`.

### Descripción de la pertenencia a los dominios
<a name="db2-kerberos-managing-domain.understanding"></a>

Una vez que haya creado o modificado una instancia de base de datos, esta se convierte en miembro del dominio. Puede ver el estado de la suscripción al dominio en la consola o ejecutando el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html) de la CLI. El estado de la instancia de base de datos puede ser uno de los siguientes: 
+ `kerberos-enabled`: la instancia de base de datos tiene habilitada la autenticación de Kerberos.
+ `enabling-kerberos`: AWS está en proceso de habilitar la autenticación de Kerberos en esta instancia de base de datos.
+ `pending-enable-kerberos`: la habilitación de la autenticación de Kerberos está pendiente en esta instancia de base de datos.
+ `pending-maintenance-enable-kerberos`: AWS intentará habilitar la autenticación de Kerberos en la instancia de base de datos durante el próximo periodo de mantenimiento programado.
+ `pending-disable-kerberos`: la deshabilitación de la autenticación de Kerberos está pendiente en esta instancia de base de datos.
+ `pending-maintenance-disable-kerberos`: AWS intentará desactivar la autenticación de Kerberos en la instancia de base de datos durante el próximo periodo de mantenimiento programado.
+ `enable-kerberos-failed`: un problema de configuración ha impedido que AWS habilite la autenticación de Kerberos en la instancia de base de datos. Corrija el problema de configuración antes de volver a ejecutar el comando para modificar la instancia de base de datos.
+ `disabling-kerberos`: AWS está en proceso de desactivar la autenticación de Kerberos en esta instancia de base de datos.

Una solicitud para habilitar la autenticación de Kerberos puede generar un error a causa de un problema de conectividad de la red o de un rol de IAM incorrecto. En algunos casos, el intento de habilitar la autenticación de Kerberos podría fallar al crear o modificar una instancia de base de datos. Si esto ocurre, asegúrese de que está utilizando el rol de IAM correcto y, a continuación modifique la instancia de base de datos para unirse al dominio.

# Configuración de la autenticación de Kerberos para instancias de base de datos de Amazon RDS para Db2
<a name="db2-kerberos-setting-up"></a>

Utilice AWS Directory Service for Microsoft Active Directory (AWS Managed Microsoft AD) para configurar la autenticación de Kerberos de una instancia de base de datos de RDS para Db2. Para configurar la autenticación de Kerberos, siga estos pasos:

**Topics**
+ [Paso 1: crear un directorio con AWS Managed Microsoft AD](#db2-kerberos-setting-up.create-directory)
+ [Paso 2: crear una relación de confianza](#db2-kerberos-setting-up-create-forest-trust)
+ [Paso 3: crear un rol de IAM para que Amazon RDS pueda acceder a Directory Service](#db2-kerberos-setting-up-create-iam-role)
+ [Paso 4: crear y configurar usuarios](#db2-kerberos-setting-up.create-users)
+ [Paso 5: crear un grupo de administración de RDS para Db2 en AWS Managed Microsoft AD](#db2-kerberos-setting-up-vpc-peering)
+ [Paso 6: modificar el parámetro de base de datos](#db2-kerberos-setting-up-modify-db-parameter)
+ [Paso 7: crear o modificar una instancia de base de datos de RDS para Db2](#db2-kerberos-setting-up-create-modify)
+ [Paso 8: recuperar el SID del grupo de Active Directory en PowerShell](#db2-kerberos-setting-up-retrieve-ad-group-sid)
+ [Paso 9: agregar SID a las asignaciones de GroupName a la instancia de base de datos de RDS para Db2](#db2-kerberos-setting-up-add-sid-group-mapping)
+ [Paso 10: configurar un cliente Db2](#db2-kerberos-setting-up-create-logins)

## Paso 1: crear un directorio con AWS Managed Microsoft AD
<a name="db2-kerberos-setting-up.create-directory"></a>

Directory Service crea un Active Directory totalmente administrado en Nube de AWS. Al crear un directorio de AWS Managed Microsoft AD, Directory Service crea dos controladores de dominio y servidores DNS para usted. Los servidores de directorios se crean en diferentes subredes de una VPC. Esta redundancia ayuda a garantizar que su directorio permanezca accesible incluso si ocurre un fallo. 

 Cuando crea un directorio de AWS Managed Microsoft AD, Directory Service realiza en su nombre las siguientes tareas: 
+ Configura un Active Directory dentro de la VPC. 
+ Crea una cuenta de administrador del directorio con el nombre de usuario `Admin` y la contraseña especificada. Esta cuenta le permite administrar el directorio. 
**importante**  
Asegúrese de guardar esta contraseña. Directory Service no almacena esta contraseña y no se puede recuperar ni restablecer.
+ Crea un grupo de seguridad para los controladores del directorio. El grupo de seguridad debe permitir la comunicación con la instancia de base de datos de RDS para Db2.

Al lanzar AWS Directory Service for Microsoft Active Directory, AWS crea una unidad organizativa (OU) que contiene todos los objetos del directorio. Esta unidad organizativa, que tiene el nombre de NetBIOS que introdujo al crear el directorio, se encuentra en la raíz del dominio. La raíz del dominio es propiedad de AWS, que también se encarga de su administración. 

La cuenta `Admin` que se creó con el directorio de AWS Managed Microsoft AD dispone de permisos para realizar las actividades administrativas más habituales para la unidad organizativa: 
+ Crear, actualizar o eliminar usuarios.
+ Añadir recursos a su dominio, como servidores de archivos o de impresión y, a continuación, asignar permisos para esos recursos a usuarios dentro de la unidad organizativa. 
+ Crear unidades organizativas y contenedores adicionales. 
+ Delegar autoridad.
+ Restaurar objetos eliminados de la papelera de reciclaje de Active Directory. 
+ Ejecute Active Directory y los módulos del Servicio de nombres de dominio (DNS) para Windows PowerShell en el Directory Service. 

La cuenta `Admin` también tiene derechos para realizar las siguientes actividades en todo el dominio: 
+ Administrar configuraciones DNS (agregar, quitar o actualizar registros, zonas y programas de envío). 
+ Ver logs de eventos DNS. 
+ Ver logs de eventos de seguridad. 

**Para crear un directorio con AWS Managed Microsoft AD**

1. Inicie sesión en Consola de administración de AWS y abra la consola de Directory Service en [https://console.aws.amazon.com/directoryservicev2/](https://console.aws.amazon.com/directoryservicev2/).

1. Elija **Configurar directorio**.

1. Elija **AWS Managed Microsoft AD**. AWS Managed Microsoft AD es la única opción que se admite actualmente para usar con Amazon RDS. 

1. Elija ******Siguiente******.

1. En la página ******Ingrese la información del directorio******, facilite la siguiente información: 
   + **Edición**: elija la edición que se adapte a sus necesidades.
   + **Nombre de DNS del directorio**:** **el nombre completo del directorio, como por ejemplo `corp.example.com`. 
   + **Nombre de NetBIOS del directorio**:** **un nombre abreviado del directorio opcional, como `CORP`.
   + **Descripción del directorio**: una descripción opcional para el directorio. 
   + **Contraseña de administrador**:** **la contraseña del administrador del directorio. Al crear el directorio, se crea también una cuenta de administrador con el nombre de usuario `Admin` y esta contraseña. 

     La contraseña del administrador del directorio no puede contener la palabra "admin". La contraseña distingue entre mayúsculas y minúsculas y debe tener un mínimo de 864 caracteres y un máximo de 64. También debe contener al menos un carácter de tres de las siguientes categorías: 
     + Letras minúsculas (a–z) 
     + Letras mayúsculas (A–Z) 
     + Números (0–9) 
     + Caracteres no alfanuméricos (\$1\$1@\$1\$1%^&\$1\$1-\$1=`\$1\$1()\$1\$1[]:;"'<>,.?/) 
     + Confirmar contraseña: vuelva a escribir la contraseña del administrador. 
**importante**  
Asegúrese de guardar esta contraseña. Directory Service no almacena esta contraseña y no se puede recuperar ni restablecer.

1. Elija **Next (Siguiente)**.

1. En la página **Choose VPC and subnets (Elegir la VPC y las subredes)**, proporcione la información siguiente:
   + **VPC**: elija la VPC del directorio. Puede crear la instancia de base de datos de RDS para Db2 en esta misma VPC o en una VPC diferente. 
   + **Subredes**: elija las subredes de los servidores del directorio. Las dos subredes deben estar en diferentes zonas de disponibilidad. 

1. Elija **Next (Siguiente)**.

1. Revise la información del directorio. Si es necesario realizar algún cambio, seleccione **Previous (Anterior)** y realizar los cambios. Cuando la información sea correcta, seleccione **Create directory (Crear directorio)**.   
![\[La ventana Revisar y crear durante la creación del directorio en la consola de Directory Service.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/db2-create-ADS-directory.png)

La creación del directorio tarda varios minutos. Cuando se haya creado correctamente, el valor de **Status (Estado)** cambiará a **Active (Activo)**. 

Para ver información acerca de su directorio, seleccione el ID del directorio en **ID de directorio**. Anote el valor de **Directory ID (ID de directorio)**. Necesita este valor cuando cree o modifique su instancia de base de datos de RDS para Db2. 

![\[La sección Detalles del directorio con ID de directorio en la consola de Directory Service.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/db2-ADS-directory-details.png)


## Paso 2: crear una relación de confianza
<a name="db2-kerberos-setting-up-create-forest-trust"></a>

Si planea utilizar solo AWS Managed Microsoft AD, pase a [Paso 3: crear un rol de IAM para que Amazon RDS pueda acceder a Directory Service](#db2-kerberos-setting-up-create-iam-role).

Para habilitar la autenticación Kerberos mediante Active Directory autoadministrado, debe crear una relación de confianza entre bosques entre Active Directory autoadministrado y el . Una confianza entre bosques es una relación de confianza entre Microsoft AD y Active Directory autoadministrado y el AWS Managed Microsoft AD creado en el paso anterior. La confianza también puede ser bidireccional, donde ambos Active Directories confían entre sí. Para obtener más información acerca de la configuración de relaciones de confianza entre bosques con Directory Service, consulte [Cuándo crear una relación de confianza](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ms_ad_tutorial_setup_trust.html) en la *Guía de administración de AWS Directory Service*.

## Paso 3: crear un rol de IAM para que Amazon RDS pueda acceder a Directory Service
<a name="db2-kerberos-setting-up-create-iam-role"></a>

Para que Amazon RDS llame a Directory Service en su nombre, su cuenta de Cuenta de AWS precisa un rol de IAM que utilice la política de IAM administrada `AmazonRDSDirectoryServiceAccess`. Este rol permite a Amazon RDS realizar llamadas a Directory Service.

Cuando se crea una instancia de base de datos con la Consola de administración de AWS y la cuenta de usuario de la consola tiene el permiso `iam:CreateRole`, la consola crea automáticamente el rol de IAM necesario. En este caso, el nombre del rol es `rds-directoryservice-kerberos-access-role`. De no ser así, debe crear el rol de IAM manualmente. Cuando cree este rol de IAM, elija `Directory Service` y asocie la política administrada de AWS `AmazonRDSDirectoryServiceAccess` a este. 

A fin de obtener más información acerca de la creación de roles de IAM para un servicio, consulte [Creación de un rol para delegar permisos a un servicio de AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html) en la *guía del usuario de IAM*. 

**nota**  
El rol de IAM utilizado para la autenticación de Windows para RDS para Microsoft SQL Server no se puede usar en RDS para Db2.

Como alternativa al uso de la política administrada de `AmazonRDSDirectoryServiceAccess`, puede crear políticas con los permisos necesarios. En este caso, el rol de IAM debe tener la siguiente política de confianza de IAM:

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "",
      "Effect": "Allow",
      "Principal": {
        "Service": [
          "directoryservice.rds.amazonaws.com",
          "rds.amazonaws.com"
        ]
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
```

------

El rol debe también tener la siguiente política de rol de IAM:

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Action": [
        "ds:DescribeDirectories",
        "ds:AuthorizeApplication",
        "ds:UnauthorizeApplication",
        "ds:GetAuthorizedApplicationDetails"
      ],
    "Effect": "Allow",
    "Resource": "*"
    }
  ]
}
```

------

## Paso 4: crear y configurar usuarios
<a name="db2-kerberos-setting-up.create-users"></a>

Puede utilizar la herramienta Active Directory Users and Computers para crear usuarios. Esta es una de las herramientas de Active Directory Domain Services y Active Directory Lightweight Directory Services. Para obtener más información, consulte [Agregar usuarios y equipos al dominio de Active Directory](https://learn.microsoft.com/en-us/troubleshoot/windows-server/identity/create-an-active-directory-server#add-users-and-computers-to-the-active-directory-domain) en la documentación de Microsoft. En este caso, los usuarios son individuos u otras entidades, como sus equipos, que forman parte del dominio y cuyas identidades se mantienen en el directorio. 

Para crear usuarios en un directorio de Directory Service, debe estar conectado a una instancia de Amazon EC2 basada en Windows que sea miembro del directorio de Directory Service. Al mismo tiempo, debe estar registrado como usuario con privilegios para crear usuarios. Para obtener más información, consulte [Crear un usuario](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ms_ad_manage_users_groups_create_user.html) en la *Guía de administración de AWS Directory Service*.

## Paso 5: crear un grupo de administración de RDS para Db2 en AWS Managed Microsoft AD
<a name="db2-kerberos-setting-up-vpc-peering"></a>

RDS para Db2 no admite la autenticación de Kerberos del usuario maestro ni de los dos usuarios reservados de Amazon RDS `rdsdb` y `rdsadmin`. En su lugar, debe crear un nuevo grupo llamado `masterdba` en AWS Managed Microsoft AD. Para obtener más información, consulte [Crear una cuenta de grupo en Active Directory](https://learn.microsoft.com/en-us/windows/security/operating-system-security/network-security/windows-firewall/create-a-group-account-in-active-directory) en la documentación de Microsoft. Todos los usuarios que agregue a este grupo tendrán privilegios de usuario maestro.

Una vez habilitada la autenticación de Kerberos, el usuario maestro pierde el rol `masterdba`. Como resultado, el usuario maestro no podrá acceder a la pertenencia al grupo de usuarios local de la instancia a menos que deshabilite la autenticación de Kerberos. Para seguir utilizando el usuario maestro con contraseña de inicio de sesión, cree un usuario en AWS Managed Microsoft AD con el mismo nombre que el usuario maestro. Luego, agregue los usuarios al grupo `masterdba`.

## Paso 6: modificar el parámetro de base de datos
<a name="db2-kerberos-setting-up-modify-db-parameter"></a>

Si planea utilizar solo AWS Managed Microsoft AD, pase a [Paso 7: crear o modificar una instancia de base de datos de RDS para Db2Paso 7: crear o modificar una instancia de base de datos](#db2-kerberos-setting-up-create-modify).

Para habilitar la autenticación Kerberos mediante Active Directory autoadministrado, debe establecer el parámetro `rds.active_directory_configuration` en `AWS_MANAGED_AD_WITH_TRUST` en el grupo de parámetros. De forma predeterminada, este parámetro está establecido en `AWS_MANAGED_AD` para usar solo AWS Managed Microsoft AD.

Para obtener información acerca de cómo modificar los parámetros de base de datos, consulte [Modificación de los parámetros en grupos de parámetros](db2-supported-parameters.md#db2-modifying-parameter-group-parameters).

## Paso 7: crear o modificar una instancia de base de datos de RDS para Db2
<a name="db2-kerberos-setting-up-create-modify"></a>

Cree o modifique una instancia de base de datos de RDS para Db2 para usarla con su directorio. Puede utilizar la Consola de administración de AWS, la AWS CLI o la API de RDS para asociar una instancia de base de datos con un directorio. Puedes hacerlo de una de las siguientes formas:
+ Cree una nueva instancia de base de datos de RDS para Db2 utilizando la consola, el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html) o la operación de la API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html). Para obtener instrucciones, consulte [Creación de una instancia de base de datos de Amazon RDS](USER_CreateDBInstance.md).
+ Modifique una instancia de base de datos de RDS para Db2 existente utilizando la consola, el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) o la operación de la API [ModifyDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html). Para obtener instrucciones, consulte [Modificación de una instancia de base de datos de Amazon RDS](Overview.DBInstance.Modifying.md). 
+ Restaure una instancia de base de datos de RDS para Db2 a partir de una instantánea de base de datos utilizando la consola, el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-db-snapshot.html](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-db-snapshot.html) o la operación de la API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceFromDBSnapshot.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceFromDBSnapshot.html). Para obtener instrucciones, consulte [Restauración a una instancia de base de datos](USER_RestoreFromSnapshot.md). 
+ Restaure una instancia de base de datos de RDS para Db2 en un momento dado utilizando la consola, el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-to-point-in-time.html](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-to-point-in-time.html) o la operación de la API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceToPointInTime.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceToPointInTime.html). Para obtener instrucciones, consulte [Restauración de una instancia de base de datos a un momento especificado para Amazon RDS](USER_PIT.md). 

La autenticación de Kerberos solo es compatible con instancias de base de datos de RDS para Db2 en una VPC. La instancia de DB puede estar en la misma VPC que el directorio o en una VPC diferente. La instancia de base de datos debe usar un grupo de seguridad que permita el ingreso y la salida dentro de la VPC del directorio, de modo que la instancia de base de datos pueda comunicarse con el directorio.

### Consola
<a name="db2-kerberos-setting-up-create-modify-console"></a>

Si utiliza la consola para crear, modificar o restaurar una instancia de base de datos, elija **Contraseña y autenticación de Kerberos** en la sección **Autenticación de base de datos**. Luego, elija **Browse Directory** (Examinar directorio). Seleccione el directorio o elija **Crear un nuevo directorio** para utilizar Directory Service.

![\[La sección Autenticación de base de datos con Autenticación de contraseña y de Kerberos seleccionada en la consola de Amazon RDS.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/db2-database-authentication-directory.png)


### AWS CLI
<a name="db2-kerberos-setting-up-create-modify-cli"></a>

Cuando utilice la AWS CLI, se necesitan los siguientes parámetros para que la instancia de base de datos pueda usar el directorio que ha creado:
+ Para el parámetro `--domain`, utilice el identificador de dominio (identificador “`d-*`“) que se generó cuando creó el directorio.
+ Para el parámetro `--domain-iam-role-name`, utilice el rol que creó que usa la política `AmazonRDSDirectoryServiceAccess` de IAM administrada.

El siguiente comando de la CLI modifica una instancia de base de datos para usar un directorio. Sustituya los siguientes valores de muestra en el ejemplo por los suyos:
+ *db\$1instance\$1name*: el nombre de su instancia de base de datos de RDS para Db2.
+ *directory\$1id*: el ID del directorio AWS Directory Service for Microsoft Active Directory que ha creado.
+ *role\$1name*: el nombre del rol de IAM que ha creado.

```
aws rds modify-db-instance --db-instance-identifier db_instance_name --domain d-directory_id --domain-iam-role-name role_name 
```

**importante**  
Si modifica una instancia de base de datos para habilitar la autenticación de Kerberos, reinicie la instancia de base de datos después de realizar el cambio.

## Paso 8: recuperar el SID del grupo de Active Directory en PowerShell
<a name="db2-kerberos-setting-up-retrieve-ad-group-sid"></a>

Un identificador de seguridad (SID) solo identifica una entidad principal de seguridad o un grupo de seguridad. Cuando se crea un grupo de seguridad o una cuenta en Active Directory, Active Directory asigna un SID al grupo. Para recuperar el SID del grupo de seguridad de AD de Active Directory, utilice el cmdlet `Get-ADGroup` en un equipo cliente de Windows que forme parte del dominio de Active Directory. El parámetro `Identity` especifica el nombre del grupo de Active Directory para el que desea el SID.

En el siguiente ejemplo, se devuelve el SID del grupo de Active Directory `adgroup1`.

```
C:\Users\Admin> Get-ADGroup -Identity adgroup1 | select SID

             SID
-----------------------------------------------
S-1-5-21-3168537779-1985441202-1799118680-1612
```

Debe generar esta asignación para todos los grupos que sean relevantes para la base de datos.

## Paso 9: agregar SID a las asignaciones de GroupName a la instancia de base de datos de RDS para Db2
<a name="db2-kerberos-setting-up-add-sid-group-mapping"></a>

Debe agregar el SID a las asignaciones de GroupName creadas en el paso anterior a la instancia de base de datos de RDS para Db2. Para cada asignación, llame al siguiente procedimiento almacenado. Reemplace el *SID* y el *group\$1name* por su propia información. 

```
db2 connect to rdsadmin
db2 "call rdsadmin.set_sid_group_mapping(?, 'SID','group_name')"
```

Para obtener más información, consulte [rdsadmin.set\$1sid\$1group\$1mapping](db2-sp-granting-revoking-privileges.md#db2-sp-set-sid-group-mapping). 

Para obtener información sobre cómo comprobar el estado de la tarea, consulte [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status). 

## Paso 10: configurar un cliente Db2
<a name="db2-kerberos-setting-up-create-logins"></a>

**Para configurar un cliente Db2**

1. Cree un archivo **/etc/krb5.conf** (o equivalente) para apuntar al dominio.
**nota**  
Para los sistemas operativos Windows, cree un archivo **C:\$1windows\$1krb5.ini**.

1. Verifique que el tráfico puede fluir entre el host cliente y Directory Service. Use una utilidad de red como, por ejemplo, Netcat para las siguientes tareas:

   1. Verificar el tráfico sobre DNS para el puerto 53.

   1. Verificar el tráfico sobre TCP/UDP para el puerto 53 y para Kerberos, lo que incluye los puertos 88 y 464 para Directory Service.

1. Verifique que el tráfico puede fluir entre el host cliente y la instancia de base de datos sobre el puerto de base de datos. Puede usar el comando `db2` para conectarse a la base de datos y acceder a ella.

El ejemplo siguiente es el contenido del archivo /etc/krb5.conf para AWS Managed Microsoft AD:

```
[libdefaults]
default_realm = EXAMPLE.COM
[realms]
EXAMPLE.COM = {
kdc = example.com
admin_server = example.com
}
[domain_realm]
.example.com = EXAMPLE.COM
example.com = EXAMPLE.COM
```

# Conexión a Amazon RDS para Db2 con autenticación de Kerberos
<a name="db2-kerberos-connecting"></a>

Utilice el siguiente procedimiento para conectarse a una instancia de base de datos de Amazon RDS para Db2 con autenticación de Kerberos.

**Para conectarse a RDS para Db2 con autenticación de Kerberos**

1. En el símbolo del sistema, ejecute el siguiente comando. En el ejemplo siguiente, sustituya *username* por el nombre de su usuario Microsoft Active Directory.

   ```
   kinit username
   ```

1. Si la instancia de base de datos de RDS para Db2 utiliza una VPC accesible públicamente, ponga una dirección IP privada para su punto de conexión de instancia de base de datos en su archivo `/etc/hosts` en el cliente EC2. El siguiente ejemplo obtiene la dirección IP y, a continuación, la agrega al archivo `/etc/hosts`.

   ```
   % dig +short Db2-endpoint.AWS-Region.rds.amazonaws.com  
   ;; Truncated, retrying in TCP mode.
   ec2-34-210-197-118.AWS-Region.compute.amazonaws.com.
   34.210.197.118 
   
   % echo "34.210.197.118  Db2-endpoint.AWS-Region.rds.amazonaws.com" >> /etc/hosts
   ```

1. Utilice el siguiente comando para iniciar sesión en una instancia de base de datos de RDS para Db2 que esté asociada a Active Directory. Sustituya *database\$1name* por el nombre de la base de datos de RDS para Db2.

   ```
   db2 connect to database_name
   ```

# Administración de la instancia de base de datos de Amazon RDS para Db2
<a name="db2-administering-db-instance"></a>

Este tema abarca las tareas de administración comunes que se realizan con una instancia de base de datos de Amazon RDS para Db2. Algunas tareas son las mismas para todas las instancias de base de datos de Amazon RDS. Otras tareas son específicas de RDS para Db2.

Las siguientes tareas son comunes para todas las bases de datos de RDS. También hay tareas específicas de RDS para Db2, como la conexión a una base de datos de RDS para Db2 con un cliente SQL estándar.


| Área de la tarea | Documentación relacionada | 
| --- | --- | 
|  **Clases de instancias, almacenamiento y PIOPS** Si está creando una instancia de producción, aprenda cómo funcionan las clases de instancia, los tipos de almacenamiento y las IOPS provisionadas en Amazon RDS.   |  [Clases de instancia de base de datos de ](Concepts.DBInstanceClass.md) [Tipos de almacenamiento de Amazon RDS](CHAP_Storage.md#Concepts.Storage)  | 
|  **Implementaciones Multi-AZ** Una instancia de base de datos de producción debe usar implementaciones Multi-AZ. Las implementaciones Multi-AZ proporcionan unos niveles superiores de disponibilidad, durabilidad de los datos y tolerancia a errores para las instancias de base de datos.   |  [Configuración y administración de una implementación multi-AZ para Amazon RDS](Concepts.MultiAZ.md)  | 
|  **Amazon VPC** Si su Cuenta de AWS tiene una nube privada virtual (VPC) predeterminada, la instancia de base de datos se creará automáticamente dentro de la VPC predeterminada. Si su cuenta no tiene una VPC predeterminada y desea que la instancia de base de datos esté en una VPC, debe crear los grupos de VPC y de subredes antes de crear la instancia de base de datos.   |  [Uso de una instancia de base de datos en una VPC](USER_VPC.WorkingWithRDSInstanceinaVPC.md)  | 
|  **Grupos de seguridad** De forma predeterminada, las instancias de base de datos utilizan un firewall que impide el acceso. Asegúrese de crear un grupo de seguridad con las direcciones IP y la configuración de red correctas para acceder a la instancia de base de datos.  |  [Control de acceso con grupos de seguridad](Overview.RDSSecurityGroups.md)  | 
|  **Grupos de parámetros** Como su instancia de base de datos de RDS para Db2 requiere que añada los parámetros `rds.ibm_customer_id` y `rds.ibm_site_id`, cree un grupo de parámetros antes de crear la instancia de base de datos. Si su instancia de base de datos requiere otros parámetros de base de datos concretos, añádalos también a este grupo de parámetros antes de crear la instancia de base de datos.  |  [Adición de ID de IBM a un grupo de parámetros para instancias de base de datos de RDS para Db2](db2-licensing.md#db2-licensing-options-byol-adding-ids) [Grupos de parámetros para Amazon RDS](USER_WorkingWithParamGroups.md)  | 
|  **Grupos de opciones** Si la instancia de base de datos requiere opciones de base de datos concretas, cree un grupo de opciones antes de crear la instancia de base de datos.  |  [Opciones de instancias de base de datos de Amazon RDS para Db2](Db2.Options.md)  | 
|  **Conexión a la instancia de base de datos** Después de crear un grupo de seguridad y de asociarlo a una instancia de base de datos, puede conectarse a la instancia de base de datos usando cualquier aplicación cliente estándar de SQL, como IBM Db2 CLP.   |  [Conexión a la instancia de base de datos de Db2](USER_ConnectToDb2DBInstance.md)  | 
|  **Copia de seguridad y restauración** Puede configurar su instancia de base de datos para que realice copias de seguridad del almacenamiento automatizadas o tomar instantáneas manuales y restaurar después las instancias a partir de las copias de seguridad o las instantáneas.   | [Copia de seguridad, restauración y exportación de datos](CHAP_CommonTasks.BackupRestore.md) | 
|  **Supervisión** Puede supervisar una instancia de base de datos de RDS para Db2 con IBM Db2 Data Management Console.  También puede monitorizar una instancia de base de datos de RDS para Db2 utilizando las métricas, los eventos y la monitorización avanzada de CloudWatch Amazon RDS.   |  [Conexión a la instancia de base de datos de Amazon RDS para Db2 con IBM Db2 Data Management Console](db2-connecting-with-ibm-data-management-console.md) [Consulta de métricas en la consola de Amazon RDS](USER_Monitoring.md) [Consulta de eventos de Amazon RDS](USER_ListEvents.md) [Supervisión de las métricas del sistema operativo con Supervisión mejorada](USER_Monitoring.OS.md)  | 
|  **Archivos de registro** Puede obtener acceso a los archivos de log de la instancia de base de datos de RDS para Db2.  |  [Supervisión de archivos de registro de Amazon RDS](USER_LogAccess.md)  | 

**Topics**
+ [Realización de tareas comunes del sistema para instancias de base de datos de Amazon RDS para Db2](db2-performing-common-system-tasks-db-instances.md)
+ [Ejecución de tareas comunes de base de datos para instancias de base de datos de Amazon RDS para Db2](db2-performing-common-database-tasks-db-instances.md)

# Realización de tareas comunes del sistema para instancias de base de datos de Amazon RDS para Db2
<a name="db2-performing-common-system-tasks-db-instances"></a>

Puede realizar ciertas tareas comunes de administrador de bases de datos relacionadas con el sistema en las instancias de base de datos de Amazon RDS que ejecuten Db2. Para ofrecer una experiencia de servicio administrado, Amazon RDS no proporciona acceso mediante shell a las instancias de bases de datos y restringe el acceso a ciertos procedimientos y tablas del sistema que requieren privilegios avanzados. 

Para obtener información sobre cómo conceder y revocar privilegios y cómo conectarse a la base de datos remota de RDS for Db2, consulte los temas siguientes.

**Temas**
+ [Concesión y revocación de privilegios de RDS para Db2](db2-granting-revoking-privileges.md)
+ [Asociación a la instancia de base de datos RDS para Db2 remota](db2-attaching-to-remote.md)

## Creación de un punto de conexión de base de datos personalizado
<a name="db2-creating-custom-database-endpoint"></a>

Al migrar a Amazon RDS para Db2, puede utilizar direcciones URL de punto de conexión de base de datos personalizadas para minimizar los cambios en la aplicación. Por ejemplo, si utiliza `db2.example.com` como registro DNS actual, puede añadirlo a Amazon Route 53. En Route 53, puede usar zonas alojadas privadas para asignar el punto de conexión de su base de datos de DNS actual a un punto de conexión de base de datos de RDS para Db2. Para añadir un registro `A` o `CNAME` personalizado para un punto de conexión de base de datos de Amazon RDS, consulte [Registro y administración de dominios mediante Amazon Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/registrar.html) en la *Guía para desarrolladores de Amazon Route 53*.

**nota**  
Si no puede transferir su dominio a Route 53, puede usar su proveedor de DNS para crear un registro `CNAME` para la URL del punto de conexión de la base de datos de RDS para Db2. Consulte la documentación de su proveedor de DNS.

# Concesión y revocación de privilegios de RDS para Db2
<a name="db2-granting-revoking-privileges"></a>

Los usuarios obtienen acceso a las bases de datos al pertenecer a grupos asociados a las bases de datos.

Utilice los siguientes procedimientos para conceder y revocar privilegios para controlar el acceso a la base de datos. 

Estos procedimientos utilizan IBM Db2 CLP en un equipo local para conectarse a una instancia de base de datos de RDS para Db2. Asegúrese de catalogar el nodo TCP/IP y la base de datos para conectarse a la instancia de base de datos de RDS para Db2 que se ejecuta en su equipo local. Para obtener más información, consulte [Conexión a la instancia de base de datos de Amazon RDS para Db2 con IBM Db2 CLP](db2-connecting-with-clp-client.md).

**Topics**
+ [Concesión a un usuario de acceso a su base de datos](#db2-granting-user-access)
+ [Cambio de la contraseña de un usuario](#db2-changing-user-password)
+ [Agregar grupos a un usuario](#db2-adding-group-to-user)
+ [Eliminación de grupos de un usuario](#db2-removing-groups-from-user)
+ [Eliminación de un usuario](#db2-removing-user)
+ [Mostrar usuarios](#db2-listing-users-database)
+ [Creación de un rol](#db2-creating-role)
+ [Concesión de un rol](#db2-granting-role)
+ [Revocación de un rol](#db2-revoking-role)
+ [Descarte de un rol](#db2-dropping-role)
+ [Concesión de autorización a la base de datos](#db2-granting-dbadmin-auth)
+ [Revocación de la autorización de una base de datos](#db2-revoking-dbadmin-auth)

## Concesión a un usuario de acceso a su base de datos
<a name="db2-granting-user-access"></a>

**Para conceder a un usuario acceso a su base de datos**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 connect to rdsadmin user master_username using master_password
   ```

   El resultado de este comando debería ser similar al siguiente ejemplo:

   ```
   Database Connection Information
       
   Database server        = DB2/LINUXX8664 11.5.8.0
   SQL authorization ID   = ADMIN
   Local database alias   = RDSADMIN
   ```

1. Agregue un usuario a su lista de autorización llamando a `rdsadmin.add_user`. Para obtener más información, consulte [rdsadmin.add\$1user](db2-sp-granting-revoking-privileges.md#db2-sp-add-user). 

   ```
   db2 "call rdsadmin.add_user(
       'username',
       'password',
       'group_name,group_name')"
   ```

1. (Opcional) Agregue grupos adicionales al usuario llamando a `rdsadmin.add_groups`. Para obtener más información, consulte [rdsadmin.add\$1groups](db2-sp-granting-revoking-privileges.md#db2-sp-add-groups). 

   ```
   db2 "call rdsadmin.add_groups(
       'username',
       'group_name,group_name')"
   ```

1. Confirme las autoridades que están disponibles para el usuario. En el siguiente ejemplo, sustituya *rds\$1database\$1alias*, *master\$1user* y *master\$1password* por su propia información. Además, sustituya *username* por el nombre de usuario del usuario.

   ```
   db2 terminate
   db2 connect to rds_database_alias user master_user using master_password
   db2 "SELECT SUBSTR(AUTHORITY,1,20) AUTHORITY, D_USER, D_GROUP, D_PUBLIC
          FROM TABLE (SYSPROC.AUTH_LIST_AUTHORITIES_FOR_AUTHID ('username', 'U') ) AS T
          ORDER BY AUTHORITY"
   ```

   El resultado de este comando debería ser similar al siguiente ejemplo:

   ```
   AUTHORITY            D_USER D_GROUP D_PUBLIC
   -------------------- ------ ------- --------
   ACCESSCTRL           N      N       N
   BINDADD              N      N       N
   CONNECT              N      N       N
   CREATETAB            N      N       N
   CREATE_EXTERNAL_ROUT N      N       N
   CREATE_NOT_FENCED_RO N      N       N
   CREATE_SECURE_OBJECT N      N       N
   DATAACCESS           N      N       N
   DBADM                N      N       N
   EXPLAIN              N      N       N
   IMPLICIT_SCHEMA      N      N       N
   LOAD                 N      N       N
   QUIESCE_CONNECT      N      N       N
   SECADM               N      N       N
   SQLADM               N      N       N
   SYSADM               *      N       *
   SYSCTRL              *      N       *
   SYSMAINT             *      N       *
   SYSMON               *      N       *
   WLMADM               N      N       N
   ```

1. Otorgue los roles `ROLE_NULLID_PACKAGES`, `ROLE_TABLESPACES` y `ROLE_PROCEDURES` de RDS para Db2 al grupo al que agregó el usuario. Para obtener más información, consulte [Roles predeterminados de Amazon RDS para Db2](db2-default-roles.md).
**nota**  
Creamos instancias de base de datos RDS para Db2 en modo `RESTRICTIVE`. Por lo tanto, los roles `ROLE_NULLID_PACKAGES`, `ROLE_TABLESPACES` y `ROLE_PROCEDURES` de RDS para Db2 otorgan privilegios de ejecución en paquetes `NULLID` para IBM Db2 CLP y Dynamic SQL. Estas funciones también otorgan privilegios de usuario en los espacios de tabla. 

   1. Conexión a su base de datos Db2. En el siguiente ejemplo, sustituya *database\$1name*, *master\$1user* y *master\$1password* por su propia información.

      ```
      db2 connect to database_name user master_user using master_password
      ```

   1. Otorgue el rol `ROLE_NULLED_PACKAGES` a un grupo. En el siguiente ejemplo, reemplace *group\$1name* por el nombre del grupo al que quiera agregar el rol.

      ```
      db2 "grant role ROLE_NULLID_PACKAGES to group group_name"
      ```

   1. Otorgue el rol `ROLE_TABLESPACES` al mismo grupo. En el siguiente ejemplo, reemplace *group\$1name* por el nombre del grupo al que quiera agregar el rol.

      ```
      db2 "grant role ROLE_TABLESPACES to group group_name"
      ```

   1. Otorgue el rol `ROLE_PROCEDURES` al mismo grupo. En el siguiente ejemplo, reemplace *group\$1name* por el nombre del grupo al que quiera agregar el rol.

      ```
      db2 "grant role ROLE_PROCEDURES to group group_name"
      ```

1. Otorgue las autoridades `connect`, `bindadd`, `createtab` y `IMPLICIT_SCHEMA` al grupo al que agregó el usuario. En el siguiente ejemplo, reemplace *group\$1name* por el nombre del segundo grupo al que haya agregado el usuario.

   ```
   db2 "grant usage on workload SYSDEFAULTUSERWORKLOAD to public"
   db2 "grant connect, bindadd, createtab, implicit_schema on database to group group_name"
   ```

1. Repita los pasos 4 al 6 para cada grupo adicional al que haya agregado el usuario.

1. Pruebe el acceso del usuario conectándose como usuario, creando una tabla, insertando valores en la tabla y devolviendo los datos de la tabla. En el siguiente ejemplo, sustituya *rds\$1database\$1alias*, *username* y *password* por el nombre de la base de datos y el nombre de usuario y la contraseña del usuario.

   ```
   db2 connect to rds_database_alias user username using password
   db2 "create table t1(c1 int not null)"
   db2 "insert into t1 values (1),(2),(3),(4)"
   db2 "select * from t1"
   ```

## Cambio de la contraseña de un usuario
<a name="db2-changing-user-password"></a>

**Para cambiar la contraseña de un usuario**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información. 

   ```
   db2 connect to rdsadmin user master_username using master_password
   ```

1. Cambie la contraseña llamando a `rdsadmin.change_password`. Para obtener más información, consulte [rdsadmin.change\$1password](db2-sp-granting-revoking-privileges.md#db2-sp-change-password). 

   ```
   db2 "call rdsadmin.change_password(
       'username',
       'new_password')"
   ```

## Agregar grupos a un usuario
<a name="db2-adding-group-to-user"></a>

**Para agregar grupos a un usuario**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información. 

   ```
   db2 connect to rdsadmin user master_username using master_password
   ```

1. Agregue grupos a un usuario mediante una llamada a `rdsadmin.add_groups`. Para obtener más información, consulte [rdsadmin.add\$1groups](db2-sp-granting-revoking-privileges.md#db2-sp-add-groups). 

   ```
   db2 "call rdsadmin.add_groups(
       'username',
       'group_name,group_name')"
   ```

## Eliminación de grupos de un usuario
<a name="db2-removing-groups-from-user"></a>

**Para eliminar grupos de un usuario**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información. 

   ```
   db2 connect to rdsadmin user master_username using master_password
   ```

1. Elimine grupos llamando a `rdsadmin.remove_groups`. Para obtener más información, consulte [rdsadmin.remove\$1groups](db2-sp-granting-revoking-privileges.md#db2-sp-remove-groups). 

   ```
   db2 "call rdsadmin.remove_groups(
       'username',
       'group_name,group_name')"
   ```

## Eliminación de un usuario
<a name="db2-removing-user"></a>

**Para eliminar un usuario de la lista de autorizaciones**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información. 

   ```
   db2 connect to rdsadmin user master_username using master_password
   ```

1. Elimine un usuario de la lista de autorización llamando a `rdsadmin.remove_user`. Para obtener más información, consulte [rdsadmin.remove\$1user](db2-sp-granting-revoking-privileges.md#db2-sp-remove-user). 

   ```
   db2 "call rdsadmin.remove_user('username')"
   ```

## Mostrar usuarios
<a name="db2-listing-users-database"></a>

Para mostrar los usuarios en una lista de autorización, llame al procedimiento almacenado `rdsadmin.list_users`. Para obtener más información, consulte [rdsadmin.list\$1users](db2-sp-granting-revoking-privileges.md#db2-sp-list-users).

```
db2 "call rdsadmin.list_users()"
```

## Creación de un rol
<a name="db2-creating-role"></a>

Puede utilizar el procedimiento almacenado [rdsadmin.create\$1role](db2-sp-granting-revoking-privileges.md#db2-sp-create-role) para crear un rol.

**Para crear un rol**

1. Conéctese a la base de datos `rdsadmin`. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su información.

   ```
   db2 connect to rdsadmin user master_username using master_password
   ```

1. Configure Db2 para generar contenido.

   ```
   db2 set serveroutput on 
   ```

1. Crear un rol. Para obtener más información, consulte [rdsadmin.create\$1role](db2-sp-granting-revoking-privileges.md#db2-sp-create-role).

   ```
   db2 "call rdsadmin.create_role(
       'database_name',
       'role_name')"
   ```

1. Configure Db2 para que no genere contenido.

   ```
   db2 set serveroutput off
   ```

## Concesión de un rol
<a name="db2-granting-role"></a>

Puede usar el procedimiento almacenado [rdsadmin.grant\$1role](db2-sp-granting-revoking-privileges.md#db2-sp-grant-role) para asignar un rol a un rol, usuario o grupo.

**Asignación de un rol**

1. Conéctese a la base de datos `rdsadmin`. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su información.

   ```
   db2 connect to rdsadmin user master_username using master_password
   ```

1. Configure Db2 para generar contenido.

   ```
   db2 set serveroutput on 
   ```

1. Asigne un rol. Para obtener más información, consulte [rdsadmin.grant\$1role](db2-sp-granting-revoking-privileges.md#db2-sp-grant-role).

   ```
   db2 "call rdsadmin.grant_role(
       'database_name',
       'role_name',
       'grantee',
       'admin_option')"
   ```

1. Configure Db2 para que no genere contenido.

   ```
   db2 set serveroutput off
   ```

## Revocación de un rol
<a name="db2-revoking-role"></a>

Puede usar el procedimiento almacenado [rdsadmin.revoke\$1role](db2-sp-granting-revoking-privileges.md#db2-sp-revoke-role) para revocar un rol a un rol, usuario o grupo.

**Revocación de un rol**

1. Conéctese a la base de datos `rdsadmin`. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su información.

   ```
   db2 connect to rdsadmin user master_username using master_password
   ```

1. Revoque un rol. Para obtener más información, consulte [rdsadmin.revoke\$1role](db2-sp-granting-revoking-privileges.md#db2-sp-revoke-role).

   ```
   db2 "call rdsadmin.revoke_role(
       ?,
       'database_name',
       'role_name',
       'grantee')"
   ```

## Descarte de un rol
<a name="db2-dropping-role"></a>

Puede utilizar el procedimiento [rdsadmin.drop\$1role](db2-sp-granting-revoking-privileges.md#db2-sp-drop-role) almacenado para descartar un rol.

**Descarte de un rol**

1. Conéctese a la base de datos `rdsadmin`. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su información.

   ```
   db2 connect to rdsadmin user master_username using master_password
   ```

1. Descartar un rol. Para obtener más información, consulte [rdsadmin.drop\$1role](db2-sp-granting-revoking-privileges.md#db2-sp-drop-role).

   ```
   db2 "call rdsadmin.drop_role(
       ?,
       'database_name',
       'role_name')"
   ```

## Concesión de autorización a la base de datos
<a name="db2-granting-dbadmin-auth"></a>

El usuario maestro, que tiene la autorización `DBADM`, puede conceder autorización `DBADM`, `ACCESSCTRL` o `DATAACCESS` a un rol, usuario o grupo.

**Para conceder autorización a la base de datos**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 connect to rdsadmin user master_username using master_password
   ```

1. Conceda acceso a un usuario llamando a `rdsadmin.dbadm_grant`. Para obtener más información, consulte [rdsadmin.dbadm\$1grant](db2-sp-granting-revoking-privileges.md#db2-sp-dbadm-grant). 

   ```
   db2 "call rdsadmin.dbadm_grant(
       ?,
       'database_name,
       'authorization',
       'grantee')"
   ```

**Ejemplo de caso de uso**

El siguiente procedimiento le mostrará cómo crear un rol, conceder la autorización `DBADM` al rol, asignar el rol a un usuario y conceder el rol a un grupo.

****

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 connect to rdsadmin user master_username using master_password
   ```

1. Cree un rol llamado `PROD_ROLE` para una base de datos llamada `TESTDB`. Para obtener más información, consulte [rdsadmin.create\$1role](db2-sp-granting-revoking-privileges.md#db2-sp-create-role). 

   ```
   db2 "call rdsadmin.create_role(
       'TESTDB',
       'PROD_ROLE')"
   ```

1. Asigne el rol a un usuario llamado `PROD_USER`. El `PROD_USER` recibe la autorización de administrador para asignar roles. Para obtener más información, consulte [rdsadmin.grant\$1role](db2-sp-granting-revoking-privileges.md#db2-sp-grant-role). 

   ```
   db2 "call rdsadmin.grant_role(
       ?,
       'TESTDB',
       'PROD_ROLE',
       'USER PROD_USER',
       'Y')"
   ```

1. (Opcional) Proporcione autorizaciones o privilegios adicionales. En el siguiente ejemplo, se concede la autorización `DBADM` a un rol llamado `PROD_ROLE` para una base de datos llamada `FUNDPROD`. Para obtener más información, consulte [rdsadmin.dbadm\$1grant](db2-sp-granting-revoking-privileges.md#db2-sp-dbadm-grant). 

   ```
   db2 "call rdsadmin.dbadm_grant(
       ?,
       'FUNDPROD',
       'DBADM',
       'ROLE PROD_ROLE')"
   ```

1. Finalice la sesión.

   ```
   db2 terminate
   ```

1. Conéctese a la base de datos `TESTDB` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 connect to TESTDB user master_username using master_password
   ```

1. Agregue más autorizaciones al rol.

   ```
   db2 "grant connect, implicit_schema on database to role PROD_ROLE"
   ```

1. Otorgue el rol `PROD_ROLE` a un grupo.

   ```
   db2 "grant role PROD_ROLE to group PRODGRP"
   ```

Los usuarios que pertenecen al grupo `PRODGRP` ahora pueden realizar acciones como conectarse a la base de datos de `TESTDB`, crear tablas o crear esquemas.

## Revocación de la autorización de una base de datos
<a name="db2-revoking-dbadmin-auth"></a>

El usuario maestro, que tiene la autorización `DBADM`, puede revocar la autorización `DBADM`, `ACCESSCTRL` o `DATAACCESS` a un rol, usuario o grupo.

**Para revocar una autorización de una base de datos**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 connect to rdsadmin user master_username using master_password
   ```

1. Revoque el acceso de los usuarios llamando a `rdsadmin.dbadm_revoke`. Para obtener más información, consulte [rdsadmin.dbadm\$1revoke](db2-sp-granting-revoking-privileges.md#db2-sp-dbadm-revoke). 

   ```
   db2 "call rdsadmin.dbadm_revoke(
       ?,
       'database_name,
       'authorization',
       'grantee')"
   ```

# Asociación a la instancia de base de datos RDS para Db2 remota
<a name="db2-attaching-to-remote"></a>

Siga los pasos que se indican a continuación para asociar a la instancia remota de base de datos remota de RDS para Db2 y ejecute operaciones `get snapshot`.

**Para asociar a la instancia de base de datos RDS para Db2 remota**

1. Ejecute una sesión IBM Db2 CLP en el cliente. Para obtener información sobre la catalogación de la instancia de base de datos y la base de datos de RDS para Db2, consulte [Conexión a la instancia de base de datos de Amazon RDS para Db2 con IBM Db2 CLP](db2-connecting-with-clp-client.md). Tome nota del nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2.

1. Asocie la instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *node\$1name*, *master\$1username* y *master\$1password* por el nombre del nodo TCPIP que haya catalogado y el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2.

   ```
   db2 attach to node_name user master_username using master_password
   ```

Tras la asociación a la instancia de base de datos remota de RDS para Db2, puede ejecutar los siguientes comandos y otros comandos `get snapshot`. Para obtener más información, consulte [Comando GET SNAPSHOT](https://www.ibm.com/docs/en/db2/11.5?topic=commands-get-snapshot) en la documentación de IBM Db2.

```
db2 list applications
db2 get snapshot for all databases
db2 get snapshot for database manager
db2 get snapshot for all applications
```

# Ejecución de tareas comunes de base de datos para instancias de base de datos de Amazon RDS para Db2
<a name="db2-performing-common-database-tasks-db-instances"></a>

Puede realizar ciertas tareas comunes de DBA relacionadas con las bases de datos en las instancias de base de datos de Amazon RDS para Db2. Para ofrecer una experiencia de servicio administrado, Amazon RDS no proporciona acceso mediante shell a las instancias de base de datos. Además, el usuario maestro no puede ejecutar comandos o utilidades que lo requieran las autoridades `SYSADM`, `SYSMAINT` o `SYSCTRL`.

Para obtener información sobre las tareas comunes de los grupos de búferes, las bases de datos y los espacios de tablas, consulte los siguientes temas.

**Temas**
+ [Tareas comunes para grupos de búferes](db2-managing-buffer-pools.md)
+ [Tareas comunes para bases de datos](db2-managing-databases.md)
+ [Tareas comunes para espacios de tablas](db2-managing-tablespaces.md)

# Tareas comunes para grupos de búferes
<a name="db2-managing-buffer-pools"></a>

Puede crear, modificar o eliminar grupos de búferes para una base de datos de RDS para Db2. Crear, modificar o eliminar grupos de búferes requiere una autoridad `SYSADM` o `SYSCTRL` de nivel superior, algo que no está disponible para el usuario maestro. En su lugar, utilice procedimientos almacenados de Amazon RDS.

También puede vaciar los grupos de búferes.

**Topics**
+ [Creación de un grupo de búferes](#db2-creating-buffer-pool)
+ [Modificación de un grupo de búferes](#db2-altering-buffer-pool)
+ [Eliminación de un grupo de búferes](#db2-dropping-buffer-pool)
+ [Vaciado de los grupos de búferes](#db2-flushing-buffer-pools)

## Creación de un grupo de búferes
<a name="db2-creating-buffer-pool"></a>

Para crear un grupo de búferes para las bases de datos de RDS para Db2, llame al procedimiento almacenado `rdsadmin.create_bufferpool`. Para obtener más información, consulte [Instrucción CREATE BUFFERPOOL](https://www.ibm.com/docs/en/db2/11.5?topic=statements-create-bufferpool) en la documentación de IBM Db2.

**Para crear un grupo de búferes**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. Cree un grupo de búferes mediante una llamada a `rdsadmin.create_bufferpool`. Para obtener más información, consulte [rdsadmin.create\$1bufferpool](db2-sp-managing-buffer-pools.md#db2-sp-create-buffer-pool).

   ```
   db2 "call rdsadmin.create_bufferpool(
       'database_name', 
       'buffer_pool_name', 
       buffer_pool_size, 
       'immediate', 
       'automatic', 
       page_size, 
       number_block_pages, 
       block_size)"
   ```

## Modificación de un grupo de búferes
<a name="db2-altering-buffer-pool"></a>

Para modificar un grupo de búferes para las bases de datos de RDS para Db2, llame al procedimiento almacenado `rdsadmin.alter_bufferpool`. Para obtener más información, consulte [Instrucción ALTER BUFFERPOOL](https://www.ibm.com/docs/en/db2/11.5?topic=statements-alter-bufferpool) en la documentación de IBM Db2.

**Para modificar un grupo de búferes**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. Modifique un conjunto de búferes mediante una llamada a `rdsadmin.alter_bufferpool`. Para obtener más información, consulte [rdsadmin.alter\$1bufferpool](db2-sp-managing-buffer-pools.md#db2-sp-alter-buffer-pool).

   ```
   db2 "call rdsadmin.alter_bufferpool(
       'database_name', 
       'buffer_pool_name', 
       buffer_pool_size, 
       'immediate', 
       'automatic', 
       change_number_blocks, 
       number_block_pages, 
       block_size)"
   ```

## Eliminación de un grupo de búferes
<a name="db2-dropping-buffer-pool"></a>

Para eliminar un grupo de búferes para las bases de datos de RDS para Db2, llame al procedimiento almacenado `rdsadmin.drop_bufferpool`. Para obtener más información, consulte [Eliminación de grupos de búferes](https://www.ibm.com/docs/en/db2/11.5?topic=pools-dropping-buffer) en la documentación de IBM Db2.

**importante**  
Asegúrese de que no haya ningún espacio de tabla asignado al grupo de búferes que desee eliminar. 

**Para eliminar un grupo de búferes**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. Elimine un grupo de búferes llamando a `rdsadmin.drop_bufferpool`. Para obtener más información, consulte [rdsadmin.drop\$1bufferpool](db2-sp-managing-buffer-pools.md#db2-sp-drop-buffer-pool).

   ```
   db2 "call rdsadmin.drop_bufferpool(
       'database_name', 
       'buffer_pool_name')"
   ```

## Vaciado de los grupos de búferes
<a name="db2-flushing-buffer-pools"></a>

Puede vaciar los grupos de búferes para forzar un punto de control de modo que RDS para Db2 escriba las páginas desde la memoria en el almacenamiento. 

**nota**  
No es necesario vaciar los grupos de búferes. Db2 escribe los registros de forma sincrónica antes de confirmar las transacciones. Es posible que las páginas sucias sigan en un grupo de búferes, pero Db2 las escribe en el almacenamiento de forma asíncrona. Incluso aunque el sistema se cierre inesperadamente, al reiniciar la base de datos, Db2 realiza automáticamente una recuperación tras el error. Durante la recuperación tras el error, Db2 escribe los cambios confirmados en la base de datos o revierte los cambios de las transacciones no confirmadas. 

**Para vaciar los grupos de búferes**

1. Conéctese a su base de datos Db2 con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *rds\$1database\$1alias*, *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 connect to rds_database_alias user master_username using master_password
   ```

1. Vacíe los grupos de búferes.

   ```
   db2 flush bufferpools all
   ```

# Tareas comunes para bases de datos
<a name="db2-managing-databases"></a>

Puede crear, eliminar o restaurar bases de datos en su instancia de base de datos de RDS para Db2. Crear, eliminar o restaurar bases de datos requiere una autoridad `SYSADM` de nivel superior, algo que no está disponible para el usuario maestro. En su lugar, utilice procedimientos almacenados de Amazon RDS.

También puede realizar tareas de administración habituales, como la monitorización, el mantenimiento y la recopilación de información sobre sus bases de datos.

**Topics**
+ [Creación de una base de datos](#db2-creating-database)
+ [Configuración de los ajustes para una base de datos](#db2-configuring-database)
+ [Modificación de los parámetros en una base de datos](#db2-modifying-db-parameters)
+ [Configuración de la retención de registros](#db2-configuring-log-retention)
+ [Enumeración de la información de registro](#db2-listing-log-information)
+ [Uso del control de acceso preciso (FGAC)](#db2-using-fine-grained-access-control)
+ [Desactivación de una base de datos](#db2-deactivating-database)
+ [Activación de una base de datos](#db2-activating-database)
+ [Reactivación de una base de datos](#db2-reactivating-database)
+ [Eliminación de una base de datos](#db2-dropping-database)
+ [Realización de copia de seguridad de una base de datos](#db2-backing-up-database)
+ [Copia de registros de archivos en Amazon S3](#db2-copying-archive-logs-to-s3)
+ [Restauración de una base de datos](#db2-restoring-database)
+ [Enumeración de bases de datos](#db2-listing-databases)
+ [Recopilación de información sobre bases de datos](#db2-collecting-info-db)
+ [Forzado a las aplicaciones a salir de bases de datos](#db2-forcing-application-off-db)
+ [Generación de informes de rendimiento](#db2-generating-performance-reports)

## Creación de una base de datos
<a name="db2-creating-database"></a>

Para crear una base de datos en su instancia de base de datos de RDS para Db2, llame al procedimiento almacenado `rdsadmin.create_database`. Para obtener más información, consulte [Comando CREATE DATABASE](https://www.ibm.com/docs/en/db2/11.5?topic=commands-create-database) en la documentación de IBM Db2.

**nota**  
Si tiene previsto modificar el parámetro `db2_compatibility_vector`, modifíquelo antes de crear una base de datos. Para obtener más información, consulte [Establecimiento del parámetro db2\$1compatibility\$1vector](db2-known-issues-limitations.md#db2-known-issues-limitations-db2-compatibility-vector).

**Para crear una base de datos**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. Cree una base de datos llamando a `rdsadmin.create_database`. Para obtener más información, consulte [rdsadmin.create\$1database](db2-sp-managing-databases.md#db2-sp-create-database).

   ```
   db2 "call rdsadmin.create_database(
       'database_name',
       'database_page_size',
       'database_code_set',
       'database_territory',
       'database_collation',
       'database_autoconfigure_str',
       'database_non-restrictive')"
   ```

1. (Opcional) Cree bases de datos adicionales llamando a `rdsadmin.create_database` para cada base de datos que desee crear. Cada instancia de base de datos de Db2 puede contener hasta 50 bases de datos. Para obtener más información, consulte [rdsadmin.create\$1database](db2-sp-managing-databases.md#db2-sp-create-database).

   ```
   db2 "call rdsadmin.create_database('database_name')"
   ```

1. (Opcional) Confirme que la base de datos se haya creado mediante uno de estos métodos: 
   + Llamar a `rdsadmin.list_databases`. Para obtener más información, consulte [rdsadmin.list\$1databases](db2-user-defined-functions.md#db2-udf-list-databases). 
   + Ejecute los siguientes comandos SQL: 

     ```
     db2 "select varchar(r.task_type,25) as task_type, r.database_name, 
         varchar(r.lifecycle,15) as lifecycle, r.created_at, r.database_name,
         varchar(bson_to_json(task_input_params),256) as input_params, 
         varchar(r.task_output,1024) as task_output 
         from table(rdsadmin.get_task_status(null,null,'create_database')) 
         as r order by created_at desc"
     ```

## Configuración de los ajustes para una base de datos
<a name="db2-configuring-database"></a>

A fin de configurar los ajustes de una base de datos en su instancia de base de datos de RDS para Db2, llame al procedimiento almacenado `rdsadmin.set_configuration`. Por ejemplo, puede configurar el número de búferes o manipuladores de búferes que se van a crear durante una operación de restauración.

**Configuración de los ajustes de una base de datos**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. (Opcional) Compruebe cuál es la configuración actual llamando a `rdsadmin.show_configuration`. Para obtener más información, consulte [rdsadmin.show\$1configuration](db2-sp-managing-databases.md#db2-sp-show-configuration).

   ```
   db2 "call rdsadmin.show_configuration('name')"
   ```

1. Configure los ajustes de la base de datos llamando a `rdsadmin.set_configuration`. Para obtener más información, consulte [rdsadmin.set\$1configuration](db2-sp-managing-databases.md#db2-sp-set-configuration).

   ```
   db2 "call rdsadmin.set_configuration(
       'name',  
       'value')"
   ```

## Modificación de los parámetros en una base de datos
<a name="db2-modifying-db-parameters"></a>

Amazon RDS para Db2 utiliza tres tipos de parámetros: parámetros de configuración del administrador de bases de datos, variables de registro y parámetros de configuración de bases de datos. Puede actualizar los dos primeros tipos mediante grupos de parámetros, y el último tipo mediante el procedimiento almacenado [rdsadmin.update\$1db\$1param](db2-sp-managing-databases.md#db2-sp-update-db-param).

**nota**  
Solo puede modificar los valores de los parámetros existentes. No se pueden añadir parámetros nuevos que no sean compatibles en RDS para Db2.

Para obtener más información sobre estos parámetros y sobre cómo modificar sus valores, consulte [Parámetros de Amazon RDS para Db2](db2-supported-parameters.md). 

## Configuración de la retención de registros
<a name="db2-configuring-log-retention"></a>

Para configurar el tiempo que Amazon RDS retiene los archivos de registro de las bases de datos de RDS para Db2, llame al procedimiento almacenado `rdsadmin.set_archive_log_retention`.

**Configuración de la retención de registros de una base de datos**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. (Opcional) Compruebe cuál es la configuración actual de retención de registros llamando a `rdsadmin.show_archive_log_retention`. Para obtener más información, consulte [rdsadmin.show\$1archive\$1log\$1retention](db2-sp-managing-databases.md#db2-sp-show-archive-log-retention).

   ```
   db2 "call rdsadmin.show_archive_log_retention(
       ?,
       'database_name')"
   ```

1. Configure la retención de registros para la base de datos llamando a `rdsadmin.set_archive_log_retention`. Para obtener más información, consulte [rdsadmin.set\$1archive\$1log\$1retention](db2-sp-managing-databases.md#db2-sp-set-archive-log-retention).

   ```
   db2 "call rdsadmin.set_archive_log_retention(
       ?,            
       'database_name',  
       'archive_log_retention_hours')"
   ```

## Enumeración de la información de registro
<a name="db2-listing-log-information"></a>

Para obtener detalles sobre los archivos de registro de archivo, incluidos detalles como el tamaño total de almacenamiento utilizado, llame al procedimiento almacenado `rdsadmin.list_archive_log_information`.

**Enumeración de la información de registro de una base de datos**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. Llame a `rdsadmin.list_archive_log_information` para devolver una lista de la información de los archivos de registro. Para obtener más información, consulte [rdsadmin.list\$1archive\$1log\$1information](db2-sp-managing-databases.md#db2-sp-list-archive-log-information).

   ```
   db2 "call rdsadmin.list_archive_log_information(
       ?,            
       'database_name')"
   ```

## Uso del control de acceso preciso (FGAC)
<a name="db2-using-fine-grained-access-control"></a>

Para utilizar comandos de control de acceso detallados para controlar el acceso a datos de tablas en una base de datos en una instancia de base de datos de RDS para Db2, llame al procedimiento almacenado `rdsadmin.fgac_command`. Es posible que desee utilizar el FGAC para limitar el acceso a los datos en función de los roles de los usuarios o los atributos de los datos. Por ejemplo, puede limitar el acceso a los datos de atención médica de los pacientes en función del tipo de datos o a determinados proveedores de atención médica.

**Uso del control de acceso detallado para controlar el acceso a datos de tablas en una base de datos**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. Ejecute varios comandos de control de acceso detallados llamando a `rdsadmin.fgac_command`. Para obtener más información, consulte [rdsadmin.fgac\$1commandParameters](db2-sp-managing-databases.md#db2-sp-fgac-command). 

   ```
   db2 "call rdsadmin.fgac_command(     
       ?,
       'database_name',
       'fgac_command')"
   ```

## Desactivación de una base de datos
<a name="db2-deactivating-database"></a>

Para desactivar una base de datos en la instancia de base de datos de RDS para Db2, llame al procedimiento almacenado `rdsadmin.deactivate_database`.

Cuando cree una base de datos en su instancia de bases de datos de RDS para Db2, Amazon RDS la activa de manera predeterminada. Puede desactivar las bases de datos que utilice con poca frecuencia para conservar los recursos de memoria.

**Desactivación de una base de datos**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. Desactive una base de datos llamando a `rdsadmin.deactivate_database`. Para obtener más información, consulte [rdsadmin.deactivate\$1database](db2-sp-managing-databases.md#db2-sp-deactivate-database).

   ```
   db2 "call rdsadmin.deactivate_database(    
       ?, 
       'database_name')"
   ```

## Activación de una base de datos
<a name="db2-activating-database"></a>

Para activar una base de datos en una instancia de base de datos de RDS para Db2 independiente, llame al procedimiento almacenado `rdsadmin.activate_database`.

Cuando cree una base de datos en su instancia de bases de datos de RDS para Db2, Amazon RDS la activa de manera predeterminada. Puede desactivar las bases de datos que utilice con poca frecuencia para conservar los recursos de memoria y, posteriormente, activar una base de datos desactivada.

**Activación de una base de datos**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. Active una base de datos llamando a `rdsadmin.activate_database`. Para obtener más información, consulte [rdsadmin.activate\$1database](db2-sp-managing-databases.md#db2-sp-activate-database).

   ```
   db2 "call rdsadmin.activate_database(
       ?, 
       'database_name')"
   ```

## Reactivación de una base de datos
<a name="db2-reactivating-database"></a>

Para reactivar una base de datos en una instancia de base de datos de RDS para Db2 de origen de réplica, llame al procedimiento almacenado `rdsadmin.reactivate_database`. Después de realizar cambios en las configuraciones de las bases de datos, es posible que necesite reactivar una base de datos en una instancia de base de datos de RDS para Db2. Para determinar si necesita reactivar una base de datos, conéctese a la base de datos y ejecute `db2 get db cfg show detail`. 

También puede llamar a este procedimiento almacenado para reactivar una base de datos en una instancia de base de datos RDS para Db2 independiente después de realizar cambios en las configuraciones de la base de datos. O bien, puede reactivar una base de datos en una instancia de base de datos RDS para Db2 independiente llamando primero al procedimiento almacenado `rdsadmin.deactivate_database` y, a continuación, al procedimiento almacenado `rdsadmin.activate_database`. Para obtener más información, consulte [Desactivación de una base de datos](#db2-deactivating-database) y [Activación de una base de datos](#db2-activating-database).

**Reactivación de una base de datos**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. Reactive una base de datos llamando a `rdsadmin.reactivate_database`. Para obtener más información, consulte [rdsadmin.reactivate\$1database](db2-sp-managing-databases.md#db2-sp-reactivate-database).

   ```
   db2 "call rdsadmin.reactivate_database(
       ?, 
       'database_name')"
   ```

## Eliminación de una base de datos
<a name="db2-dropping-database"></a>

Para eliminar una base de datos de su instancia de base de datos de RDS para Db2, llame al procedimiento almacenado `rdsadmin.drop_database`. Para obtener más información, consulte [Dropping databases](https://www.ibm.com/docs/en/db2/11.5?topic=databases-dropping) en la documentación de IBM Db2.

**nota**  
Solo puede eliminar una base de datos llamando al procedimiento almacenado si se cumplen las siguientes condiciones: Para obtener más información, consulte [Notas de uso](db2-sp-managing-databases.md#db2-sp-drop-database-usage-notes) para `rdsadmin.drop_database`.

**Eliminación de una base de datos**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. Elimine una base de datos llamando a `rdsadmin.drop_database`. Para obtener más información, consulte [rdsadmin.drop\$1database](db2-sp-managing-databases.md#db2-sp-drop-database).

   ```
   db2 "call rdsadmin.drop_database('database_name')"
   ```

## Realización de copia de seguridad de una base de datos
<a name="db2-backing-up-database"></a>

Para hacer una copia de seguridad de una base de datos en la instancia de base de datos de RDS para Db2 en Amazon S3, llame al procedimiento almacenado `rdsadmin.backup_database`. Para obtener más información, consulte el [comando BACKUP DATABASE](https://www.ibm.com/docs/en/db2/11.5.x?topic=commands-backup-database) en la documentación de IBM Db2.

**nota**  
Este procedimiento almacenado utiliza la integración con Amazon S3. Antes de continuar, asegúrese de haber configurado la integración. Para obtener más información, consulte [Integración de una instancia de base de datos de Amazon RDS para Db2 con Amazon S3](db2-s3-integration.md).

**Realización de copia de seguridad de una base de datos**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. Cree un punto de conexión de puerta de enlace de VPC para S3. Si ya tiene un punto de conexión de puerta de enlace de VPC para S3, vaya al paso 4. 

   Para que una instancia de base de datos de RDS para Db2 interactúe con Amazon S3, debe tener una VPC y un punto de conexión de puerta de enlace de Amazon S3 para que lo utilicen las subredes privadas. Para obtener más información, consulte [Paso 1: crear un punto de conexión de puerta de enlace de VPC para Amazon S3](db2-troubleshooting.md#db2-creating-endpoint).

1. Confirme el punto de conexión de la puerta de enlace de la VPC para S3. Para obtener más información, consulte [Paso 2: confirme que existe el punto de conexión de la puerta de enlace de Amazon S3](db2-troubleshooting.md#db2-confirming-endpoint).

1. Realice la copia de seguridad de una base de datos llamando a `rdsadmin.backup_database`. Para obtener más información, consulte [rdsadmin.backup\$1database](db2-sp-managing-databases.md#db2-sp-backup-database).

   ```
   db2 "call rdsadmin.backup_database(
       ?,
       'database_name', 
       's3_bucket_name', 
       's3_prefix', 
       'backup_type',
       'compression_option',
       'util_impact_priority', 
       'num_files',
       'parallelism',
       'num_buffers')"
   ```

1. Termine la conexión.

   ```
   terminate
   ```

1. (Opcional) Confirme que los archivos de copia de seguridad se cargaron en el bucket de Amazon S3 en *s3\$1prefix/dbi\$1resource\$1id/db\$1name*. Si los archivos no aparecen en *s3\$1prefix/dbi\$1resource\$1id/db\$1name*, compruebe el estado de la copia de seguridad de la base de datos para identificar cualquier problema. Para obtener más información, consulte [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status). Si no puede resolver los problemas identificados, contacte con [AWS Support](https://aws.amazon.com/premiumsupport/).

1. (Opcional) Una vez finalizada la copia de seguridad en Amazon S3, puede restaurarla en una instancia de base de datos de RDS para Db2 o en otra ubicación, como un servidor local. Para obtener información acerca de cómo restaurar una instancia de base de datos de RDS para Db2, consulte [Restauración de una base de datos](#db2-restoring-database).

## Copia de registros de archivos en Amazon S3
<a name="db2-copying-archive-logs-to-s3"></a>

Ahora se pueden copiar los registros de archivos de Db2 desde su instancia de DB de RDS para Db2 en Amazon S3. Los registros de archivos, combinados con la copia de seguridad nativa creada con `rdsadmin.backup_database`, se pueden utilizar para restaurar y avanzar la base de datos hasta un momento determinado en otra instancia de base de datos de RDS para Db2 o EC2.

 Antes de configurar esta característica, utilice el procedimiento almacenado `rdsadmin.backup_database` para configurar la base de datos de RDS para Db2. 

Esta característica funciona en el nivel de instancia de BD de RDS para Db2, aunque la copia de registro de archivos se puede habilitar o deshabilitar por base de datos.

**Cómo configurar la copia de registro de archivos en Amazon S3**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. Configure la copia de seguridad de registro de archivos en S3 llamando a [rdsadmin.set\$1configuration](db2-sp-managing-databases.md#db2-sp-set-configuration).

   ```
   db2 "call rdsadmin.set_configuration(
       'name',
       'value')"
   ```

    **Ejemplo:** 

   ```
   db2 "call rdsadmin.set_configuration('ARCHIVE_LOG_COPY_TARGET_S3_ARN', 'arn:aws:s3:::my_rds_db2_backups/archive-log-copy/')"
   ```

1. Habilite la copia del registro de archivos de una base de datos llamando a `rdsadmin.enable_archive_log_copy`. Sustituya *database\$1name* por el nombre de su base de datos.

   ```
   db2 "call rdsadmin.enable_archive_log_copy(?, 'database_name')"
   ```

1. Del mismo modo, para deshabilitar la copia del registro de archivos de una base de datos, llame a `rdsadmin.disable_archive_log_copy`.

   ```
   db2 "call rdsadmin.disable_archive_log_copy(?, 'database_name')"
   ```

1. Confirme el estado de la copia del registro de archivos llamando a `rdsadmin.list_databases`.

   ```
   db2 "select * from table(rdsadmin.list_databases())"
   ```

    **Código de salida de ejemplo:** 

   ```
   DATABASE_NAME   CREATE_TIME                DATABASE_UNIQUE_ID                                 ARCHIVE_LOG_RETENTION_HOURS ARCHIVE_LOG_COPY ARCHIVE_LOG_LAST_UPLOAD_FILE ARCHIVE_LOG_LAST_UPLOAD_FILE_TIME ARCHIVE_LOG_COPY_STATUS
   --------------- -------------------------- -------------------------------------------------- --------------------------- ---------------- ---------------------------- --------------------------------- ------------------------------
   RDSADMIN        2026-01-06-02.03.42.569069 RDSADMIN                                                                     0 DISABLED         -                            -                                 -
   FOO             2026-01-06-02.13.42.885650 F0D81C7E-7213-4565-B376-4F33FCF420E3                                         7 ENABLED          S0006536.LOG                 2026-01-28-19.15.10.000000        UPLOADING
   CODEP           2026-01-14-19.42.42.508476 106EEF95-6E30-4FFF-85AE-B044352DF095                                         0 DISABLED         -                            -                                 -
   ...
   ```

## Restauración de una base de datos
<a name="db2-restoring-database"></a>

Para mover una base de datos de un bucket de Amazon S3 a su instancia de bases de datos de RDS para Db2, llame al procedimiento almacenado `rdsadmin.restore_database`. Para obtener más información, consulte [Comando RESTORE DATABASE](https://www.ibm.com/docs/en/db2/11.5?topic=commands-restore-database) en la documentación de IBM Db2. 

**Para restaurar una base de datos de**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. (Opcional) Compruebe cuál es la configuración actual para optimizar la operación de restauración llamando a `rdsadmin.show_configuration`. Para obtener más información, consulte [rdsadmin.show\$1configuration](db2-sp-managing-databases.md#db2-sp-show-configuration).

   ```
   db2 "call rdsadmin.show_configuration('name')"
   ```

1. Configure los ajustes para optimizar la operación de restauración llamando a `rdsadmin.set_configuration`. Establecer estos valores de forma explícita puede mejorar el rendimiento al restaurar bases de datos con grandes volúmenes de datos. Para obtener más información, consulte [rdsadmin.set\$1configuration](db2-sp-managing-databases.md#db2-sp-set-configuration).

   ```
   db2 "call rdsadmin.set_configuration(
       'name',  
       'value')"
   ```

1. Restaure la base de datos llamando a `rdsadmin.restore_database`. Para obtener más información, consulte [rdsadmin.restore\$1database](db2-sp-managing-databases.md#db2-sp-restore-database).

   ```
   db2 "call rdsadmin.restore_database(
       ?,
       'database_name', 
       's3_bucket_name', 
       's3_prefix', 
       restore_timestamp, 
       'backup_type')"
   ```

1. (Opcional) Confirme que la base de datos se ha restaurado llamando a `rdsadmin.list_databases` y comprobando que la base de datos restaurada aparece en la lista. Para obtener más información, consulte [rdsadmin.list\$1databases](db2-user-defined-functions.md#db2-udf-list-databases). 

1. Ponga la base de datos de nuevo en línea y aplique registros de transacciones adicionales llamando a `rdsadmin.rollforward_database`. Para obtener más información, consulte [rdsadmin.rollforward\$1database](db2-sp-managing-databases.md#db2-sp-rollforward-database).

   ```
   db2 "call rdsadmin.rollforward_database(
       ?,
       'database_name',
       's3_bucket_name', 
       s3_prefix, 
       'rollforward_to_option', 
       'complete_rollforward')"
   ```

1. (Opcional) Compruebe el estado del procedimiento almacenado `rdsadmin.rollforward_database`; para ello, llame al procedimiento almacenado [rdsadmin.rollforward\$1status](db2-sp-managing-databases.md#db2-sp-rollforward-status).

1. Si ha configurado `complete_rollforward` como `FALSE` en el paso anterior, lo último que debe hacer para volver a poner la base de datos en línea es llamar a `rdsadmin.complete_rollforward`. Para obtener más información, consulte [rdsadmin.complete\$1rollforward](db2-sp-managing-databases.md#db2-sp-complete-rollforward).

   ```
   db2 "call rdsadmin.complete_rollforward(
       ?,
       'database_name')"
   ```

1. (Opcional) Compruebe el estado del procedimiento almacenado `rdsadmin.complete_rollforward`; para ello, llame al procedimiento almacenado [rdsadmin.rollforward\$1status](db2-sp-managing-databases.md#db2-sp-rollforward-status).

## Enumeración de bases de datos
<a name="db2-listing-databases"></a>

Puede enumerar todas las bases de datos que se ejecutan en Amazon RDS para Db2 llamando a la función definida por el usuario `rdsadmin.list_databases`. 

**Enumeración de sus bases de datos**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. Haga una lista de sus bases de datos llamando a `rdsadmin.list_databases`. Para obtener más información, consulte [rdsadmin.list\$1databases](db2-user-defined-functions.md#db2-udf-list-databases).

   ```
   db2 "select * from table(rdsadmin.list_databases())"
   ```

## Recopilación de información sobre bases de datos
<a name="db2-collecting-info-db"></a>

Para recopilar información sobre una base de datos en una instancia de base de datos de RDS para Db2, llame al procedimiento almacenado `rdsadmin.db2pd_command`. Esta información puede ayudarle a supervisar sus bases de datos o a solucionar problemas.

**Recopilación de información sobre una base de datos**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. Recopile información sobre la base de datos llamando a `rdsadmin.db2pd_command`. Para obtener más información, consulte [rdsadmin.db2pd\$1command](db2-sp-managing-databases.md#db2-sp-db2pd-command).

   ```
   db2 "call rdsadmin.db2pd_command('db2pd_cmd')"
   ```

## Forzado a las aplicaciones a salir de bases de datos
<a name="db2-forcing-application-off-db"></a>

Para obligar a las aplicaciones a salir de una base de datos en la instancia de base de datos de RDS para Db2, llame al procedimiento almacenado `rdsadmin.force_application`. Antes de realizar el mantenimiento de las bases de datos, saque las aplicaciones de sus bases de datos.

**Forzado a las aplicaciones a salir de una base de datos**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. Fuerce a las aplicaciones a salir de una base de datos llamando a `rdsadmin.force_application`. Para obtener más información, consulte [rdsadmin.force\$1application](db2-sp-managing-databases.md#db2-sp-force-application).

   ```
   db2 "call rdsadmin.force_application(     
       ?,
       'applications')"
   ```

## Generación de informes de rendimiento
<a name="db2-generating-performance-reports"></a>

Puede generar informes de rendimiento con un procedimiento o un script. Para obtener información sobre el uso de un procedimiento, consulte [DBSUMMARY procedure ‐ Generate a summary report of system and application performance metrics](https://www.ibm.com/docs/en/db2/11.5?topic=mm-dbsummary-procedure-generate-summary-report-system-application-performance-metrics) en la documentación de IBM Db2. 

Db2 incluye un archivo `db2mon.sh` en su directorio `~sqllib/sample/perf`. La ejecución del script produce un amplio informe de métricas de SQL de bajo costo. Para descargar el archivo `db2mon.sh` y los archivos de script relacionados, consulte el directorio [https://github.com/IBM/db2-samples/tree/master/perf](https://github.com/IBM/db2-samples/tree/master/perf) del repositorio de GitHub de IBM db2-samples.

**Para generar informes de rendimiento con el script**

1. Conéctese a su base de datos Db2 con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 connect to rdsadmin user master_username using master_password
   ```

1. Cree un grupo de búferes denominado `db2monbp` con un tamaño de página de 4096 mediante una llamada a `rdsadmin.create_bufferpool`. Para obtener más información, consulte [rdsadmin.create\$1bufferpool](db2-sp-managing-buffer-pools.md#db2-sp-create-buffer-pool).

   ```
   db2 "call rdsadmin.create_bufferpool('database_name','db2monbp',4096)"
   ```

1. Cree un espacio de tablas temporal con el nombre `db2montmptbsp` que utilice el grupo de búferes `db2monbp` mediante una llamada a `rdsadmin.create_tablespace`. Para obtener más información, consulte [rdsadmin.create\$1tablespace](db2-sp-managing-tablespaces.md#db2-sp-create-tablespace).

   ```
   db2 "call rdsadmin.create_tablespace('database_name',\
       'db2montmptbsp','db2monbp',4096,1000,100,'T')"
   ```

1. Abra el script `db2mon.sh` y modifique la línea sobre la conexión a una base de datos. 

   1. Elimine la siguiente línea.

      ```
      db2 -v connect to $dbName
      ```

   1. Sustituya la línea del paso anterior por la línea siguiente. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2.

      ```
      db2 -v connect to $dbName user master_username using master_password
      ```

   1. Elimine las siguientes líneas.

      ```
      db2 -v create bufferpool db2monbp
      
      db2 -v create user temporary tablespace db2montmptbsp bufferpool db2monbp
      
      db2 -v drop tablespace db2montmptbsp
      
      db2 -v drop bufferpool db2monbp
      ```

1. Ejecute el script `db2mon.sh` para generar un informe a intervalos específicos. En el siguiente ejemplo, sustituya *absolute\$1path* por la ruta completa al archivo de script, *rds\$1database\$1alias* con el nombre de su base de datos, y sustituya *seconds* por el número de segundos (0 a 3600) entre la generación de informes.

   ```
   absolute_path/db2mon.sh rds_database_alias seconds | tee -a db2mon.out
   ```

   **Ejemplos**

   El siguiente ejemplo muestra que el archivo de script se encuentra en el directorio `perf`, situado bajo el directorio `home`.

   ```
   /home/db2inst1/sqllib/samples/perf/db2mon.sh rds_database_alias seconds | tee -a db2mon.out
   ```

1. Elimine el grupo de búferes y el espacio de tabla que se han creado para el archivo `db2mon.sh`. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. Sustituya *database\$1name* por el nombre de su base de datos. Para obtener más información, consulte [rdsadmin.drop\$1tablespace](db2-sp-managing-tablespaces.md#db2-sp-drop-tablespace) y [rdsadmin.drop\$1bufferpool](db2-sp-managing-buffer-pools.md#db2-sp-drop-buffer-pool).

   ```
   db2 connect to rdsadmin user master_username using master_password
   
   db2 "call rdsadmin.drop_tablespace('database_name','db2montmptbsp')"
   
   db2 "call rdsadmin.drop_bufferpool('database_name','db2monbp')"
   ```

## Administrar el almacenamiento
<a name="db2-managing-storage"></a>

Db2 utiliza el almacenamiento automático para administrar el almacenamiento físico de los objetos de las bases de datos, como tablas, índices y archivos temporales. En lugar de asignar manualmente el espacio de almacenamiento y realizar un seguimiento de las rutas de almacenamiento que se utilizan, el almacenamiento automático permite al sistema Db2 crear y administrar las rutas de almacenamiento según sea necesario. Esto puede simplificar la administración de las bases de datos Db2 y reducir la probabilidad de problemas debidos a errores humanos. Para obtener más información, consulte [Almacenamiento automático](https://www.ibm.com/docs/en/db2/11.5?topic=overview-automatic-storage) en la documentación de IBM Db2.

Con RDS para Db2, puede aumentar dinámicamente el tamaño del almacenamiento mediante la expansión automática de los volúmenes lógicos y el sistema de archivos. Para obtener más información, consulte [Uso de almacenamiento para instancias de base de datos de Amazon RDS](USER_PIOPS.StorageTypes.md).

# Tareas comunes para espacios de tablas
<a name="db2-managing-tablespaces"></a>

Puede crear, modificar, cambiar de nombre o eliminar espacios de tabla para una base de datos de RDS para Db2. Crear, modificar, cambiar de nombre o eliminar espacios de tabla requiere una autoridad `SYSADM` de nivel superior, que no está disponible para el usuario principal. En su lugar, utilice procedimientos almacenados de Amazon RDS.

**Topics**
+ [Creación de un espacio de tabla](#db2-creating-tablespace)
+ [Modificación de un espacio de tabla](#db2-altering-tablespace)
+ [Cambio de nombre de un espacio de tabla](#db2-renaming-tablespace)
+ [Eliminación de un espacio de tabla](#db2-dropping-tablespace)
+ [Comprobación del estado de un espacio de tabla](#db2-checking-tablespaces-procedure)
+ [Devolución de información detallada sobre espacios de tabla](#db2-tablespaces-info-db2pd)
+ [Mostrar el estado y el grupo de almacenamiento de un espacio de tabla](#db2-state-storage-group-tablespace-sql)
+ [Mostrar los espacios de tabla de una tabla](#db2-return-tablespaces-sql)
+ [Mostrar los contenedores de espacio de tabla](#db2-listing-tablespace-containers)

## Creación de un espacio de tabla
<a name="db2-creating-tablespace"></a>

Para crear un espacio de tabla para las bases de datos de RDS para Db2, llame al procedimiento almacenado `rdsadmin.create_tablespace`. Para obtener más información, consulte [Instrucción CREATE TABLESPACE](https://www.ibm.com/docs/en/db2/11.5?topic=statements-create-tablespace) en la documentación de IBM Db2.

**importante**  
Para crear un espacio de tabla, debe tener un grupo de búferes del mismo tamaño de página para asociarlo al espacio de tablas. Para obtener más información, consulte [Tareas comunes para grupos de búferes](db2-managing-buffer-pools.md).

**Para crear un espacio de tabla**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. Cree un espacio de tablas llamando a `rdsadmin.create_tablespace`. Para obtener más información, consulte [rdsadmin.create\$1tablespace](db2-sp-managing-tablespaces.md#db2-sp-create-tablespace). 

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

## Modificación de un espacio de tabla
<a name="db2-altering-tablespace"></a>

Para modificar un espacio de tabla para las bases de datos de RDS para Db2, llame al procedimiento almacenado `rdsadmin.alter_tablespace`. Puede utilizar este procedimiento almacenado para cambiar el grupo de búferes de un espacio de tabla, reducir el límite máximo o poner un espacio de tabla en línea. Para obtener más información, consulte [Instrucción ALTER TABLESPACE](https://www.ibm.com/docs/en/db2/11.5?topic=statements-alter-tablespace) en la documentación de IBM Db2.

**Para modificar un espacio de tabla**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. Modifique un espacio de tabla llamando a `rdsadmin.alter_tablespace`. Para obtener más información, consulte [rdsadmin.alter\$1tablespace](db2-sp-managing-tablespaces.md#db2-sp-alter-tablespace). 

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

## Cambio de nombre de un espacio de tabla
<a name="db2-renaming-tablespace"></a>

Para cambiar el nombre de un espacio de tabla para las bases de datos de RDS para Db2, llame al procedimiento `rdsadmin.rename_tablespace` almacenado. Para obtener más información, consulte [Instrucción RENAME TABLESPACE](https://www.ibm.com/docs/en/db2/11.5?topic=statements-rename-tablespace) en la documentación de IBM Db2.

**Cambio de nombre de un espacio de tabla**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. Cambie el nombre de un espacio de tabla llamando a `rdsadmin.rename_tablespace`. Para obtener más información, incluidas las restricciones sobre el nombre de un espacio de tabla, consulte [rdsadmin.rename\$1tablespace](db2-sp-managing-tablespaces.md#db2-sp-rename-tablespace).

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

## Eliminación de un espacio de tabla
<a name="db2-dropping-tablespace"></a>

Para eliminar un espacio de tabla para las bases de datos de RDS para Db2, llame al procedimiento almacenado `rdsadmin.drop_tablespace`. Antes de borrar un espacio de tabla, coloque primero todos los objetos del espacio de tablas, como tablas, índices u objetos grandes (LOB). Para obtener más información, consulte [Eliminación de espacios de tabla](https://www.ibm.com/docs/en/db2/11.5?topic=spaces-dropping-table) en la documentación de IBM Db2.

**Para eliminar un espacio de tabla**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 "connect to rdsadmin user master_username using master_password"
   ```

1. Elimine un espacio de tabla llamando a `rdsadmin.drop_tablespace`. Para obtener más información, consulte [rdsadmin.drop\$1tablespace](db2-sp-managing-tablespaces.md#db2-sp-drop-tablespace). 

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

## Comprobación del estado de un espacio de tabla
<a name="db2-checking-tablespaces-procedure"></a>

 Puede comprobar el estado de un espacio de tabla con la función `cast`.

**Para comprobar del estado de un espacio de tabla**

1. Conéctese a su base de datos Db2 con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *rds\$1database\$1alias*, *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 connect to rds_database_alias user master_username using master_password
   ```

1. Devolver un resultado resumido.

   Para obtener un resultado resumido:

   ```
   db2 "select cast(tbsp_id as smallint) as tbsp_id,
   cast(tbsp_name as varchar(35)) as tbsp_name,
   cast(tbsp_type as varchar(3)) as tbsp_type,
   cast(tbsp_state as varchar(10)) as state,
   cast(tbsp_content_type as varchar(8)) as contents from table(mon_get_tablespace(null,-1)) order by tbsp_id"
   ```

## Devolución de información detallada sobre espacios de tabla
<a name="db2-tablespaces-info-db2pd"></a>

Puede devolver información sobre un espacio de tabla para un miembro o para todos los miembros mediante la función `cast`. 

**Para devolver información detallada sobre espacios de tabla**

1. Conéctese a su base de datos Db2 con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *rds\$1database\$1alias*, *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 connect to rds_database_alias user master_username using master_password
   ```

1. Devuelve los detalles de todos los espacios de tabla de la base de datos de un miembro o de todos los miembros.

   Para un miembro:

   ```
   db2 "select cast(member as smallint) as member,
   cast(tbsp_id as smallint) as tbsp_id,
   cast(tbsp_name as varchar(35)) as tbsp_name,
   cast(tbsp_type as varchar(3)) as tbsp_type,
   cast(tbsp_state as varchar(10)) as state,
   cast(tbsp_content_type as varchar(8)) as contents,
   cast(tbsp_total_pages as integer) as total_pages,
   cast(tbsp_used_pages as integer) as used_pages,
   cast(tbsp_free_pages as integer) as free_pages,
   cast(tbsp_page_top as integer) as page_hwm,
   cast(tbsp_page_size as integer) as page_sz,
   cast(tbsp_extent_size as smallint) as extent_sz,
   cast(tbsp_prefetch_size as smallint) as prefetch_sz,
   cast(tbsp_initial_size as integer) as initial_size,
   cast(tbsp_increase_size_percent as smallint) as increase_pct,
   cast(storage_group_name as varchar(12)) as stogroup from table(mon_get_tablespace(null,-1)) order by member, tbsp_id "
   ```

   Para todos los miembros:

   ```
   db2 "select cast(member as smallint) as member
   cast(tbsp_id as smallint) as tbsp_id,
   cast(tbsp_name as varchar(35)) as tbsp_name,
   cast(tbsp_type as varchar(3)) as tbsp_type,
   cast(tbsp_state as varchar(10)) as state,
   cast(tbsp_content_type as varchar(8)) as contents,
   cast(tbsp_total_pages as integer) as total_pages,
   cast(tbsp_used_pages as integer) as used_pages,
   cast(tbsp_free_pages as integer) as free_pages,
   cast(tbsp_page_top as integer) as page_hwm,
   cast(tbsp_page_size as integer) as page_sz,
   cast(tbsp_extent_size as smallint) as extent_sz,
   cast(tbsp_prefetch_size as smallint) as prefetch_sz,
   cast(tbsp_initial_size as integer) as initial_size,
   cast(tbsp_increase_size_percent as smallint) as increase_pct,
   cast(storage_group_name as varchar(12)) as stogroup from table(mon_get_tablespace(null,-2)) order by member, tbsp_id "
   ```

## Mostrar el estado y el grupo de almacenamiento de un espacio de tabla
<a name="db2-state-storage-group-tablespace-sql"></a>

Puede enumerar el estado y el grupo de almacenamiento de un espacio de tabla mediante la ejecución de una instrucción de SQL.

Para enumerar el estado y el grupo de almacenamiento de un espacio de tabla, ejecute la siguiente instrucción SQL:

```
db2 "SELECT varchar(tbsp_name, 30) as tbsp_name,
                  varchar(TBSP_STATE, 30) state,
                  tbsp_type,
                  varchar(storage_group_name,30) storage_group
FROM TABLE(MON_GET_TABLESPACE('',-2)) AS t"
```

## Mostrar los espacios de tabla de una tabla
<a name="db2-return-tablespaces-sql"></a>

Puede enumerar los espacios de tabla de una tabla ejecutando una instrucción de SQL.

Para mostrar los espacios de tabla de una tabla, ejecute la siguiente instrucción SQL. En el siguiente ejemplo, sustituya *SCHEMA\$1NAME* y *TABLE\$1NAME* por los nombres del esquema y la tabla:

```
db2 "SELECT 
   VARCHAR(SD.TBSPACE,30) AS DATA_SPACE,
   VARCHAR(SL.TBSPACE,30) AS LONG_SPACE,
   VARCHAR(SI.TBSPACE,30) AS INDEX_SPACE
 FROM 
   SYSCAT.DATAPARTITIONS P 
   JOIN SYSCAT.TABLESPACES SD ON SD.TBSPACEID = P.TBSPACEID 
   LEFT JOIN SYSCAT.TABLESPACES SL ON SL.TBSPACEID = P.LONG_TBSPACEID
   LEFT JOIN SYSCAT.TABLESPACES SI ON SI.TBSPACEID = P.INDEX_TBSPACEID
 WHERE
    TABSCHEMA = 'SCHEMA_NAME'
 AND TABNAME   = 'TABLE_NAME'"
```

## Mostrar los contenedores de espacio de tabla
<a name="db2-listing-tablespace-containers"></a>

Puede enumerar todos los contenedores de espacios de tablas o contenedores de espacios de tabla específicos mediante el comando `cast`.

**Para enumerar los contenedores de espacios de tabla de un espacio de tabla**

1. Conéctese a su base de datos Db2 con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *rds\$1database\$1alias*, *master\$1username* y *master\$1password* por su propia información:

   ```
   db2 connect to rds_database_alias user master_username using master_password
   ```

1. Devuelve una lista de todos los contenedores de espacios de tabla de la base de datos o de contenedores de espacios de tabla específicos.

   Para todos los contenedores de espacios de tabla:

   ```
   db2 "select cast(member as smallint) as member,
   cast(tbsp_name as varchar(35)) as tbsp_name,
   cast(container_id as smallint) as id,
   cast(container_name as varchar(60)) as container_path, container_type as type from table(mon_get_container(null,-2)) order by member,tbsp_id,container_id"
   ```

   Para contenedores de espacios de tabla específicos:

   ```
   db2 "select cast(member as smallint) as member,
   cast(tbsp_name as varchar(35)) as tbsp_name,
   cast(container_id as smallint) as id,
   cast(container_name as varchar(60)) as container_path, container_type as type from table(mon_get_container('TBSP_1',-2)) order by member, tbsp_id,container_id"
   ```

# Integración de una instancia de base de datos de Amazon RDS para Db2 con Amazon S3
<a name="db2-s3-integration"></a>

Puede transferir archivos entre una instancia de base de datos de Amazon RDS para Db2 y un bucket de Amazon Simple Storage Service (Amazon S3) con los procedimientos almacenados de Amazon RDS. Para obtener más información, consulte [Referencia de procedimientos almacenados de Amazon RDS para Db2](db2-stored-procedures.md).

**nota**  
Su instancia de base de datos y el bucket de Amazon S3 deben estar en la misma Región de AWS.

Para que RDS para Db2 se integre con Amazon S3, su instancia de base de datos debe tener acceso a un bucket Amazon S3 donde resida su RDS para Db2. Si no dispone de un bucket de S3, [cree un bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-bucket-overview.html).

**Topics**
+ [Paso 1: Crear una política de IAM](#db2-creating-iam-policy)
+ [Paso 2: crear un rol de IAM y asociar la política de IAM](#db2-creating-iam-role)
+ [Paso 3: agregar su rol de IAM a su instancia de base de datos de RDS para Db2](#db2-adding-iam-role)

## Paso 1: Crear una política de IAM
<a name="db2-creating-iam-policy"></a>

En este paso, cree una política AWS Identity and Access Management (IAM) con los permisos necesarios para transferir archivos del bucket de Amazon S3 a la instancia de base de datos de RDS. En este paso, también se asume que ya ha creado un bucket de S3. Para obtener más información, consulte [Crear un bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html) en la *Guía del usuario de Amazon S3*.

Antes de crear la política, anote la siguiente información:
+ El nombre de recurso de Amazon (ARN) del bucket
+ El ARN para su clave de AWS Key Management Service (AWS KMS), si el bucket utiliza el cifrado SSE-KMS o SSE-S3.

La política de IAM que cree debe contener la siguiente información. Sustituya *\$1amzn-s3-demo-bucket\$1* por el nombre del bucket de S3.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowS3BucketAccess",
            "Effect": "Allow",
            "Action": [
                "kms:GenerateDataKey",
                "kms:Decrypt",
                "s3:PutObject",
                "s3:GetObject",
                "s3:AbortMultipartUpload",
                "s3:ListBucket",
                "s3:GetObjectVersion",
                "s3:ListMultipartUploadParts",
                "s3:GetBucketAcl",
                "s3:GetBucketLocation"
            ],
            "Resource": [
                "arn:aws:s3:::${amzn-s3-demo-bucket}/*",
                "arn:aws:s3:::${amzn-s3-demo-bucket}"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:ListAllMyBuckets"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}
```

------

Puede crear una política de IAM mediante la Consola de administración de AWS o la AWS Command Line Interface (AWS CLI). 

### Consola
<a name="creating-iam-policy-console"></a>

**Para crear una política de IAM que permita a Amazon RDS acceder a un bucket de Amazon S3**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de IAM en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. En el panel de navegación, seleccione **Políticas**.

1. Elija **Crear política** y, a continuación, elija **JSON**.

1. Agregue acciones por servicio. Para transferir archivos desde un bucket de Amazon S3 a Amazon RDS, debe seleccionar los permisos del bucket y los permisos de objeto.

1. Expanda **Resources** (Recursos). Debe especificar los recursos del bucket y del objeto.

1. Elija **Siguiente**.

1. Escriba un nombre para la política en **Nombre de la política**. 

1. (Opcional) En **Description (Descripción)**, escriba una descripción para esta política.

1. Elija **Crear política**.

### AWS CLI
<a name="creating-iam-policy-cli"></a>

**Para crear una política de IAM que permita a Amazon RDS acceder a un bucket de Amazon S3**

1.  Cree un archivo JSON que contenga la siguiente documentación de política JSON. Sustituya *\$1amzn-s3-demo-bucket\$1* por el nombre del bucket de S3.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "AllowS3BucketAccess",
               "Effect": "Allow",
               "Action": [
                   "kms:GenerateDataKey",
                   "kms:Decrypt",
                   "s3:PutObject",
                   "s3:GetObject",
                   "s3:AbortMultipartUpload",
                   "s3:ListBucket",
                   "s3:GetObjectVersion",
                   "s3:ListMultipartUploadParts",
                   "s3:GetBucketAcl",
                   "s3:GetBucketLocation"
               ],
               "Resource": [
                   "arn:aws:s3:::${amzn-s3-demo-bucket}/*",
                   "arn:aws:s3:::${amzn-s3-demo-bucket}"
               ]
           },
           {
               "Effect": "Allow",
               "Action": [
                   "s3:ListAllMyBuckets"
               ],
               "Resource": [
                   "*"
               ]
           }
       ]
   }
   ```

------

1. Ejecute el comando [https://docs.aws.amazon.com/cli/latest/reference/iam/create-policy.html](https://docs.aws.amazon.com/cli/latest/reference/iam/create-policy.html). En el siguiente ejemplo, sustituya *iam\$1policy\$1name* e *iam\$1policy\$1file\$1name* por un nombre para la política de IAM y el nombre del archivo JSON que creó en el paso 1. 

   Para Linux, macOS o Unix:

   ```
   aws iam create-policy \
       --policy-name iam_policy_name \
       --policy-document '{
         "Version": "2012-10-17"		 	 	 		 	 	 		 	 	 ,
         "Statement": [
           {
             "Effect": "Allow",
             "Action": [
               "kms:GenerateDataKey",
               "kms:Decrypt",
               "s3:PutObject",
               "s3:GetObject",
               "s3:AbortMultipartUpload",
               "s3:ListBucket",
               "s3:DeleteObject",
               "s3:GetObjectVersion",
               "s3:ListMultipartUploadParts"
             ],
             "Resource": [
               "arn:aws:s3:::s3_bucket_name/*",
               "arn:aws:s3:::s3_bucket_name"
             ]
           }
         ]
       }'
   ```

   Para Windows:

   ```
   aws iam create-policy ^
       --policy-name iam_policy_name ^
       --policy-document '{
         "Version": "2012-10-17"		 	 	 		 	 	 		 	 	 ,
         "Statement": [
           {
             "Effect": "Allow",
               "Action": [
                 "s3:PutObject",
                 "s3:GetObject",
                 "s3:AbortMultipartUpload",
                 "s3:ListBucket",
                 "s3:DeleteObject",
                 "s3:GetObjectVersion",
                 "s3:ListMultipartUploadParts"
               ],
               "Resource": [
                 "arn:aws:s3:::s3_bucket_name/*",
                 "arn:aws:s3:::s3_bucket_name"
               ]
           }
         ]
       }'
   ```

1. Después de crear la política, apunte el ARN de la política. Necesita el ARN para [Paso 2: crear un rol de IAM y asociar la política de IAM](#db2-creating-iam-role).

Para obtener más información acerca de cómo crear una política de IAM, consulte [Creación de políticas de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) en la Guía del usuario de IAM.

## Paso 2: crear un rol de IAM y asociar la política de IAM
<a name="db2-creating-iam-role"></a>

En este paso se supone que se ha creado la política de IAM en [Paso 1: Crear una política de IAM](#db2-creating-iam-policy). En este paso, creará un rol de IAM para la instancia de base de datos de RDS para Db2 y, a continuación, asociará la política de IAM al rol. 

Puede crear un rol de IAM a su instancia de base de datos mediante la Consola de administración de AWS o la AWS CLI.

### Consola
<a name="creating-iam-role-console"></a>

**Para crear un rol de IAM y asociarle la política de IAM**

1. Inicie sesión en Consola de administración de AWS y abra la consola IAM en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Seleccione **Roles** en el panel de navegación.

1. Elija **Creación de rol**.

1. En **Tipo de entidad de confianza**, elija **Servicio de AWS**.

1. Para el **Servicio o caso de uso**, seleccione **RDS** y, a continuación, seleccione **RDS****:** **Agregar rol a la base de datos**.

1. Elija **Siguiente**.

1. Para **Políticas de permisos**, busque y seleccione el nombre de la política de IAM que creó.

1. Elija **Siguiente**.

1. En **Nombre de rol**, ingrese un nombre de rol.

1. (Opcional) En **Descripción**, ingrese una descripción para el nuevo rol.

1. Elija **Creación de rol**.

### AWS CLI
<a name="creating-iam-role-cli"></a>

**Para crear un rol de IAM y asociarle la política de IAM**

1. Cree un archivo JSON que contenga la siguiente documentación de política JSON:

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "Service": "rds.amazonaws.com"
               },
               "Action": "sts:AssumeRole"
           }
       ]
   }
   ```

------

1. Ejecute el comando [https://docs.aws.amazon.com/cli/latest/reference/iam/create-role.html](https://docs.aws.amazon.com/cli/latest/reference/iam/create-role.html). En el siguiente ejemplo, sustituya *iam\$1role\$1name* e *iam\$1assume\$1role\$1policy\$1file\$1name* por un nombre para el rol de IAM y el nombre del archivo JSON que creó en el paso 1.

   Para Linux, macOS o Unix:

   ```
   aws iam create-role \
       --role-name iam_role_name \
       --assume-role-policy-document '{
         "Version": "2012-10-17"		 	 	 		 	 	 		 	 	 ,
         "Statement": [
           {
             "Effect": "Allow",
             "Principal": {
               "Service": "rds.amazonaws.com"
             },
             "Action": "sts:AssumeRole"
           }
         ]
       }'
   ```

   Para Windows:

   ```
   aws iam create-role ^
       --role-name iam_role_name ^
       --assume-role-policy-document '{
         "Version": "2012-10-17"		 	 	 		 	 	 		 	 	 ,
         "Statement": [
           {
             "Effect": "Allow",
             "Principal": {
               "Service": "rds.amazonaws.com"
             },
             "Action": "sts:AssumeRole"
           }
         ]
       }'
   ```

1. Después de crear el rol, anote el ARN del rol. Necesita el ARN para [Paso 3: agregar su rol de IAM a su instancia de base de datos de RDS para Db2](#db2-adding-iam-role).

1. Ejecute el comando [https://docs.aws.amazon.com/cli/latest/reference/iam/attach-role-policy.html](https://docs.aws.amazon.com/cli/latest/reference/iam/attach-role-policy.html). En el siguiente ejemplo, sustituya *iam\$1policy\$1arn* por el ARN de la política de IAM que creó en [Paso 1: Crear una política de IAM](#db2-creating-iam-policy). Reemplace *iam\$1role\$1name* por el nombre del rol de IAM que acaba de crear.

   Para Linux, macOS o Unix:

   ```
   aws iam attach-role-policy \
      --policy-arn iam_policy_arn \
      --role-name iam_role_name
   ```

   Para Windows:

   ```
   aws iam attach-role-policy ^
      --policy-arn iam_policy_arn ^
      --role-name iam_role_name
   ```

Para obtener más información, vea [Crear un rol para delegar permisos a un usuario de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user.html) en *Guía del usuario de IAM. *

## Paso 3: agregar su rol de IAM a su instancia de base de datos de RDS para Db2
<a name="db2-adding-iam-role"></a>

En este paso, agregará su rol de IAM a su instancia de base de datos de RDS para Db2 Tenga en cuenta los siguientes requisitos:
+ Debe tener acceso a un rol de IAM con la política de permisos de Amazon S3 requerida adjunta. 
+ Solo puede asociar un rol de IAM a su instancia de base de datos de RDS para Db2 cada vez.
+ Su instancia de base de datos de RDS para Db2 debe tener el estado **Disponible**.

Puede añadir un rol de IAM a su instancia de base de datos mediante la Consola de administración de AWS o la AWS CLI.

### Consola
<a name="db2-adding-iam-role-console"></a>

**Para añadir un rol de IAM a su instancia de base de datos de RDS para Db2**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon RDS en [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. En el panel de navegación, elija **Databases** (Bases de datos).

1. Elija el nombre de la instancia de base de datos de RDS para Db2.

1. En la pestaña **Connectivity & Security** (Conectividad y seguridad), desplácese hacia abajo hasta la sección **Manage IAM roles** (Administrar roles de IAM) de la parte inferior de la página.

1. En **Añadir roles de IAM a esta instancia**, elija el rol que creó en [Paso 2: crear un rol de IAM y asociar la política de IAM](#db2-creating-iam-role).

1. En **Feature (Característica)**, elija **S3\$1INTEGRATION**.

1. Seleccione **Add role (Añadir rol)**.  
![\[La característica S3_INTEGRATION se agregó al rol de IAM de una instancia de base de datos.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/db2-s3-integration-role.png)

### AWS CLI
<a name="db2-adding-iam-role-cli"></a>

Para añadir un rol de IAM a su instancia de base de datos de RDS para Db2, ejecute el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/add-role-to-db-instance.html](https://docs.aws.amazon.com/cli/latest/reference/rds/add-role-to-db-instance.html). En el siguiente ejemplo, sustituya *región*, *db\$1instance\$1name* e *iam\$1role\$1arn* por el nombre de la Región de AWS en la que existe la instancia de la base de datos, el nombre de la instancia de la base de datos y el ARN del rol de IAM que creó en [Paso 2: crear un rol de IAM y asociar la política de IAM](#db2-creating-iam-role). 

Para Linux, macOS o Unix:

```
aws rds add-role-to-db-instance \
    --region $region \
    --db-instance-identifier $db_instance_name \
    --feature-name S3_INTEGRATION \
    --role-arn $iam_role_arn \
```

Para Windows:

```
aws rds add-role-to-db-instance ^
    --region $region \
    --db-instance-identifier db_instance_name ^
    --feature-name S3_INTEGRATION ^
    --role-arn iam_role_arn ^
```

Para confirmar que el rol se agregó correctamente a su instancia de base de datos de RDS para Db2, ejecute el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html). En el siguiente ejemplo, sustituya *db\$1instance\$1name* por el nombre de la instancia de base de datos. 

Para Linux, macOS o Unix:

```
aws rds describe-db-instances \
    --filters "Name=db-instance-id,Values=db_instance_name" \
    --query 'DBInstances[].AssociatedRoles'
```

Para Windows:

```
aws rds describe-db-instances ^
    --filters "Name=db-instance-id,Values=db_instance_name" ^
    --query 'DBInstances[].AssociatedRoles'
```

El resultado de este comando debería ser similar al siguiente ejemplo:

```
[
    [
        {
            "RoleArn": "arn:aws:iam::0123456789012:role/rds-db2-s3-role",
            "FeatureName": "S3_INTEGRATION",
            "Status": "ACTIVE"
        }
    ]
]
```

# Migración de datos a Amazon RDS para Db2
<a name="db2-migrating-data-to-rds"></a>

Puede migrar bases de datos de Db2 autoadministradas a Amazon RDS para Db2 mediante AWS o herramientas nativas de Db2.

Para obtener información sobre cómo migrar una base de datos de Db2 a Amazon RDS para Db2 mediante los servicios de AWS, consulte [Uso de servicios de AWS para migrar datos de Db2 a Amazon RDS para Db2](db2-migration-approaches.md).

Para obtener información sobre cómo migrar una base de datos de Db2 a Amazon RDS para Db2 mediante las herramientas nativas de Db2, consulte [Uso de herramientas nativas de Db2 para migrar datos de Db2 a Amazon RDS para Db2](db2-native-db2-tools.md).

# Uso de servicios de AWS para migrar datos de Db2 a Amazon RDS para Db2
<a name="db2-migration-approaches"></a>

En Amazon RDS, hay varias formas de migrar datos de una base de datos de Db2 a Amazon RDS para Db2. Puede realizar una migración puntual de su base de datos Db2 desde entornos Linux, AIX o Windows a Amazon RDS para Db2. Para minimizar el tiempo de inactividad, puede realizar una migración con un tiempo de inactividad prácticamente nulo. Puede migrar sus datos guardándolos en Amazon S3 y cargándolos tabla por tabla en su base de datos de Db2. También puede realizar una migración sincrónica a través de la replicación o usar AWS Database Migration Service.

En el caso de las migraciones puntuales para bases de datos Db2 basadas en Linux, Amazon RDS solo admite copias de seguridad en línea y sin conexión. Amazon RDS no admite copias de seguridad Delta ni incrementales. En el caso de las migraciones con un tiempo de inactividad prácticamente nulo para bases de datos Db2 basadas en Linux, Amazon RDS requiere copias de seguridad en línea. Le recomendamos que utilice copias de seguridad en línea para las migraciones con un tiempo de inactividad prácticamente nulo y copias de seguridad sin conexión para las migraciones que puedan gestionar tiempo de inactividad.

**Topics**
+ [Migración de Linux a Linux de Amazon RDS para Db2](db2-one-time-migration-linux.md)
+ [Migración de Linux a Linux con un tiempo de inactividad prácticamente nulo para Amazon RDS para Db2](db2-near-zero-downtime-migration.md)
+ [Migración de forma sincrónica de Linux a Linux de Amazon RDS para Db2](db2-synchronous-migration-linux.md)
+ [Migración de AIX o Windows a Linux de Amazon RDS para Db2](db2-one-time-migration-aix-windows-linux.md)
+ [Migración de datos de Db2 mediante Amazon S3 a Amazon RDS para Db2](db2-migration-load-from-s3.md)
+ [Migración a Amazon RDS para Db2 con AWS Database Migration Service (AWS DMS)](db2-migration-amazon-dms.md)

# Migración de Linux a Linux de Amazon RDS para Db2
<a name="db2-one-time-migration-linux"></a>

Con este enfoque de migración, realiza copias de seguridad de su base de datos de Db2 autoadministrada en un bucket de Amazon S3. Luego, utilice los procedimientos almacenados de Amazon RDS para restaurar la base de datos Db2 en una instancia de base de datos de Amazon RDS para Db2. Para obtener más información sobre cómo usar Amazon S3, consulte [Integración de una instancia de base de datos de Amazon RDS para Db2 con Amazon S3](db2-s3-integration.md).

La herramienta de copia de seguridad y restauración de RDS para Db2 sigue las rutas de actualización y las restricciones admitidas por IBM Db2. Para obtener más información, consulte [Supported upgrade paths for Db2 servers](https://www.ibm.com/docs/en/db2/11.5?topic=servers-supported-upgrade-paths-db2) y [Upgrade restrictions for Db2 servers](https://www.ibm.com/docs/en/db2/11.5?topic=servers-upgrade-restrictions) en la documentación de IBM Db2.

**Topics**
+ [Limitaciones y recomendaciones para el uso de la restauración nativa](#db2-linux-migration-limitations)
+ [Copia de seguridad de la base de datos en Amazon S3](#db2-linux-backing-up-database)
+ [Creación de un grupo de almacenamiento automático predeterminado](#db2-linux-creating-auto-storage-group)
+ [Restauración de la base de datos Db2](#db2-linux-restoring-db2-database)

## Limitaciones y recomendaciones para el uso de la restauración nativa
<a name="db2-linux-migration-limitations"></a>

Las siguientes limitaciones y recomendaciones se aplican al uso de la restauración nativa: 
+ Amazon RDS solo admite la migración de versiones de Db2 en las instalaciones que coincidan con las versiones admitidas de RDS para Db2. Para obtener más información acerca de las versiones admitidas, consulte [Administración de actualizaciones para instancias de Amazon RDS Db2](Db2.Concepts.VersionMgmt.Supported.md).
+ Amazon RDS solo admite copias de seguridad en línea y sin conexión para la restauración nativa. Amazon RDS no admite copias de seguridad Delta ni incrementales.
+ No se puede restaurar desde un bucket de Amazon S3 en una Región de AWS que no coincida con la región en la que está ubicada la instancia de base de datos de RDS para Db2. 
+ Amazon S3 limita el tamaño de los archivos que se cargan en un bucket de Amazon S3 a 5 TB. Si un archivo de copia de seguridad de una base de datos supera los 5 TB, divida el archivo de copia de seguridad en archivos más pequeños.
+ Amazon RDS no admite rutinas externas no restringidas, ni restauraciones incrementales ni restauraciones Delta.
+ No puede restaurar desde una base de datos de origen cifrada, pero puede restaurar a una instancia de base de datos de Amazon RDS cifrada.

El proceso de restauración varía en función de la configuración.

Si ha configurado `USE_STREAMING_RESTORE` en `TRUE`, Amazon RDS transmite directamente la copia de seguridad desde el bucket de S3 durante la restauración. La transmisión reduce significativamente los requisitos de almacenamiento. Solo necesita aprovisionar espacio de almacenamiento de tamaño igual o superior al de la copia de seguridad o la base de datos original, el que sea mayor.

Si establece `USE_STREAMING_RESTORE` en `FALSE`, Amazon RDS descarga primero la copia de seguridad en la instancia de base de datos de RDS para Db2 y luego la extrae. La extracción requiere espacio de almacenamiento adicional. Debe aprovisionar espacio de almacenamiento igual o superior a la suma del tamaño de la copia de seguridad más el tamaño de la base de datos original.

El tamaño máximo de la base de datos restaurada es igual al tamaño máximo de la base de datos admitida menos el espacio necesario para el almacenamiento temporal durante el proceso de restauración.

## Copia de seguridad de la base de datos en Amazon S3
<a name="db2-linux-backing-up-database"></a>

Para hacer una copia de seguridad de la base de datos en Amazon S3, necesita los siguientes componentes AWS:
+ *Un bucket de Amazon S3 para almacenar los archivos de la copia de seguridad*: cargue los archivos de copia de seguridad que desee migrar a Amazon RDS. Le recomendamos que utilice copias de seguridad sin conexión para las migraciones que puedan gestionar tiempo de inactividad. Si ya tiene un bucket de S3, puede utilizar ese bucket. Si no tiene un bucket de S3, consulte [Crear un bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html) en la *Guía de usuario de Amazon S3*.
**nota**  
Si su base de datos es grande y tardaría mucho en transferirse a un bucket de S3, puede solicitar un dispositivo AWS Snow Family y solicitar a AWS que realice la copia de seguridad. Tras copiar los archivos al dispositivo y devolverlos al equipo de Snow Family, el equipo transferirá las copias de seguridad de las imágenes a su bucket de S3. Para obtener más información, consulte la [Documentación de AWS Snow Family](https://docs.aws.amazon.com/snowball/).
+ *Un rol de IAM para acceder al bucket de S3*: si ya tiene un rol de IAM, puede usar ese rol. Si no dispone de un rol, consulte [Paso 2: crear un rol de IAM y asociar la política de IAM](db2-s3-integration.md#db2-creating-iam-role). 
+ *Una política de IAM con relaciones de confianza y permisos asociados a su rol de IAM*: para obtener más información, consulte [Paso 1: Crear una política de IAM](db2-s3-integration.md#db2-creating-iam-policy).
+ *El rol de IAM agregado a su instancia de base de datos de RDS para Db2*: para obtener más información, consulte [Paso 3: agregar su rol de IAM a su instancia de base de datos de RDS para Db2](db2-s3-integration.md#db2-adding-iam-role).

## Creación de un grupo de almacenamiento automático predeterminado
<a name="db2-linux-creating-auto-storage-group"></a>

La base de datos de origen debe tener un grupo de almacenamiento automático predeterminado. Si la base de datos no dispone de un grupo de almacenamiento automático predeterminado, debe crear uno.

**Creación de un grupo de almacenamiento automático predeterminado**

1. Conéctese a su base de datos de origen. En el siguiente ejemplo, sustituya *source\$1database* por el nombre de su base de datos.

   ```
   db2 connect to source_database 
   ```

1. Cree un grupo de almacenamiento automático y configúrelo como predeterminado. En el siguiente ejemplo, sustituya *storage\$1path* por la ruta absoluta en la que se encuentre el grupo de almacenamiento.

   ```
   db2 "create stogroup IBMSTOGROUP ON storage_path set as default"
   ```

1. Finalice los procesos de backend.

   ```
   db2 terminate
   ```

1. Desactive la base de datos y detenga todos los servicios de la base de datos. En el siguiente ejemplo, sustituya *source\$1database* por el nombre de la base de datos para la que ha creado el grupo de almacenamiento.

   ```
   db2 deactivate db source_database
   ```

1. Haga una copia de seguridad de la base de datos. En el siguiente ejemplo, sustituya *source\$1database* por el nombre de la base de datos para la que ha creado el grupo de almacenamiento. Sustituya *file\$1system\$1path* por la ruta absoluta donde desee hacer la copia de seguridad de la base de datos.

   ```
   db2 backup database source_database to file_system_path 
   ```

## Restauración de la base de datos Db2
<a name="db2-linux-restoring-db2-database"></a>

Tras hacer una copia de seguridad de su base de datos en Amazon S3 y crear un grupo de almacenamiento automático, ya puede restaurar la base de datos Db2 a la instancia de base de datos de RDS para Db2.

**Restauración de la base de datos Db2 del bucket de Amazon S3 en la instancia de base de datos de RDS para Db2**

1. Conéctese a una instancia de base de datos de RDS para Db2. Para obtener más información, consulte [Conexión a la instancia de base de datos de Db2](USER_ConnectToDb2DBInstance.md).

1. (Opcional) Para asegurarse de que la base de datos esté configurada con los ajustes óptimos, compruebe los valores de los siguientes parámetros llamando a [rdsadmin.show\$1configuration](db2-sp-managing-databases.md#db2-sp-show-configuration):
   + `RESTORE_DATABASE_NUM_BUFFERS`
   + `RESTORE_DATABASE_PARALLELISM`
   + `RESTORE_DATABASE_NUM_MULTI_PATHS`
   + `USE_STREAMING_RESTORE`

   Use [rdsadmin.set\$1configuration](db2-sp-managing-databases.md#db2-sp-set-configuration) para modificar estos valores según sea necesario. La configuración de estos parámetros de forma adecuada puede mejorar significativamente el rendimiento al restaurar bases de datos con grandes volúmenes de datos. Para la mayoría de los escenarios de migración, recomendamos configurar `USE_STREAMING_RESTORE` en `TRUE` porque reduce los requisitos de almacenamiento y puede mejorar la velocidad de restauración.

1. Restaure la base de datos mediante una llamada a `rdsadmin.restore_database`. Para obtener más información, consulte [rdsadmin.restore\$1database](db2-sp-managing-databases.md#db2-sp-restore-database). 

# Migración de Linux a Linux con un tiempo de inactividad prácticamente nulo para Amazon RDS para Db2
<a name="db2-near-zero-downtime-migration"></a>

Con este enfoque de migración, migra una base de datos Db2 basada en Linux desde una base de datos Db2 autoadministrada (origen) hasta Amazon RDS para Db2. Este enfoque se traduce en una interrupción o tiempo de inactividad mínimos o nulos para la aplicación o los usuarios. Este enfoque hace copias de seguridad de la base de datos y las restaura mediante la reproducción de registros, lo que ayuda a evitar interrupciones en las operaciones en curso y proporciona una alta disponibilidad de la base de datos. 

Para lograr una migración con un tiempo de inactividad prácticamente nulo, RDS para Db2 implementa la restauración con reproducción de registros. Este enfoque realiza una copia de seguridad de su base de datos Db2 autoadministrada basada en Linux y la restaura en el servidor de RDS para Db2. Con los procedimientos almacenados de Amazon RDS, puede aplicar los registros de transacciones subsiguientes para actualizar la base de datos. 

**Topics**
+ [Limitaciones y recomendaciones de migración con un tiempo de inactividad prácticamente nulo](#db2-near-zero-downtime-migration-limitations)
+ [Copia de seguridad de la base de datos en Amazon S3](#db2-near-zero-downtime-backing-up-database)
+ [Creación de un grupo de almacenamiento automático predeterminado](#db2-near-zero-migration-creating-auto-storage-group)
+ [Migración de su base de datos de Db2](#db2-migrating-db2-database)

## Limitaciones y recomendaciones de migración con un tiempo de inactividad prácticamente nulo
<a name="db2-near-zero-downtime-migration-limitations"></a>

Las siguientes limitaciones y recomendaciones se aplican al uso de la migración con un tiempo de inactividad casi nulo:
+ Amazon RDS requiere una copia de seguridad en línea para las migraciones con un tiempo de inactividad prácticamente nulo. Esto se debe a que Amazon RDS mantiene su base de datos en un estado pendiente de avance de transacciones mientras carga los registros de transacciones archivados. Para obtener más información, consulte [Migración de su base de datos de Db2](#db2-migrating-db2-database). 
+ No se puede restaurar desde un bucket de Amazon S3 en una Región de AWS que no coincida con la región en la que está ubicada la instancia de base de datos de RDS para Db2. 
+ Amazon S3 limita el tamaño de los archivos cargados en un bucket de S3 a 5 TB. Si un archivo de copia de seguridad de una base de datos supera los 5 TB, divida el archivo de copia de seguridad en archivos más pequeños.
+ Amazon RDS no admite rutinas externas no restringidas, ni restauraciones incrementales ni restauraciones Delta.
+ No puede restaurar desde una base de datos de origen cifrada, pero puede restaurar a una instancia de base de datos de Amazon RDS cifrada.

El proceso de restauración varía en función de la configuración.

Si ha configurado `USE_STREAMING_RESTORE` en `TRUE`, Amazon RDS transmite directamente la copia de seguridad desde el bucket de S3 durante la restauración. La transmisión reduce significativamente los requisitos de almacenamiento. Solo necesita aprovisionar espacio de almacenamiento de tamaño igual o superior al de la copia de seguridad o la base de datos original, el que sea mayor.

Si establece `USE_STREAMING_RESTORE` en `FALSE`, Amazon RDS descarga primero la copia de seguridad en la instancia de base de datos de RDS para Db2 y luego la extrae. La extracción requiere espacio de almacenamiento adicional. Debe aprovisionar espacio de almacenamiento igual o superior a la suma del tamaño de la copia de seguridad más el tamaño de la base de datos original.

El tamaño máximo de la base de datos restaurada es igual al tamaño máximo de la base de datos admitida menos el espacio necesario para el almacenamiento temporal durante el proceso de restauración. 

## Copia de seguridad de la base de datos en Amazon S3
<a name="db2-near-zero-downtime-backing-up-database"></a>

Para hacer una copia de seguridad de la base de datos en Amazon S3, necesita los siguientes componentes AWS:
+ *Un bucket de Amazon S3 para almacenar los archivos de la copia de seguridad*: cargue los archivos de copia de seguridad que desee migrar a Amazon RDS. Amazon RDS requiere una copia de seguridad en línea para las migraciones con un tiempo de inactividad prácticamente nulo. Si ya tiene un bucket de S3, puede utilizar ese bucket. Si no tiene un bucket de S3, consulte [Crear un bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html) en la *Guía de usuario de Amazon S3*.
**nota**  
Si su base de datos es grande y tardaría mucho en transferirse a un bucket de S3, puede solicitar un dispositivo AWS Snow Family y solicitar a AWS que realice la copia de seguridad. Tras copiar los archivos al dispositivo y devolverlos al equipo de Snow Family, el equipo transferirá las copias de seguridad de las imágenes a su bucket de S3. Para obtener más información, consulte la [Documentación de AWS Snow Family](https://docs.aws.amazon.com/snowball/).
+ *Un rol de IAM para acceder al bucket de S3*: si ya tiene un rol AWS Identity and Access Management (de IAM), puede usar ese rol. Si no dispone de un rol, consulte [Paso 2: crear un rol de IAM y asociar la política de IAM](db2-s3-integration.md#db2-creating-iam-role). 
+ *Una política de IAM con relaciones de confianza y permisos asociados a su rol de IAM*: para obtener más información, consulte [Paso 1: Crear una política de IAM](db2-s3-integration.md#db2-creating-iam-policy).
+ *El rol de IAM agregado a su instancia de base de datos de RDS para Db2*: para obtener más información, consulte [Paso 3: agregar su rol de IAM a su instancia de base de datos de RDS para Db2](db2-s3-integration.md#db2-adding-iam-role).

## Creación de un grupo de almacenamiento automático predeterminado
<a name="db2-near-zero-migration-creating-auto-storage-group"></a>

La base de datos de origen debe tener un grupo de almacenamiento automático predeterminado. Si la base de datos no dispone de un grupo de almacenamiento automático predeterminado, debe crear uno.

**Creación de un grupo de almacenamiento automático predeterminado**

1. Conéctese a su base de datos de origen. En el siguiente ejemplo, sustituya *source\$1database* por el nombre de su base de datos.

   ```
   db2 connect to source_database 
   ```

1. Cree un grupo de almacenamiento automático y configúrelo como predeterminado. En el siguiente ejemplo, sustituya *storage\$1path* por la ruta absoluta en la que se encuentre el grupo de almacenamiento.

   ```
   db2 "create stogroup IBMSTOGROUP ON storage_path set as default"
   ```

1. Finalice los procesos de backend.

   ```
   db2 terminate
   ```

## Migración de su base de datos de Db2
<a name="db2-migrating-db2-database"></a>

Tras configurar la migración con un tiempo de inactividad prácticamente nulo, estará listo para migrar la base de datos de Db2 desde el bucket de Amazon S3 a la instancia de base de datos de RDS para Db2.

**Realización de una migración con un tiempo de inactividad prácticamente nulo de los archivos de copia de seguridad del bucket de Amazon S3 a la instancia de base de datos de RDS para Db2**

1. Realice una copia de seguridad en línea de la base de datos de origen. Para obtener más información, consulte [Comando BACKUP DATABASE](https://www.ibm.com/docs/en/db2/11.5?topic=commands-backup-database) en la documentación de IBM Db2.

1. Copie la copia de seguridad de la base de datos en un bucket de Amazon S3. Para obtener más información acerca del uso de Amazon S3, consulte la [Guía del usuario de Amazon Simple Storage Service](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html).

1. Conéctese al servidor `rdsadmin` con el *master\$1username* y la *master\$1password* de su instancia de base de datos de RDS para Db2.

   ```
   db2 connect to rdsadmin user master_username using master_password
   ```

1. (Opcional) Para asegurarse de que la base de datos esté configurada con los ajustes óptimos, compruebe los valores de los siguientes parámetros llamando a [rdsadmin.show\$1configuration](db2-sp-managing-databases.md#db2-sp-show-configuration):
   + `RESTORE_DATABASE_NUM_BUFFERS`
   + `RESTORE_DATABASE_PARALLELISM`
   + `RESTORE_DATABASE_NUM_MULTI_PATHS`
   + `USE_STREAMING_RESTORE`

   Use [rdsadmin.set\$1configuration](db2-sp-managing-databases.md#db2-sp-set-configuration) para modificar estos valores según sea necesario. La configuración de estos parámetros de forma adecuada puede mejorar significativamente el rendimiento al restaurar bases de datos con grandes volúmenes de datos. Para la mayoría de los escenarios de migración, recomendamos configurar `USE_STREAMING_RESTORE` en `TRUE` porque reduce los requisitos de almacenamiento y puede mejorar la velocidad de restauración.

1. Para restaurar la copia de seguridad en el servidor de RDS para Db2, llame a `rdsadmin.restore_database`. Establece `backup_type` en `ONLINE`. Para obtener más información, consulte [rdsadmin.restore\$1database](db2-sp-managing-databases.md#db2-sp-restore-database).

1. Copie los registros de archivo desde el servidor de origen en el bucket de S3. Para obtener más información, consulte [Archive logging](https://www.ibm.com/docs/en/db2/11.5?topic=logging-archive) en la documentación de IBM Db2.

1. Aplique los registros de archivo tantas veces como sea necesario llamando a `rdsadmin.rollforward_database`. Configure `complete_rollforward` en `FALSE` para mantener la base de datos en el estado `ROLL-FORWARD PENDING`. Para obtener más información, consulte [rdsadmin.rollforward\$1database](db2-sp-managing-databases.md#db2-sp-rollforward-database).

1. Después de aplicar todos los registros de archivo, llame a `rdsadmin.complete_rollforward` para poner la base de datos en línea. Para obtener más información, consulte [rdsadmin.complete\$1rollforward](db2-sp-managing-databases.md#db2-sp-complete-rollforward).

1. Cambie las conexiones de las aplicaciones al servidor de RDS para Db2 actualizando los puntos de conexión de la aplicación para la base de datos o actualizando los puntos de conexión de DNS para redirigir el tráfico al servidor de RDS para Db2. También puede utilizar la característica de redireccionamiento automático de clientes de Db2 en su base de datos de Db2 autoadministrada con el punto de conexión de base de datos de RDS para Db2. Para obtener más información, consulte la [Automatic client reroute description and setup](https://www.ibm.com/docs/en/db2/11.5?topic=reroute-configuring-automatic-client) en la documentación de IBM Db2.

1. (Opcional) Cierre la base de datos de origen.

# Migración de forma sincrónica de Linux a Linux de Amazon RDS para Db2
<a name="db2-synchronous-migration-linux"></a>

Con este enfoque de migración, puede configurar la replicación entre su base de datos Db2 autoadministrada y su instancia de base de datos de Amazon RDS para Db2. Los cambios realizados en la base de datos autoadministrada se replican en la instancia de base de datos de RDS para Db2 prácticamente en tiempo real. Este enfoque puede proporcionar una disponibilidad continua y minimizar el tiempo de inactividad durante el proceso de migración.

# Migración de AIX o Windows a Linux de Amazon RDS para Db2
<a name="db2-one-time-migration-aix-windows-linux"></a>

Con este enfoque de migración, utiliza herramientas nativas de Db2 para hacer copias de seguridad de su base de datos de Db2 autoadministrada en un bucket de Amazon S3. Las herramientas nativas de Db2 incluyen la utilidad `export`, el comando del sistema `db2move` o el comando del sistema `db2look`. La base de datos Db2 puede administrarse de forma automática o en Amazon Elastic Compute Cloud (Amazon EC2). Puede trasladar datos desde su sistema AIX o Windows a su bucket de Amazon S3. A continuación, utilice un cliente de Db2 para cargar los datos directamente desde el bucket de S3 a su base de datos de Amazon RDS para Db2. El tiempo de inactividad depende del tamaño de la base de datos. Para obtener más información sobre cómo usar Amazon S3, consulte [Integración de una instancia de base de datos de Amazon RDS para Db2 con Amazon S3](db2-s3-integration.md).

**Para migrar la base de datos Db2 a RDS para Db2**

1. Prepárese para realizar una copia de seguridad de la base de datos. Configure una cantidad de almacenamiento suficiente para guardar la copia de seguridad en su sistema Db2 autoadministrado.

1. Haga una copia de seguridad de su base de datos.

   1. Ejecute el [comando del sistema db2look](https://www.ibm.com/docs/en/db2/11.5?topic=commands-db2look-db2-statistics-ddl-extraction-tool) para extraer el archivo de lenguaje de definición de datos (DDL) de todos los objetos.

   1. Ejecute la [utilidad de exportación de Db2](https://www.ibm.com/docs/en/db2/11.5?topic=utility-exporting-data), el [comando del sistema db2move](https://www.ibm.com/docs/en/db2/11.5?topic=commands-db2move-database-movement-tool) o una [instrucción CREATE EXTERNAL TABLE](https://www.ibm.com/docs/en/db2/11.5?topic=statements-create-table-external) para descargar los datos de la tabla Db2 y almacenarlos en su sistema Db2.

1. Traslade su copia de seguridad a un bucket de Amazon S3. Para obtener más información, consulte [Integración de una instancia de base de datos de Amazon RDS para Db2 con Amazon S3](db2-s3-integration.md). 
**nota**  
Si su base de datos es grande y tardaría mucho en transferirse a un bucket de S3, puede solicitar un dispositivo AWS Snow Family y solicitar a AWS que realice la copia de seguridad. Tras copiar los archivos al dispositivo y devolverlos al equipo de Snow Family, el equipo transferirá las copias de seguridad de las imágenes a su bucket de S3. Para obtener más información, consulte la [Documentación de AWS Snow Family](https://docs.aws.amazon.com/snowball/).

1. Utilice un cliente de Db2 para cargar los datos directamente desde el bucket de S3 a su base de datos de RDS para Db2. Para obtener más información, consulte [Migración con Amazon S3](db2-migration-load-from-s3.md).

# Migración de datos de Db2 mediante Amazon S3 a Amazon RDS para Db2
<a name="db2-migration-load-from-s3"></a>

Con este enfoque de migración, primero debe guardar datos desde una sola tabla en un archivo de datos que debe colocar en un bucket de Amazon S3. A continuación, utilice el [comando LOAD](https://www.ibm.com/docs/en/db2/11.5?topic=commands-load) para cargar los datos de ese archivo de datos en una tabla de la base de datos de Amazon RDS para Db2. Para obtener más información sobre cómo usar Amazon S3, consulte [Integración de una instancia de base de datos de Amazon RDS para Db2 con Amazon S3](db2-s3-integration.md).

**Topics**
+ [Guardado de datos en Amazon S3](#db2-migration-load-from-s3-saving-data-file)
+ [Carga de datos en tablas de RDS para Db2](#db2-migration-load-from-s3-into-db-table)

## Guardado de datos en Amazon S3
<a name="db2-migration-load-from-s3-saving-data-file"></a>

Para guardar datos de una sola tabla en Amazon S3, emplee una utilidad de base de datos para extraer los datos del sistema de administración de bases de datos (DBMS) en un archivo CSV. A continuación, cargue el archivo de datos en Amazon S3.

Para almacenar archivos de datos en Amazon S3, necesita los siguientes componentes de:AWS
+ *Un bucket de Amazon S3 para almacenar los archivos de copia de seguridad*: si ya tiene un bucket de S3, puede utilizar ese bucket. Si no tiene un bucket de S3, consulte [Crear un bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html) en la *Guía de usuario de Amazon S3*.
+ *Un rol de IAM para acceder al bucket de S3*: si ya tiene un rol de IAM, puede usar ese rol. Si no dispone de un rol, consulte [Paso 2: crear un rol de IAM y asociar la política de IAM](db2-s3-integration.md#db2-creating-iam-role). 
+ *Una política de IAM con relaciones de confianza y permisos asociados a su rol de IAM*: para obtener más información, consulte [Paso 1: Crear una política de IAM](db2-s3-integration.md#db2-creating-iam-policy).
+ *El rol de IAM agregado a su instancia de base de datos de RDS para Db2*: para obtener más información, consulte [Paso 3: agregar su rol de IAM a su instancia de base de datos de RDS para Db2](db2-s3-integration.md#db2-adding-iam-role).

## Carga de datos en tablas de RDS para Db2
<a name="db2-migration-load-from-s3-into-db-table"></a>

Tras guardar los archivos de datos en Amazon S3, puede cargar los datos de estos archivos en tablas individuales de su instancia de base de datos de RDS para Db2.

**Carga de datos de la tabla de Db2 en la tabla de base de datos de RDS para Db2**

1. Conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 connect to rdsadmin user master_username using master_password
   ```

1. Catalogue un alias de acceso al almacenamiento que apunte al bucket de Amazon S3 donde se almacenan los archivos guardados. Anote el nombre de este alias para utilizarlo en el paso siguiente. Solo necesita realizar este paso una vez si tiene pensado cargar varias tablas de archivos de datos almacenados en el mismo bucket de Amazon S3.

   En el siguiente ejemplo, se cataloga un alias denominado *my\$1s3\$1alias* que concede acceso a un usuario llamado *jorge\$1souza* a un bucket denominado *amzn-s3-demo-bucket*.

   ```
   db2 "call rdsadmin.catalog_storage_access(?, 'my_s3_alias', 'amzn-s3-demo-bucket', 'USER', 'jorge_souza')"
   ```

   Para obtener más información acerca de este procedimiento, consulte [rdsadmin.catalog\$1storage\$1access](db2-sp-managing-storage-access.md#db2-sp-catalog-storage-access).

1. Ejecute el comando `LOAD` con el alias de acceso al almacenamiento que apunta a su bucket de Amazon S3. 
**nota**  
Si el comando `LOAD` devuelve un error, es posible que deba crear un punto de conexión de puerta de enlace de VPC para Amazon S3 y agregar reglas de salida al grupo de seguridad. Para obtener más información, consulte [Error de E/S de archivos](db2-troubleshooting.md#db2-file-input-output-error).

   En el siguiente ejemplo, se cargan los datos de un archivo de datos denominado *my\$1s3\$1datafile.csv* en una tabla denominada *my\$1db2\$1table.* En el ejemplo, se supone que el archivo de datos está en el bucket de Amazon S3 al que apunta el alias denominado *my\$1s3\$1alias*.

   ```
   db2 "load from db2remote://my_s3_alias//my_s3_datafile.csv of DEL insert into my_db2_table";
   ```

   En el siguiente ejemplo, se cargan LOB de un archivo de datos denominado *my\$1table1\$1export.ixf* en una tabla denominada *my\$1db2\$1table*. En el ejemplo, se supone que el archivo de datos está en el bucket de Amazon S3 al que apunta el alias denominado *my\$1s3\$1alias*.

   ```
   db2 "call sysproc.admin_cmd('load from "db2remote://my_s3_alias//my_table1_export.ixf" of ixf
           lobs from "db2remote://my_s3_alias//" xml from "db2remote://my_s3_alias//"
           modified by lobsinfile implicitlyhiddeninclude identityoverride generatedoverride periodoverride transactionidoverride
           messages on server
           replace into "my_schema"."my_db2_table"
                                  nonrecoverable
           indexing mode incremental allow no access')"
   ```

   Repita este paso para cada archivo de datos del bucket de Amazon S3 que desee cargar en una tabla de la instancia de base de datos de RDS para Db2.

   Para obtener más información sobre el comando `LOAD`, consulte [LOAD command](https://www.ibm.com/docs/en/db2/11.5?topic=commands-load).

# Migración a Amazon RDS para Db2 con AWS Database Migration Service (AWS DMS)
<a name="db2-migration-amazon-dms"></a>

Puede usar AWS DMS para migraciones únicas y, a continuación, sincronizar desde Db2 en Linux, Unix (como AIX) y Windows a Amazon RDS para Db2. Para obtener más información, consulte [¿Qué es AWS Database Migration Service?](https://docs.aws.amazon.com/dms/latest/userguide/Welcome.html).

# Uso de herramientas nativas de Db2 para migrar datos de Db2 a Amazon RDS para Db2
<a name="db2-native-db2-tools"></a>

Puede emplear varias herramientas, utilidades y comandos nativos de Db2 para trasladar datos directamente de una base de datos de Db2 a una base de datos de Amazon RDS para Db2. Para utilizar estas herramientas nativas de Db2, debe poder conectar su equipo cliente a una instancia de base de datos de RDS para Db2. Para obtener más información, consulte [Conexión de una máquina cliente a una instancia de base de datos de Amazon RDS para Db2](db2-connecting-client-rds.md).

**nota**  
Otra forma de trasladar los datos consiste en guardarlos primero en un bucket de Amazon S3 y, a continuación, utilizar el comando `LOAD` para transferir esos datos a una tabla de base de datos de RDS para Db2. Este método proporciona el mejor rendimiento al migrar una gran cantidad de datos, gracias a la buena conectividad de red entre RDS para Db2 y S3. Para obtener más información, consulte [Migración de datos de Db2 mediante Amazon S3 a Amazon RDS para Db2](db2-migration-load-from-s3.md).


| Nombre de la herramienta | Caso de uso | Limitaciones | 
| --- | --- | --- | 
|  [db2look](db2-native-db2-tools-db2look.md)  |  Copia de metadatos desde una base de datos Db2 autoadministrada hasta una base de datos de Amazon RDS para Db2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/db2-native-db2-tools.html)  | 
|  [Comando de la IMPORT](db2-native-db2-tools-import.md)  |  Migración de tablas pequeñas y tablas con objetos grandes (LOB) de un equipo cliente a la instancia de base de datos RDS para Db2.  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/db2-native-db2-tools.html)  | 
|  [Utilidad INGEST](db2-native-db2-tools-ingest.md)   |  Transmite continuamente datos desde archivos y canalizaciones *sin* objetos grandes (LOB) desde el equipo cliente hasta la instancia de base de datos de RDS para Db2. Es compatible con las operaciones `INSERT` y `MERGE`.   |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/db2-native-db2-tools.html)  | 
|  [Comando de la INSERT](db2-native-db2-tools-insert.md)  |  Copia de datos en tablas pequeñas desde una base de datos Db2 autoadministrada hasta una base de datos de Amazon RDS para Db2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/db2-native-db2-tools.html)  | 
|  [Comando de la LOAD CLIENT](db2-native-db2-tools-load.md)  |  Migración de tablas pequeñas *sin *objetos grandes (LOB) de un equipo cliente a la instancia de base de datos RDS para Db2.  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/db2-native-db2-tools.html)  | 

# Conexión de una máquina cliente a una instancia de base de datos de Amazon RDS para Db2
<a name="db2-connecting-client-rds"></a>

Para utilizar cualquiera de las herramientas nativas de Db2 para mover datos desde una base de datos de Db2 hasta una base de datos de Amazon RDS para Db2, primero debe conectar la máquina cliente a una instancia de base de datos de RDS para Db2.

La máquina cliente puede ser cualquiera de las siguientes:
+ Una instancia de Amazon Elastic Compute Cloud (Amazon EC2) en Linux, Windows o macOS. Esta instancia debe estar en la misma nube privada virtual (VPC) que la instancia de base de datos de RDS para Db2, AWS Cloud9 o AWS CloudShell.
+ Una instancia Db2 autoadministrada en una instancia de Amazon EC2. Las instancias deben estar en la misma VPC.
+ Una instancia Db2 autoadministrada en una instancia de Amazon EC2. Las instancias pueden estar en diferentes VPC si ha habilitado el emparejamiento de VPC. Para obtener más información, consulte [Crear una conexión de emparejamiento de VPC](https://docs.aws.amazon.com/vpc/latest/peering/create-vpc-peering-connection.html) en la *Guía de emparejamiento de Amazon Virtual Private Cloud*.
+ Una máquina local que ejecute Linux, Windows o macOS en un entorno autoadministrado. Debe tener conectividad pública a RDS para Db2 o habilitar la conectividad VPN entre instancias de Db2 autoadministradas y AWS.

Para conectar su máquina cliente a su instancia de base de datos de RDS para Db2, inicie sesión en su máquina cliente con IBM Db2 Data Management Console. Para obtener más información, consulte [Creación de una instancia de base de datos de Amazon RDS](USER_CreateDBInstance.md) y [IBM Db2 Data Management Console](db2-connecting-with-ibm-data-management-console.md). 

Puede usar AWS Database Migration Service (AWS DMS) para ejecutar consultas en la base de datos, ejecutar un plan de ejecución de SQL y monitorizar la base de datos. Para obtener más información, consulte [¿Qué es el Database Migration Service de AWS?](https://docs.aws.amazon.com/dms/latest/userguide/Welcome.html) en la *Guía del usuario de AWS Database Migration Service*.

Tras conectar correctamente la máquina cliente a la instancia de base de datos de RDS para Db2, estará preparado para utilizar cualquier herramienta nativa de Db2 para copiar datos. Para obtener más información, consulte [Uso de herramientas nativas de Db2 para migrar datos de Db2 a Amazon RDS para Db2](db2-native-db2-tools.md).

# Copia de metadatos de bases de datos de Db2 a Amazon RDS para Db2 con db2look
<a name="db2-native-db2-tools-db2look"></a>

`db2look` es una herramienta nativa de Db2 que extrae archivos, objetos, autorizaciones, configuraciones, WLM y diseños de bases de datos del lenguaje de definición de datos (DDL). Puede utilizar `db2look` para copiar metadatos de bases de datos desde una base de datos Db2 autoadministrada a una base de datos de Amazon RDS para Db2. Para obtener más información, consulte [Mimicking databases using db2look](https://www.ibm.com/docs/en/db2/11.5?topic=tools-db2look) en la documentación de IBM Db2.

**Para copiar los metadatos de la base de datos**

1. Ejecute la herramienta `db2look` en su sistema Db2 autoadministrado para extraer el archivo DDL. En el ejemplo siguiente, sustituya *database\$1name* por el nombre de su base de datos Db2.

   ```
   db2look -d database_name -e -l -a -f -wlm -cor -createdb -printdbcfg -o db2look.sql
   ```

1. Si su máquina cliente tiene acceso a la base de datos de origen (Db2 autoadministrada) y a la instancia de base de datos de RDS para Db2, puede crear el archivo `db2look.sql` en la máquina cliente asociándolo directamente a la instancia remota. A continuación, catalogue la instancia de Db2 remota y autoadministrada.

   1. Catalogue el nodo. En el siguiente ejemplo, sustituya *dns\$1ip\$1address* y *port* por el nombre DNS o la dirección IP y el número de puerto de la base de datos Db2 autoadministrada.

      ```
      db2 catalog tcpip node srcnode REMOTE dns_ip_address server port
      ```

   1. Catalogue la base de datos. En el siguiente ejemplo, sustituya *source\$1database\$1name* y *source\$1database\$1alias* por el nombre de la base de datos Db2 autoadministrada y el alias que desee utilizar para esta base de datos.

      ```
      db2 catalog database source_database_name as source_database_alias at node srcnode \ 
          authentication server_encrypt
      ```

   1. Asocie a la base de datos de origen. En el siguiente ejemplo, sustituya *source\$1database\$1alias*, *user\$1id* y *user\$1password* por el alias que creó en el paso anterior y el ID de usuario y la contraseña de la base de datos Db2 autoadministrada.

      ```
      db2look -d source_database_alias -i user_id -w user_password -e -l -a -f -wlm \
          -cor -createdb -printdbcfg -o db2look.sql
      ```

1. Si no puede acceder a la base de datos Db2 autoadministrada de forma remota desde el equipo cliente, copie el archivo `db2look.sql` en el equipo cliente. A continuación, catalogue su instancia de base de datos de RDS para Db2. 

   1. Catalogue el nodo. En el siguiente ejemplo, sustituya *dns\$1ip\$1address* y *port* por el nombre DNS o la dirección IP y el número de puerto de la instancia de la base de datos de RDS para Db2.

      ```
      db2 catalog tcpip node remnode REMOTE dns_ip_address server port
      ```

   1. Catalogue la base de datos. En el siguiente ejemplo, sustituya *rds\$1database\$1name* y *rds\$1database\$1alias* por el nombre de la base de datos de RDS para Db2 y el alias que desee utilizar para esta base de datos.

      ```
      db2 catalog database rds_database_name as rds_database_alias at node remnode \ 
          authentication server_encrypt
      ```

   1. Catalogue la base de datos de administración que administra RDS para Db2. No puede utilizar esta base de datos para almacenar datos.

      ```
      db2 catalog database rdsadmin as rdsadmin at node remnode authentication server_encrypt
      ```

1. Cree grupos de búferes y espacios de tablas. El administrador no tiene privilegios para crear grupos de búferes ni espacios de tabla. Sin embargo, puede utilizar los procedimientos almacenados de Amazon RDS para crearlos.

   1. Busque los nombres y las definiciones de los grupos de búferes y los espacios de tabla en el archivo `db2look.sql`.

   1. Conéctese a Amazon RDS con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

      ```
      db2 connect to rdsadmin user master_username using master_password
      ```

   1. Cree un grupo de búferes mediante una llamada a `rdsadmin.create_bufferpool`. Para obtener más información, consulte [rdsadmin.create\$1bufferpool](db2-sp-managing-buffer-pools.md#db2-sp-create-buffer-pool).

      ```
      db2 "call rdsadmin.create_bufferpool(
          'database_name', 
          'buffer_pool_name', 
          buffer_pool_size, 
          'immediate', 
          'automatic', 
          page_size, 
          number_block_pages, 
          block_size)"
      ```

   1. Cree un espacio de tablas llamando a `rdsadmin.create_tablespace`. Para obtener más información, consulte [rdsadmin.create\$1tablespace](db2-sp-managing-tablespaces.md#db2-sp-create-tablespace).

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

   1. Repita los pasos c o d para cada grupo de búferes o espacio de tabla adicional que quiera agregar.

   1. Termine la conexión.

      ```
      db2 terminate
      ```

1. Cree tablas y objetos.

   1. Conéctese a su base de datos de RDS para Db2 con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *rds\$1database\$1name*, *master\$1username* y *master\$1password* por su propia información.

      ```
      db2 connect to rds_database_name user master_username using master_password
      ```

   1. Ejecute el archivo `db2look.sql`.

      ```
      db2 -tvf db2look.sql
      ```

   1. Termine la conexión.

      ```
      db2 terminate
      ```

# Importación de datos desde un equipo cliente a Amazon RDS para Db2 con el comando IMPORT
<a name="db2-native-db2-tools-import"></a>

Puede utilizar el comando `IMPORT` desde un equipo cliente para importar los datos al servidor de Amazon RDS for Db2. 

**importante**  
El método del comando `IMPORT` es útil para migrar tablas pequeñas y tablas que incluyan objetos grandes (LOB). El comando `IMPORT` es más lento que la utilidad `LOAD` debido a las operaciones de registro `INSERT` y `DELETE`. Si el ancho de banda de la red entre el equipo cliente y RDS para Db2 es limitado, le recomendamos que utilice un enfoque de migración diferente. Para obtener más información, consulte [Uso de herramientas nativas de Db2 para migrar datos de Db2 a Amazon RDS para Db2](db2-native-db2-tools.md).

**Para importar datos al servidor de RDS para Db2**

1. Inicie sesión en su equipo cliente con IBM Db2 Data Management Console. Para obtener más información, consulte [Conexión a la instancia de base de datos de Amazon RDS para Db2 con IBM Db2 Data Management Console](db2-connecting-with-ibm-data-management-console.md).

1. Catalogue la base de datos de RDS para Db2 en el equipo cliente.

   1. Catalogue el nodo. En el siguiente ejemplo, sustituya *dns\$1ip\$1address* y *port* por el nombre DNS o la dirección IP y el número de puerto de la base de datos Db2 autoadministrada.

      ```
      db2 catalog tcpip node srcnode REMOTE dns_ip_address server port
      ```

   1. Catalogue la base de datos. En el siguiente ejemplo, sustituya *source\$1database\$1name* y *source\$1database\$1alias* por el nombre de la base de datos Db2 autoadministrada y el alias que desee utilizar para esta base de datos.

      ```
      db2 catalog database source_database_name as source_database_alias at node srcnode \
          authentication server_encrypt
      ```

1. Asocie a la base de datos de origen. En el siguiente ejemplo, sustituya *source\$1database\$1alias*, *user\$1id* y *user\$1password* por el alias que creó en el paso anterior y el ID de usuario y la contraseña de la base de datos Db2 autoadministrada.

   ```
   db2look -d source_database_alias -i user_id -w user_password -e -l -a -f -wlm \
       -cor -createdb -printdbcfg -o db2look.sql
   ```

1. Genere el archivo de datos mediante el comando ` EXPORT` en su sistema Db2 autoadministrado. En el siguiente ejemplo, sustituya el *directory* por el directorio de la máquina cliente en el que se encuentra el archivo de datos. Sustituya *file\$1name* y *table\$1name* por el nombre del archivo de datos y el nombre de la tabla. 

   ```
   db2 "export to /directory/file_name.txt of del lobs to /directory/lobs/ \
       modified by coldel\| select * from table_name"
   ```

1. Conéctese a su base de datos de RDS para Db2 con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya **rds\$1database\$1alias**, *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 connect to rds_database_alias user master_username using master_password
   ```

1. Utilice el comando `IMPORT` para importar datos desde un archivo del equipo cliente a la base de datos remota de RDS para Db2. Para obtener más información, consulte [Comando IMPORT](https://www.ibm.com/docs/en/db2/11.5?topic=commands-import) en la documentación de IBM Db2. En el siguiente ejemplo, sustituya el *directory* y el *file\$1name* por el directorio del equipo cliente en el que se encuentra el archivo de datos y el nombre del archivo de datos. Sustituya *SCHEMA\$1NAME* y *TABLE\$1NAME* por los nombres de su esquema y su tabla. 

   ```
   db2 "IMPORT from /directory/file_name.tbl OF DEL LOBS FROM /directory/lobs/ \
       modified by coldel\| replace into SCHEMA_NAME.TABLE_NAME"
   ```

1. Termine la conexión.

   ```
   db2 terminate
   ```

# Importación de datos desde un equipo cliente a Amazon RDS para Db2 con el comando LOAD
<a name="db2-native-db2-tools-load"></a>

Puede utilizar el comando `LOAD CLIENT` para cargar datos de un archivo en una máquina cliente en el servidor de RDS para Db2. Como no existe conectividad SSH con el servidor de RDS para Db2, puede usar el comando `LOAD CLIENT` en su servidor Db2 autoadministrado o en su equipo cliente de Db2.

**importante**  
El método del comando `LOAD CLIENT` es útil para migrar tablas pequeñas. Si el ancho de banda de la red entre el cliente y RDS para Db2 es limitado, le recomendamos que utilice un enfoque de migración diferente. Para obtener más información, consulte [Uso de herramientas nativas de Db2 para migrar datos de Db2 a Amazon RDS para Db2](db2-native-db2-tools.md).  
Si el archivo de datos incluye referencias a nombres de archivos de objetos grandes, el comando `LOAD` no funcionará porque los objetos grandes (LOB) deben residir en el servidor de Db2. Si intenta cargar los LOB del equipo cliente al servidor de RDS para Db2, recibirá un error de tipo SQL3025N. En su lugar, utilice el [comando IMPORT](db2-native-db2-tools-import.md).

**Para cargar datos en el servidor de RDS para Db2**

1. Inicie sesión en su equipo cliente con IBM Db2 Data Management Console. Para obtener más información, consulte [Conexión a la instancia de base de datos de Amazon RDS para Db2 con IBM Db2 Data Management Console](db2-connecting-with-ibm-data-management-console.md).

1. Catalogue la base de datos de RDS para Db2 en el equipo cliente.

   1. Catalogue el nodo. En el siguiente ejemplo, sustituya *dns\$1ip\$1address* y *port* por el nombre DNS o la dirección IP y el número de puerto de la base de datos Db2 autoadministrada.

      ```
      db2 catalog tcpip node srcnode REMOTE dns_ip_address server port
      ```

   1. Catalogue la base de datos. En el siguiente ejemplo, sustituya *source\$1database\$1name* y *source\$1database\$1alias* por el nombre de la base de datos Db2 autoadministrada y el alias que desee utilizar para esta base de datos.

      ```
      db2 catalog database source_database_name as source_database_alias at node srcnode \
          authentication server_encrypt
      ```

1. Asocie a la base de datos de origen. En el siguiente ejemplo, sustituya *source\$1database\$1alias*, *user\$1id* y *user\$1password* por el alias que creó en el paso anterior y el ID de usuario y la contraseña de la base de datos Db2 autoadministrada. 

   ```
   db2look -d source_database_alias -i user_id -w user_password -e -l -a -f -wlm \
       -cor -createdb -printdbcfg -o db2look.sql
   ```

1. Genere el archivo de datos mediante el comando `EXPORT` en su sistema Db2 autoadministrado. En el siguiente ejemplo, sustituya el *directory* por el directorio de la máquina cliente en el que se encuentra el archivo de datos. Sustituya *file\$1name* y *TABLE\$1NAME* por el nombre del archivo de datos y el nombre de la tabla. 

   ```
   db2 "export to /directory/file_name.txt of del modified by coldel\| \
       select * from TPCH.TABLE_NAME"
   ```

1. Conéctese a su base de datos de RDS para Db2 con el nombre de usuario y la contraseña maestros de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya **rds\$1database\$1alias**, *master\$1username* y *master\$1password* por su propia información.

   ```
   db2 connect to rds_database_alias user master_username using master_password
   ```

1. Utilice el comando `LOAD` para cargar datos desde un archivo del equipo cliente a la base de datos remota de RDS para Db2. Para obtener más información, consulte [Comando LOAD](https://www.ibm.com/docs/en/db2/11.5?topic=commands-load) en la documentación de IBM Db2. En el siguiente ejemplo, sustituya el *directory* por el directorio de la máquina cliente en el que se encuentra el archivo de datos. Sustituya *file\$1name* y *TABLE\$1NAME* por el nombre del archivo de datos y el nombre de la tabla. 

   ```
   db2 "LOAD CLIENT from /directory/file_name.txt \
       modified by coldel\| replace into TPCH.TABLE_NAME \
       nonrecoverable without prompting"
   ```

1. Termine la conexión.

   ```
   db2 terminate
   ```

# Importación de datos desde Db2 a Amazon RDS para Db2 con el comando INSERT
<a name="db2-native-db2-tools-insert"></a>

Puede utilizar el comando `INSERT` desde un servidor Db2 autoadministrado para insertar los datos en una base de datos de Amazon RDS para Db2. Con este enfoque de migración, se utiliza un alias para la instancia de base de datos remota de RDS para Db2. Su base de datos Db2 autoadministrada (origen) debe poder conectarse a la base de datos de RDS para Db2 (destino).

**importante**  
El método del comando `INSERT` es útil para migrar tablas pequeñas. Si el ancho de banda de la red entre la base de datos de Db2 autoadministrada y la base de datos de RDS para Db2 es limitado, le recomendamos que utilice un enfoque de migración diferente. Para obtener más información, consulte [Uso de herramientas nativas de Db2 para migrar datos de Db2 a Amazon RDS para Db2](db2-native-db2-tools.md).

**Para copiar datos desde una base de datos Db2 autoadministrada hasta una base de datos de Amazon RDS para Db2**

1. Catalogue la instancia de base de datos de RDS para Db2 en la instancia de Db2 autoadministrada. 

   1. Catalogue el nodo. En el siguiente ejemplo, sustituya *dns\$1ip\$1address* y *port* por el nombre DNS o la dirección IP y el número de puerto de la base de datos Db2 autoadministrada.

      ```
      db2 catalog tcpip node remnode REMOTE dns_ip_address SERVER port
      ```

   1. Catalogue la base de datos. En el siguiente ejemplo, sustituya *rds\$1database\$1name* por el nombre de la base de datos de la instancia de base de datos de RDS para Db2.

      ```
      db2 catalog database rds_database_name as remdb at node remnode \
          authentication server_encrypt
      ```

1. Habilite la federación en la instancia de Db2 autoadministrada. En el siguiente ejemplo, sustituya *source\$1database\$1name* por el nombre de la base de datos de la instancia de Db2 autoadministrada.

   ```
   db2 update dbm cfg using FEDERATED YES source_database_name
   ```

1. Cree tablas en la instancia de base de datos de RDS para Db2.

   1. Catalogue el nodo. En el siguiente ejemplo, sustituya *dns\$1ip\$1address* y *port* por el nombre DNS o la dirección IP y el número de puerto de la base de datos Db2 autoadministrada.

      ```
      db2 catalog tcpip node srcnode REMOTE dns_ip_address server port
      ```

   1. Catalogue la base de datos. En el siguiente ejemplo, sustituya *source\$1database\$1name* y *source\$1database\$1alias* por el nombre de la base de datos Db2 autoadministrada y el alias que desee utilizar para esta base de datos.

      ```
      db2 catalog database source_database_name as source_database_alias at node srcnode \
          authentication server_encrypt
      ```

1. Asocie a la base de datos de origen. En el siguiente ejemplo, sustituya *source\$1database\$1alias*, *user\$1id* y *user\$1password* por el alias que creó en el paso anterior y el ID de usuario y la contraseña de la base de datos Db2 autoadministrada. 

   ```
   db2look -d source_database_alias -i user_id -w user_password -e -l -a -f -wlm \
       -cor -createdb -printdbcfg -o db2look.sql
   ```

1. Configure la federación y cree un alias para la tabla de bases de datos de RDS para Db2 en la instancia de Db2 autoadministrada.

   1. Conexión a la base de datos local. En el siguiente ejemplo, sustituya *source\$1database\$1name* por el nombre de la base de datos de su instancia de Db2 autoadministrada.

      ```
      db2 connect to source_database_name
      ```

   1.  Cree un encapsulador para acceder a los orígenes de datos de Db2.

      ```
      db2 create wrapper drda
      ```

   1. Defina un origen de datos en una base de datos federada. En el siguiente ejemplo, sustituya *admin* y *admin\$1password* por las credenciales de su instancia de Db2 autoadministrada. Sustituya *rds\$1database\$1name* por el nombre de la base de datos de la instancia de base de datos de RDS para Db2.

      ```
      db2 "create server rdsdb2 type DB2/LUW version '11.5.9.0' \
          wrapper drda authorization "admin" password "admin_password" \
          options( dbname 'rds_database_name', node 'remnode')"
      ```

   1. Asigne los usuarios en las dos bases de datos. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por las credenciales de su instancia de RDS para Db2 autoadministrada.

      ```
      db2 "create user mapping for user server rdsdb2 \
          options (REMOTE_AUTHID 'master_username', REMOTE_PASSWORD 'master_password')"
      ```

   1. Compruebe la conexión al servidor de RDS para Db2. 

      ```
      db2 set passthru rdsdb2
      ```

   1. Cree un alias para la tabla en la base de datos remota de RDS para Db2. En el siguiente ejemplo, sustituya *NICKNAME* y *TABLE\$1NAME* por un alias para la tabla y el nombre de la tabla.

      ```
      db2 create nickname REMOTE.NICKNAME for RDSDB2.TABLE_NAME.NICKNAME
      ```

1. Inserte los datos en la tabla de la base de datos remota de RDS para Db2. Utilice el apodo en una instrucción `select` de la tabla local de la instancia de Db2 autoadministrada. En el siguiente ejemplo, sustituya *NICKNAME* y *TABLE\$1NAME* por un alias para la tabla y el nombre de la tabla.

   ```
   db2 "INSERT into REMOTE.NICKNAME select * from RDS2DB2.TABLE_NAME.NICKNAME"
   ```

# Importación de datos desde Db2 a Amazon RDS para Db2 con la utilidad INGEST
<a name="db2-native-db2-tools-ingest"></a>

Puede utilizar la utilidad `INGEST` para transmitir datos de forma continua desde archivos y canalizaciones de un equipo cliente a una instancia de base de datos de Amazon RDS para Db2 de destino. La utilidad `INGEST` es compatible con las operaciones `INSERT` y `MERGE`. Para obtener más información, consulte [Ingest utility](https://www.ibm.com/docs/en/db2/11.1?topic=reference-ingest-utility) en la documentación de IBM Db2.

Como la utilidad `INGEST` admite alias, puede utilizarla para transferir datos de una base de datos de Db2 autoadministrada a una base de datos de RDS para Db2. Este enfoque funciona siempre que exista conectividad de red entre las dos bases de datos. 

**importante**  
La utilidad `INGEST` no admite objetos grandes (LOB). En su lugar, utilice el [comando `IMPORT`](db2-native-db2-tools-import.md). 

Para utilizar la característica `RESTARTABLE` de la utilidad `INGEST`, ejecute el siguiente comando en la base de datos de RDS para Db2.

```
db2 "call sysproc.sysinstallobjects(‘INGEST’,‘C’,NULL,NULL)"
```

# Federación de Amazon RDS para Db2
<a name="db2-federation"></a>

Puede usar su base de datos de Amazon RDS para Db2 como base de datos federada. Tras configurar la federación de RDS para Db2, podrá acceder a los datos de varias bases de datos de su base de datos de RDS para Db2 y consultarlos. La federación evita tener que migrar datos a su base de datos de RDS para Db2 o consolidar los datos en una única base de datos. 

Al utilizar la base de datos de RDS para Db2 como base de datos federada, puede seguir accediendo a todas las características de RDS para Db2 y aprovechar varios Servicios de AWS, al mismo tiempo que mantiene los datos en distintas bases de datos. Puede configurar tanto una federación homogénea, que conecta diferentes bases de datos del mismo tipo, como una federación heterogénea, que conecta diferentes bases de datos de diferentes tipos.

Primero debe conectar la base de datos de Db2 de RDS para Db2 a bases de datos remotas. A continuación, puede ejecutar consultas en todas las bases de datos conectadas. Por ejemplo, puede ejecutar una instrucción JOIN de SQL que combine las tablas de la base de datos de RDS para Db2 con las tablas de una base de datos remota de Db2 en z/OS. 

**Topics**
+ [Federación homogénea](#db2-federation-homogeneous)
+ [Federación heterogénea](#db2-federation-heterogeneous)

## Federación homogénea
<a name="db2-federation-homogeneous"></a>

Puede configurar una federación homogénea entre su base de datos de RDS para Db2 y la siguiente familia de productos de Db2:
+ Db2 para Linux, UNIX y Windows (LUW)
+ Db2 iSeries
+ Db2 para z/OS

La federación homogénea de RDS para Db2 no admite las siguientes acciones:
+ Ejecución de comandos `CATALOG` para configurar un directorio de nodos y una base de datos remota en una base de datos de host de RDS para Db2
+ Configuración del equilibrio de carga de trabajo (WLB) al federarse a Db2 en z/OS
+ Configuración del archivo de configuración del controlador del servidor de datos de IBM (`db2dsdriver.cfg`)

La federación homogénea de RDS para Db2 tiene los siguientes requisitos:
+ Debe crear el contenedor DRDA en el modo `UNFENCED`. Si no lo hace, la federación no funcionará en RDS para Db2.
+ Debe permitir que el tráfico entrante y saliente de su base de datos de host de RDS para Db2 llegue a sus bases de datos de host remotas. Para obtener más información, consulte [Proporcionar acceso a la instancia de base de datos en la VPC mediante la creación de un grupo de seguridad](CHAP_SettingUp.md#CHAP_SettingUp.SecurityGroup).

**Topics**
+ [Paso 1: creación de un contenedor de DRDA y un servidor federado](#db2-federation-homogeneous-create)
+ [Paso 2: creación de un mapeo de usuario](#db2-federation-homogeneous-map)
+ [Paso 3: comprobación de la conexión](#db2-federation-homogeneous-check)

### Paso 1: creación de un contenedor de DRDA y un servidor federado
<a name="db2-federation-homogeneous-create"></a>

Para una federación homogénea, cree un contenedor DRDA y un servidor federado. La conexión al host remoto utiliza `HOST`, `PORT` y `DBNAME`. 

Elija uno de los siguientes métodos según el tipo de base de datos de Db2 remota:
+ **Base de datos Db2 para Linux, UNIX y Windows (LUX)**: ejecute los siguientes comandos de SQL. En el siguiente ejemplo, sustituya *server\$1name* por el nombre del servidor que utilizará para la federación. Sustituya *db2\$1version* por la versión de la base de datos de Db2 remota. Sustituya *username* y *password* por las credenciales de la base de datos remota de Db2 a la que desee conectarse. Sustituya *db\$1name*, *dns\$1name* y *port* por los valores correspondientes para la base de datos de Db2 remota a la que desee conectarse.

  ```
  create wrapper drda options(DB2_FENCED 'N');
  create server server_name type DB2/LUW wrapper drda version 'db2_version' authorization "master_username" password "master_password" options (add DBNAME 'db_name',add HOST 'dns_name',add PORT 'port');
  ```

  **Ejemplo**

  ```
  create wrapper drda options(DB2_FENCED 'N');
  create server SERVER1 type DB2/LUW wrapper drda version '11.5' authorization "sysuser" password "******" options (add DBNAME 'TESTDB2',add HOST 'ip-123-45-67-899.us-west-1.compute.internal',add PORT '25010');
  ```
+ **Db2 iSeries**: ejecute los siguientes comandos de SQL. En el siguiente ejemplo, sustituya *wrapper\$1name* y *library\$1name* por un nombre para el contenedor DRDA y el [archivo de biblioteca del contenedor](https://www.ibm.com/docs/en/db2/11.5?topic=wrapper-db2-library-files). Sustituya *server\$1name* por el nombre del servidor que usará para la federación. Sustituya *db2\$1version* por la versión de la base de datos de Db2 remota. Sustituya *username* y *password* por las credenciales de la base de datos remota de Db2 a la que desee conectarse. Sustituya *dns\$1name*, *port* y *db\$1name* por los valores correspondientes para la base de datos de Db2 remota a la que desee conectarse.

  ```
  create wrapper wrapper_name library 'library name' options(DB2_FENCED 'N');
  create server server_name type db2/mvs version db2_version wrapper wrapper_name authorization "sername" password "password" options (HOST 'dns_name', PORT 'port', DBNAME 'db_name');
  ```

  **Ejemplo**

  ```
  create wrapper WRAPPER1 library 'libdb2drda.so' options(DB2_FENCED 'N');
  create server SERVER1 type db2/mvs version 11 wrapper WRAPPER1 authorization "sysuser" password "******" options (HOST 'test1.123.com', PORT '446', DBNAME 'STLEC1');
  ```
+ **Db2 para z/OS**: ejecute los siguientes comandos de SQL. En el siguiente ejemplo, sustituya *wrapper\$1name* y *library\$1name* por un nombre para el contenedor DRDA y el [archivo de biblioteca del contenedor](https://www.ibm.com/docs/en/db2/11.5?topic=wrapper-db2-library-files). Sustituya *server\$1name* por el nombre del servidor que usará para la federación. Sustituya *db2\$1version* por la versión de la base de datos de Db2 remota. Sustituya *username* y *password* por las credenciales de la base de datos remota de Db2 a la que desee conectarse. Sustituya *dns\$1name*, *port* y *db\$1name* por los valores correspondientes para la base de datos de Db2 remota a la que desee conectarse.

  ```
  create wrapper wrapper_name library 'library_name' options(DB2_FENCED 'N');
  create server server_name type db2/mvs version db2_version wrapper wrapper_name authorization "username" password "password" options (HOST 'dns_name', PORT 'port', DBNAME 'db_name');
  ```

  **Ejemplo**

  ```
  create wrapper WRAPPER1 library 'libdb2drda.so' OPTIONS(DB2_FENCED 'N');
  create server SERVER1 type db2/mvs version 11 wrapper WRAPPER1 authorization "sysuser" password "******" options (HOST 'test1.123.com', PORT '446', DBNAME 'STLEC1');
  ```

### Paso 2: creación de un mapeo de usuario
<a name="db2-federation-homogeneous-map"></a>

Cree un mapeo de usuario para asociar su servidor federado a su servidor de origen de datos ejecutando el siguiente comando de SQL. En el siguiente ejemplo, sustituya *server\$1name* por el nombre del servidor remoto en el que desee realizar las operaciones. Este es el servidor que creó en el [paso 1](#db2-federation-homogeneous-create). Sustituya *username* y *password* por sus credenciales para este servidor remoto.

```
create user mapping for user server server_name options (REMOTE_AUTHID 'username', REMOTE_PASSWORD 'password');
```

Para obtener más información, consulte [User mappings](https://www.ibm.com/docs/en/db2/11.5?topic=systems-user-mappings) en la documentación de IBM Db2.

### Paso 3: comprobación de la conexión
<a name="db2-federation-homogeneous-check"></a>

Compruebe la conexión para confirmar que la configuración de la federación se ha realizado correctamente. Abra una sesión para enviar comandos de SQL nativos a su origen de datos remoto mediante el comando SET PASSTHRU y, a continuación, cree una tabla en el servidor de datos remoto.

1. Abra y cierre una sesión para enviar SQL a un origen de datos. En el siguiente ejemplo, sustituya *server\$1name* por el nombre del servidor que creó para la federación en el paso 1.

   ```
   set passthru server_name;
   ```

1. Cree una nueva tabla. En el siguiente ejemplo, sustituya *column\$1name*, *data\$1type* y *value* por los elementos correspondientes de la tabla.

   ```
   create table table_name ( column_name data_type(value), column_name data_type(value);
   ```

    Para obtener más información, consulte [CREATE TABLE statement](https://www.ibm.com/docs/en/db2-event-store/2.0.0?topic=statements-create-table) en la documentación de IBM Db2.

1. Cree un índice, inserte los valores de las filas en la tabla y restablezca la conexión. Al restablecer la conexión, se pierde la conexión, pero se conservan los procesos de backend. En el siguiente ejemplo, sustituya *index\$1name*, *table\$1name*, *column\$1name* y *columnx\$1value* por su información. 

   ```
   create index index_name on table_name(column_name);
   insert into table_name values(column1_value,column2_value,column3_value);
   insert into table_name values(column1_value,column2_value,column3_value);
   set passthru reset;
   
   connect reset;
   ```

1. Conéctese a su base de datos de Db2 remota, cree un apodo para su servidor remoto y realice operaciones. Cuando haya terminado de acceder a los datos de la base de datos remota de Db2, restablezca y, a continuación, finalice la conexión. En el ejemplo siguiente, sustituya *database\$1name* por el nombre de su base de datos de Db2 remota. Sustituya *nickname* por un nombre. Sustituya *server\$1name* y *table\$1name* por el nombre del servidor remoto y la tabla de ese servidor en los que quiera realizar operaciones. Sustituya *username* por la información de su servidor remoto. Sustituya *sql\$1command* por la operación que se va a realizar en el servidor remoto.

   ```
   connect to database_name;
   create nickname nickname for server_name."username"."table_name";
   select sql_command from nickname;
   connect reset;
   terminate;
   ```

**Ejemplo**

El siguiente ejemplo crea una sesión de transferencia para permitir las operaciones en el servidor federado de `testdb10`. 

Después, crea la tabla `t1` con tres columnas con distintos tipos de datos. 

A continuación, el ejemplo crea el índice `i1_t1` en tres columnas de la tabla `t1`. Después, inserta dos filas con los valores de estas tres columnas y, a continuación, se desconecta.

Por último, el ejemplo se conecta a la base de datos remota de Db2 `testdb2` y se crea un apodo para la tabla ` t1` en el servidor federado `testdb10`. Crea el apodo con el nombre de usuario `TESTUSER` de ese origen de datos. Un comando de SQL genera todos los datos de la tabla `t1`. El ejemplo desconecta y finaliza la sesión.

```
set passthru testdbl0;

create table t1 ( c1 decimal(13,0), c2 char(200), c3 int);

create index i1_t1 on t1(c3);
insert into t1 values(1,'Test',1);
insert into t1 values(2,'Test 2',2);
connect reset;

connect to testdb2;
create nickname remote_t1 for testdbl0."TESTUSER"."T1";
select * from remote_t1;
connect reset;
terminate;
```

## Federación heterogénea
<a name="db2-federation-heterogeneous"></a>

Puede configurar una federación heterogénea entre la base de datos de RDS para Db2 y otros orígenes de datos, como Oracle y Microsoft SQL Server. Para obtener una lista completa de los orígenes de datos compatibles con Db2 LUW, consulte [Data Source Support Matrix of Federation Bundled in Db2 LUW V11.5](https://www.ibm.com/support/pages/data-source-support-matrix-federation-bundled-db2-luw-v115) el sitio de soporte de IBM.

La federación heterogénea de RDS para Db2 no admite los siguientes elementos:
+ Contenedores nativos para los demás orígenes de datos
+ Contenedores JDBC para los demás orígenes de datos
+ Federación a orígenes de datos de Sybase, Informix y Teradata, porque estos orígenes de datos requieren la instalación del software cliente en RDS para Db2

La federación heterogénea de RDS para Db2 tiene los siguientes requisitos:
+ RDS para Db2 solo admite el método de contenedor de ODBC.
+ Si crea una definición explícita de un contenedor, debe establecer la opción `DB2_FENCED` en `'N'`. Para obtener una lista de las opciones de contenedor válidas para ODBC, consulte [ODBC options](https://www.ibm.com/docs/en/db2/11.5?topic=options-odbc) en la documentación de IBM Db2.
+ Debe permitir que el tráfico entrante y saliente de su base de datos de host de RDS para Db2 llegue a su base de datos de host remota. Para obtener más información, consulte [Proporcionar acceso a la instancia de base de datos en la VPC mediante la creación de un grupo de seguridad](CHAP_SettingUp.md#CHAP_SettingUp.SecurityGroup).

Para obtener información sobre la federación a Oracle, consulte [How to query Oracle by using Db2 Federation and the ODBC driver?](https://www.ibm.com/support/pages/node/6431133) en el sitio de soporte de IBM.

Para obtener información sobre los orígenes de datos compatibles con la federación, consulte [Data Source Support Matrix of Federation Bundled in Db2 LUW V11.5](https://www.ibm.com/support/pages/node/957245) el sitio de soporte de IBM.

**Topics**
+ [Paso 1: creación de un contenedor de ODBC](#db2-federation-heteogenous-define-wrapper)
+ [Paso 2: creación de un servidor federado](#db2-federation-heterogeneous-create)
+ [Paso 3: creación de un mapeo de usuario](#db2-federation-heterogeneous-map)
+ [Paso 4: comprobación de la conexión](#db2-federation-heterogeneous-check)

### Paso 1: creación de un contenedor de ODBC
<a name="db2-federation-heteogenous-define-wrapper"></a>

Cree un contenedor ejecutando el siguiente comando:

```
db2 "create wrapper odbc options( module '/home/rdsdb/sqllib/federation/odbc/lib/libodbc.so')"
```

### Paso 2: creación de un servidor federado
<a name="db2-federation-heterogeneous-create"></a>

Cree un servidor federado ejecutando el siguiente comando. En el siguiente ejemplo, sustituya *server\$1name* por el nombre del servidor que utilizará para la federación. Sustituya *wrapper\$1type* por el contenedor apropiado. Sustituya *db\$1version* por la versión de la base de datos remota. Sustituya *dns\$1name*, *port* y *db\$1name* por los valores correspondientes para la base de datos remota a la que desee conectarse. 

```
db2 "create server server_name type wrapper_type version db_version options (HOST 'dns_name', PORT 'port', SERVICE_NAME 'service_name')“
```

Para obtener información sobre los tipos de contenedores, consulte [Data Source Support Matrix of Federation Bundled in Db2 LUW V11.5](https://www.ibm.com/support/pages/node/957245) el sitio de soporte de IBM.

**Ejemplo**

El siguiente ejemplo crea un servidor federado para una base de datos de Oracle remota.

```
db2 "create server server1 type oracle_odbc version 12.1 options (HOST 'test1.amazon.com', PORT '1521', SERVICE_NAME 'pdborcl.amazon.com')“
```

### Paso 3: creación de un mapeo de usuario
<a name="db2-federation-heterogeneous-map"></a>

Cree un mapeo de usuario para asociar su servidor federado a su servidor de origen de datos ejecutando el siguiente comando de SQL. En el siguiente ejemplo, sustituya *server\$1name* por el nombre del servidor remoto en el que desee realizar las operaciones. Este es el servidor que creó en el [paso 2](#db2-federation-heterogeneous-create). Sustituya *username* y *password* por sus credenciales para este servidor remoto.

```
create user mapping for user server server_name options (REMOTE_AUTHID 'username', REMOTE_PASSWORD 'password');
```

Para obtener más información, consulte [User mappings](https://www.ibm.com/docs/en/db2/11.5?topic=systems-user-mappings) en la documentación de IBM Db2.

### Paso 4: comprobación de la conexión
<a name="db2-federation-heterogeneous-check"></a>

Compruebe la conexión para confirmar que la configuración de la federación se ha realizado correctamente. Abra una sesión para enviar comandos de SQL nativos a su origen de datos remoto mediante el comando SET PASSTHRU y, a continuación, cree una tabla en el servidor de datos remoto.

1. Abra y cierre una sesión para enviar SQL a un origen de datos. En el siguiente ejemplo, sustituya *server\$1name* por el nombre del servidor que creó para la federación en el [paso 2](#db2-federation-heterogeneous-create).

   ```
   set passthru server_name;
   ```

1. Cree una nueva tabla. En el siguiente ejemplo, sustituya *column\$1name*, *data\$1type* y *value* por los elementos correspondientes de la tabla.

   ```
   create table table_name ( column_name data_type(value), column_name data_type(value);
   ```

    Para obtener más información, consulte [CREATE TABLE statement](https://www.ibm.com/docs/en/db2-event-store/2.0.0?topic=statements-create-table) en la documentación de IBM Db2.

1. Cree un índice, inserte los valores de las filas en la tabla y restablezca la conexión. Al restablecer la conexión, se pierde la conexión, pero se conservan los procesos de backend. En el siguiente ejemplo, sustituya *index\$1name*, *table\$1name*, *column\$1name* y *columnx\$1value* por su información. 

   ```
   create index index_name on table_name(column_name);
   insert into table_name values(column1_value,column2_value,column3_value);
   insert into table_name values(column1_value,column2_value,column3_value);
   set passthru reset;
   
   connect reset;
   ```

1. Conéctese a su base de datos de Db2 remota, cree un apodo para su servidor remoto y realice operaciones. Cuando haya terminado de acceder a los datos de la base de datos remota de Db2, restablezca y, a continuación, finalice la conexión. En el ejemplo siguiente, sustituya *database\$1name* por el nombre de su base de datos de Db2 remota. Sustituya *nickname* por un nombre. Sustituya *server\$1name* y *table\$1name* por el nombre del servidor remoto y la tabla de ese servidor en los que quiera realizar operaciones. Sustituya *username* por la información de su servidor remoto. Sustituya *sql\$1command* por la operación que se va a realizar en el servidor remoto.

   ```
   connect to database_name;
   create nickname nickname for server_name."username"."table_name";
   select sql_command from nickname;
   connect reset;
   terminate;
   ```

**Ejemplo**

El siguiente ejemplo crea una sesión de transferencia para permitir las operaciones en el servidor federado de `testdb10`. 

Después, crea la tabla `t1` con tres columnas con distintos tipos de datos. 

A continuación, el ejemplo crea el índice `i1_t1` en tres columnas de la tabla `t1`. Después, inserta dos filas con los valores de estas tres columnas y, a continuación, se desconecta.

Por último, el ejemplo se conecta a la base de datos remota de Db2 `testdb2` y se crea un apodo para la tabla ` t1` en el servidor federado `testdb10`. Crea el apodo con el nombre de usuario `TESTUSER` de ese origen de datos. Un comando de SQL genera todos los datos de la tabla `t1`. El ejemplo desconecta y finaliza la sesión.

```
set passthru testdbl0;

create table t1 ( c1 decimal(13,0), c2 char(200), c3 int);

create index i1_t1 on t1(c3);
insert into t1 values(1,'Test',1);
insert into t1 values(2,'Test 2',2);
connect reset;

connect to testdb2;
create nickname remote_t1 for testdbl0."TESTUSER"."T1";
select * from remote_t1;
connect reset;
terminate;
```

# Trabajo con las réplicas de Amazon RDS para Db2
<a name="db2-replication"></a>

RDS para Db2 admite la creación de bases de datos de réplicas para proporcionar capacidades de lectura, escalado y recuperación ante desastres. Puede crear réplicas de dos modos: réplicas de solo lectura para reducir las cargas de trabajo de lectura y réplicas en espera para la recuperación ante desastres entre regiones. RDS para Db2 utiliza la recuperación ante desastres de alta disponibilidad (HADR) de IBM Db2 para la replicación. Para obtener más información, consulte [High availability disaster recovery (HADR)](https://www.ibm.com/docs/en/db2/11.5?topic=server-high-availability-disaster-recovery-hadr) en la documentación de IBM Db2.

Una base de datos de *réplica de Db2* es una copia física de la base de datos principal. Una réplica de Db2 en modo de solo lectura se llama *réplica de lectura*. Una réplica de Db2 en modo de espera se denomina *réplica en espera*. Db2 no permite escrituras en una réplica, pero puede promocionar una réplica para que sea de escritura. La réplica promocionada tiene los datos replicados hasta el momento en que se realizó la solicitud para promocionarla. Para obtener más información, consulte [Promoción de una réplica de lectura para convertirla en una instancia de base de datos independiente](USER_ReadRepl.Promote.md).

Para obtener un resumen de las características y los comportamientos de las réplicas de RDS para Db2, consulte [Diferencias entre réplicas de lectura para motores de base de datos](USER_ReadRepl.Overview.Differences.md).

## Réplicas de solo lectura y de espera
<a name="db2-read-replicas.overview.modes"></a>

Al crear o modificar una réplica de Db2, puede colocarla en cualquiera de los modos siguientes:

**Solo lectura**  
Esta es la opción predeterminada. HADR transmite y aplica los cambios de la base de datos de origen a todas las bases de datos de réplica de lectura. Para las réplicas de solo lectura, la variable de entorno de Db2 `DB2_HADR_ROS` se establece en `ON`. El nivel de aislamiento de las consultas de lectura en la base de datos de réplica es `Uncommitted Read`. Para obtener más información, consulte el [nivel de aislamiento de la base de datos en espera activa](https://www.ibm.com/docs/en/db2/11.5?topic=standby-isolation-level-active-database) en la documentación de IBM Db2.  
Para obtener información general acerca de las réplicas de lectura que se aplican a todos los motores de base de datos, consulte [Trabajo con réplicas de lectura de instancias de base de datos](USER_ReadRepl.md). Para obtener más información sobre HADR de Db2, consulte [Recuperación ante desastres de alta disponibilidad (HADR)](https://www.ibm.com/docs/en/db2/11.5?topic=server-high-availability-disaster-recovery-hadr) en la documentación de IBM Db2.

 **En espera**  
Para las réplicas en espera, la variable de entorno `DB2_HADR_ROS` de Db2 se establece en `OFF` para que las bases de datos de las réplicas no acepten conexiones de usuarios. El uso principal de las réplicas en espera es la recuperación ante desastres entre regiones.  
Una réplica en espera no puede servir una carga de trabajo de solo lectura. La réplica en espera no tiene registros de archivo.

Puede crear hasta tres réplicas a partir de una instancia de base de datos de origen. Puede crear una combinación de réplicas de base de datos de solo lectura y en espera para la misma instancia de base de datos de origen. Tras crear una réplica, puede cambiar el modo de réplica. Para obtener más información, consulte [Modificación del modo de réplica de RDS para Db2](db2-replicas-changing-replica-mode.md). 

Antes de crear las réplicas, asegúrese de que cumple todos los requisitos. Para obtener más información, consulte [Requisitos y consideraciones sobre réplicas de RDS para Db2](db2-read-replicas.limitations.md).

## Activaciones de base de datos
<a name="db2-read-replicas.overview.database-activations"></a>

HADR de Db2 se configura en la base de datos. Después de crear réplicas, HADR se establece para todas las bases de datos Db2, incluida `rdsadmin`, que RDS administra de forma completa. Antes de crear réplicas de Db2, debe activar explícitamente todas las bases de datos. De lo contrario, no se crearán las réplicas y Amazon RDS emitirá un evento. Después de que una instancia de base de datos tenga una o más réplicas, no puede activar ni desactivar ninguna base de datos en la instancia de base de datos mediante los procedimientos almacenados `rdsadmin.activate_database` o `rdsadmin.deactivate_database`. Para obtener más información, consulte [Procedimientos almacenados de bases de datos de RDS para Db2](db2-sp-managing-databases.md).

## Configuraciones de HADR
<a name="db2-read-replicas.overview.hadr-configurations"></a>

Puede ver todas las configuraciones de HADR para una base de datos si se conecta a ella y ejecuta `db2 get db cfg`. 

## Retención de registros de archivo
<a name="db2-read-replicas.overview.log-retention"></a>

Amazon RDS purga los registros de una instancia de base de datos principal después de que se cumplan las siguientes condiciones:
+ Los registros tienen al menos dos horas de antigüedad.
+ Ha transcurrido la configuración de horas de retención de registros de archivo.
+ Los registros de archivo se han replicado correctamente en todas las instancias de base de datos de réplica. Esta condición se aplica tanto a instancias de base de datos en la misma Región de AWS como a instancias de base de datos entre regiones. 

Para obtener información acerca de cómo configurar las horas de retención del registro de archivo, consulte [rdsadmin.set\$1archive\$1log\$1retention](db2-sp-managing-databases.md#db2-sp-set-archive-log-retention).

Amazon RDS comprueba y limpia cada base de datos individualmente. Si una base de datos pierde la conexión HADR o si la información sobre la conexión no está disponible, Amazon RDS omite la base de datos y no purga los registros de archivo.

## Interrupciones durante la replicación de Db2
<a name="db2-read-replicas.overview.outages"></a>

Cuando crea una réplica, Amazon RDS toma una instantánea de base de datos de la instancia de base de datos de origen y comienza la replicación. Cuando comienza la operación de instantánea de base de datos, la instancia de base de datos de origen experimenta una suspensión de E/S muy breve. La suspensión de E/S suele durar un segundo. No obstante, si la instancia de base de datos de origen es una implementación multi-AZ, la instancia de base de datos de origen no experimenta ninguna suspensión de E/S. Esto se debe a que, con las implementaciones multi-AZ, la instantánea se toma de la instancia de base de datos secundaria.

La instantánea de base de datos se convierte en la réplica de Db2. Amazon RDS establece los parámetros y permisos necesarios para la base de datos de origen y la réplica sin interrumpir el servicio. Del mismo modo, si elimina una réplica, no se produce ninguna interrupción.

# Requisitos y consideraciones sobre réplicas de RDS para Db2
<a name="db2-read-replicas.limitations"></a>

Los requisitos de réplicas de Db2 se dividen en varias categorías: licencias y control de versiones, consideraciones de copia de seguridad y restauración, comportamiento de replicación y consideraciones operativas generales. Antes de crear una réplica de Db2, familiarícese con los siguientes requisitos y consideraciones.

## Requisitos de versión y licencia para réplicas de RDS para Db2
<a name="db2-read-replicas.limitations.versions-and-licenses"></a>

Antes de crear una réplica de RDS para Db2, consulte la siguiente información sobre versiones y modelos de licencias:
+ **Versiones admitidas**: todas las versiones 11.5 de Db2 admiten instancias de base de datos de réplicas. 

  Las instancias de base de datos de origen y réplicas deben utilizar la misma versión principal. Las réplicas de Db2 admiten actualizaciones de versiones menores pero no de versiones principales. Para obtener información sobre la actualización de instancias de base de datos, consulte [Actualización de una versión del motor de una instancia de base de datos ](USER_UpgradeDBInstance.Upgrading.md).
**nota**  
Al actualizar una instancia de base de datos de origen, todas las réplicas se actualizan automáticamente para mantener la compatibilidad de las versiones.
+ **Modos de réplicas y modelos de licencias válidos**: tanto la edición avanzada (AE) de Db2 como la estándar (SE) pueden crear réplicas en modo de solo lectura o en espera para el modelo traiga su propia licencia (BYOL) y la licencia Db2 a través del modelo de AWS Marketplace.
+ **Grupo de parámetros personalizado**: debe especificar un grupo de parámetros personalizado para la réplica. 

  Para las réplicas que utilizan el modelo BYOL, este grupo de parámetros personalizado debe incluir IBM Site ID e IBM Customer ID. Para obtener más información, consulte [ID de IBM para traiga su propia licencia (BYOL) para Db2](db2-licensing.md#db2-prereqs-ibm-info). Puede especificar este grupo de parámetros personalizado para la réplica mediante la Consola de administración de AWS, la AWS CLI o la API de RDS. 
+ El **número de vCPU** varía según el modo de réplica y el modelo de licencia:
  + Las **réplicas en espera** siempre utilizan dos vCPU, independientemente del tamaño de la instancia de base de datos.
    + **Modelo BYOL**: las configuraciones de AWS License Manager muestran que las instancias de base de datos de RDS para Db2 utilizan dos vCPU.
    + **Licencia de Db2 a través del modelo de AWS Marketplace**: las facturas reflejan los costos de licencia para dos vCPU.
  + Las **réplicas de solo lectura** utilizan el mismo número de vCPU que el tamaño de la instancia de base de datos.
    + **Modelo BYOL**: las configuraciones de AWS License Manager muestran que las instancias de base de datos de RDS para Db2 utilizan la misma cantidad de vCPU que coinciden con el tamaño de la instancia de base de datos.
    + **Licencia de Db2 a través del modelo de AWS Marketplace**: las facturas reflejan los costos de licencia para la misma cantidad de vCPU que coinciden con el tamaño de la instancia de base de datos.

## Consideraciones sobre la copia de seguridad y la restauración para réplicas de RDS para Db2
<a name="db2-read-replicas.limitations.backups"></a>

Las copias de seguridad de réplicas tienen un comportamiento diferente al de las copias de seguridad de bases de datos principales. Tenga en cuenta los siguientes requisitos de copia de seguridad y restauración:
+ Para crear instantáneas de réplicas de RDS para Db2 o activar copias de seguridad automáticas, asegúrese de configurar el período de retención de copias de seguridad manualmente. Las copias de seguridad automáticas no están activadas de forma predeterminada.
+ Cuando se restaura una copia de seguridad de réplicas, esta se restaura a la hora de la base de datos, no a la hora en que se realizó la copia de seguridad. El tiempo de base de datos se refiere a la última hora de la transacción aplicada de los datos de la copia de seguridad. La diferencia es significativa, porque una réplica puede tener un retardo de minutos u horas con respecto a la base de datos principal. Cuando hay varias bases de datos, RDS para Db2 utiliza la hora más antigua de la base de datos.

  Para averiguar la diferencia, ejecute el comando [describe-db-snapshots](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-snapshots.html) de AWS CLI o llame a la operación [DescribeDBSnapshots](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBSnapshots.html) de la API de RDS. Compare el valor `SnapshotDatabaseTime` con el valor `OriginalSnapshotCreateTime`. El valor `SnapshotDatabaseTime` es la hora de la base de datos de la copia de seguridad de la réplica. El valor `OriginalSnapshotCreateTime` es la última transacción aplicada en la base de datos principal.

Para obtener más información acerca de las copias de seguridad y la restauración de copias de seguridad, consulte [Trabajo con copias de seguridad de réplicas de RDS para Db2](db2-read-replicas.backups.md).

## Consideraciones sobre la replicación para réplicas de RDS para Db2
<a name="db2-read-replicas.limitations.replication"></a>

Las réplicas de Db2 utilizan la tecnología de HADR con limitaciones y comportamientos específicos. Revise las siguientes consideraciones de replicación:
+ La replicación utiliza HADR de Db2 para todas las bases de datos de la instancia de base de datos de RDS para Db2.
+ La replicación no admite el comando `LOAD`. Si ejecuta el comando `LOAD` desde la instancia de base de datos de origen, recibirá datos incoherentes.
+ RDS para Db2 no replica los siguientes elementos: 
  + Acceso al almacenamiento. Tenga en cuenta los datos, como las tablas externas, que dependen del acceso al almacenamiento.
  + LOB no en línea que no se registran.
  + Binarios de procedimientos almacenados externos (en C o Java).
+ Para las réplicas en espera, RDS para Db2 replica los siguientes elementos: 
  + Usuarios locales, excepto los usuarios maestros
  + Parámetros de configuración de base de datos
+ Para las réplicas de solo lectura, RDS para Db2 replica los siguientes elementos:
  + Usuarios locales, excepto los usuarios maestros
  + Asignación de grupos de SID

## Otros aspectos para las réplicas de RDS para Db2
<a name="db2-read-replicas.limitations.miscellaneous"></a>

Se aplican consideraciones operativas adicionales a las réplicas de Db2. Revise los siguientes elementos:
+ RDS para Db2 replica las configuraciones de base de datos en las réplicas. Cuando RDS para Db2 promociona una réplica, desactiva y activa cada base de datos.
+ RDS para Db2 replica los usuarios locales, pero no el usuario maestro y las asignaciones de grupos de SID en las réplicas. Puede modificar el usuario maestro en la réplica. Para obtener más información, consulte [Modificación de una instancia de base de datos de Amazon RDS](Overview.DBInstance.Modifying.md).
+ Todas las bases de datos deben encontrarse en estado activo. Para obtener información sobre cómo activar bases de datos, consulte [Procedimientos almacenados de bases de datos de RDS para Db2](db2-sp-managing-databases.md).
+ Todos los procedimientos almacenados para crear, eliminar, restaurar o hacer avanzar bases de datos deben completarse antes de crear una réplica. Para obtener información sobre estos procedimientos almacenados, consulte [Procedimientos almacenados de bases de datos de RDS para Db2](db2-sp-managing-databases.md).
+ Cuando se crea la réplica, Amazon RDS establece el parámetro de base de datos `blocknonlogged` para todas las bases de datos de la instancia de base de datos de origen en `YES`. Cuando la réplica de origen se convierte en una instancia independiente de nuevo, Amazon RDS vuelve a establecer el valor en `NO`. Para obtener más información, consulte [blocknonlogged - Block creation of tables that allow non-logged activity configuration parameter](https://www.ibm.com/docs/en/db2/11.1?topic=dcp-blocknonlogged-block-creation-tables-that-allow-non-logged-activity) en la documentación de IBM Db2.
+ Cuando se crea la réplica, Amazon RDS establece el parámetro de base de datos `logindexbuild` para todas las bases de datos de la instancia de base de datos de origen en `YES`. Cuando la réplica de origen se convierte en una instancia independiente de nuevo, Amazon RDS vuelve a establecer el valor en `NO`. Para obtener más información, consulte [logindexbuild - Log index pages created configuration parameter](https://www.ibm.com/docs/en/db2/11.1?topic=parameters-logindexbuild-log-index-pages-created) en la documentación de IBM Db2.

# Preparación para crear una réplica de RDS para Db2
<a name="db2-read-replicas.Configuration"></a>

Antes de crear una réplica de RDS para Db2, debe completar las tareas siguientes para una replicación correcta. Estas tareas ayudan a evitar problemas comunes y a garantizar un rendimiento óptimo.

## Tarea 1: habilitación de copias de seguridad automáticas
<a name="db2-read-replicas.configuration.autobackups"></a>

Para que una instancia de base de datos pueda servir como instancia de base de datos de origen, debe habilitar las copias de seguridad automáticas en la instancia de base de datos de origen. Es un requisito previo para todas las operaciones de creación de réplicas. Para obtener información sobre cómo realizar este procedimiento, consulte [Habilitar las copias de seguridad automatizadas](USER_WorkingWithAutomatedBackups.Enabling.md).

Para obtener información sobre las copias de seguridad específicas de las réplicas de Db2, consulte [Trabajo con copias de seguridad de réplicas de RDS para Db2](db2-read-replicas.backups.md).

## Tarea 2: planificación de los recursos informáticos y de almacenamiento
<a name="db2-read-replicas.configuration.planning-resources"></a>

Asegúrese de que la instancia de base de datos de origen y sus réplicas tengan el tamaño adecuado, en términos de informática y almacenamiento, para adaptarse a su carga operativa. Si una réplica llega a su capacidad en materia de recursos de cómputo, de red o de almacenamiento, dejará de recibir o aplicar los cambios desde su origen. Para obtener información sobre la supervisión del rendimiento de las réplicas y la utilización de los recursos, consulte [Monitoreo de la replicación de lectura](USER_ReadRepl.Monitoring.md). 

RDS para Db2 no interviene para mitigar el retardo elevado de réplicas entre una instancia de base de datos de origen y las réplicas. Si experimenta un retraso de réplica elevado, consulte [Supervisión del retardo de replicación de Db2](db2-troubleshooting-replicas.md#db2-troubleshooting-replicas-lag) para la guía de solución de problemas. 

Puede modificar los recursos de CPU y almacenamiento de una réplica independientemente de su origen y otras réplicas. Para obtener más información, consulte [Modificación de una instancia de base de datos de Amazon RDS](Overview.DBInstance.Modifying.md).

## Tarea 3: preparación de bases de datos
<a name="db2-read-replicas.configuration.activate-databases"></a>

Antes de crear una réplica, confirme que las bases de datos estén listas en función de los siguientes puntos:
+ La instancia de base de datos contiene todas las bases de datos que desee que estén presentes en la instancia de base de datos. Después de crear la réplica, no puede crear, eliminar ni restaurar de forma nativa una base de datos en la instancia de base de datos. No se llamará a los procedimientos almacenados [rdsadmin.create\$1database](db2-sp-managing-databases.md#db2-sp-create-database), [rdsadmin.drop\$1database](db2-sp-managing-databases.md#db2-sp-drop-database) o [rdsadmin.restore\$1database](db2-sp-managing-databases.md#db2-sp-restore-database).
+ Todas las bases de datos de la instancia de base de datos se encuentran en estado activo. Si alguna base de datos está en estado inactivo, se producirá un error en la creación de la réplica. Para obtener información sobre cómo activar bases de datos, consulte [Procedimientos almacenados de bases de datos de RDS para Db2](db2-sp-managing-databases.md).

## Siguientes pasos
<a name="db2-read-replicas-configuration-next-steps"></a>

Tras completar todas las tareas de preparación, estará listo para crear una réplica de Db2.
+ Para crear una réplica de solo lectura, consulte [Creación de una réplica de lectura](USER_ReadRepl.Create.md).
+ Para crear una réplica en espera, consulte [Creación de una réplica de Db2 en espera](db2-read-replicas.creating-in-standby-mode.md).

# Creación de una réplica de RDS para Db2 en modo de espera
<a name="db2-read-replicas.creating-in-standby-mode"></a>

De forma predeterminada, las réplicas de Db2 se crean en modo de solo lectura. Puede crear una réplica en modo de espera para fines de recuperación ante desastres. Las réplicas en espera no aceptan conexiones de usuario, pero ofrecen capacidades de conmutación por error más rápidas para situaciones entre regiones.

Antes de crear una réplica en espera, asegúrese de que ha completado las tareas de preparación. Para obtener más información, consulte [Preparación para crear una réplica de RDS para Db2](db2-read-replicas.Configuration.md). Después de crear una réplica en espera, puede cambiar el modo de réplica. Para obtener más información, consulte [Modificación del modo de réplica de RDS para Db2](db2-replicas-changing-replica-mode.md).

Puede crear una réplica en espera mediante la Consola de administración de AWS, la AWS CLI o la API de RDS. Para obtener información sobre cómo crear una réplica de solo lectura, consulte [Creación de una réplica de lectura](USER_ReadRepl.Create.md).

## Consola
<a name="db2-read-replicas.creating-in-standby-mode.console"></a>

**Creación de una réplica en espera a partir de una instancia de base de datos de RDS para Db2 de origen**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon RDS en [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. En el panel de navegación, elija **Databases** (Bases de datos).

1. Elija la instancia de base de datos RDS para Db2 que desea utilizar como origen de una réplica en espera.

1. En **Actions (Acciones)**, elija **Create read replica (Crear réplica de lectura)**. 

1. En **Modo de réplica**, elija **En espera**.

1. Elija los ajustes que desee usar. En **Identificador de instancias de bases de datos**, escriba un nombre para la réplica de lectura. Ajuste otros valores como considere necesario.

1. En **Regiones**, elija la Región de AWS donde se iniciará la réplica en espera. 

1. Elija el tamaño de la instancia y el tipo de almacenamiento. Recomendamos que use la misma clase de instancia de base de datos y el mismo tipo de almacenamiento que la instancia de base de datos de origen para la réplica en espera.

1. En **Implementación multi-AZ**, elija **Crear una instancia en espera** para crear una réplica en espera en otra zona de disponibilidad para admitir la conmutación por error de la réplica en espera.

1. Elija los demás ajustes que desee usar.

1. Elija **Create replica (Crear réplica)**.

En la página **Bases de datos**, la réplica en espera tiene el rol **Réplica**.

## AWS CLI
<a name="db2-read-replicas.creating-in-standby-mode.cli"></a>

Para crear una réplica de Db2 en modo de espera, use el comando de la AWS CLI [create-db-instance-read-replica](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance-read-replica.html) con `--replica-mode` establecido en `mounted`.

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

```
aws rds create-db-instance-read-replica \
    --db-instance-identifier my_standby_replica \
    --source-db-instance-identifier my_db_instance \
    --replica-mode mounted
```
Para Windows:  

```
aws rds create-db-instance-read-replica ^
    --db-instance-identifier my_standby_replica ^
    --source-db-instance-identifier my_db_instance ^
    --replica-mode mounted
```

## API de RDS
<a name="db2-read-replicas.creating-in-standby-mode.api"></a>

Para crear una réplica de Db2 en modo de espera, especifique `ReplicaMode=mounted` en la operación [CreateDBInstanceReadReplica](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstanceReadReplica.html) de la API de RDS.

# Modificación del modo de réplica de RDS para Db2
<a name="db2-replicas-changing-replica-mode"></a>

Puede cambiar el modo de réplica de una réplica de Db2 existente entre los modos de solo lectura y en espera. Esta flexibilidad le permite adaptar la configuración de la réplica en función de los requisitos cambiantes de las cargas de trabajo de lectura o las necesidades de recuperación ante desastres. 

Es posible que desee cambiar los modos de réplica en las siguientes situaciones:
+ **De solo lectura a en espera**: cuando ya no necesita la capacidad de lectura pero desea mantener las capacidades de recuperación ante desastres
+ **De en espera a solo lectura**: cuando necesita agregar capacidad de lectura para cargas de trabajo de informes o análisis

Antes de cambiar los modos de réplica, asegúrese de que se cumplan las siguientes condiciones:
+ La réplica está en un estado disponible.
+ No se está ejecutando ninguna operación de mantenimiento activa en la réplica.
+ Cuenta con los permisos necesarios para modificar la instancia de base de datos.

La operación de cambio puede tardar unos minutos. Durante la operación, el estado de la instancia de base de datos cambia a **modifying (modificando)**. Para obtener más información acerca de los cambios de estado, consulte [Visualización del estado de la instancia de base de datos de Amazon RDS ](accessing-monitoring.md#Overview.DBInstance.Status). Al cambiar del modo de solo lectura a en espera, la réplica desconecta todas las conexiones activas. 

**importante**  
Como el cambio de los modos de réplica interrumpe temporalmente el servicio, planifique el cambio durante un periodo de mantenimiento para minimizar el impacto en las aplicaciones.

Puede modificar el modo de réplica mediante la Consola de administración de AWS, la AWS CLI o la API de RDS.

## Consola
<a name="db2-replicas-changing-replica-mode-console"></a>

**Cambio del modo de réplica de una réplica de Db2**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon RDS en [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. En el panel de navegación, elija **Databases** (Bases de datos).

1. Elija la base de datos de réplicas que desea modificar.

1. Elija **Modificar**.

1. Para el **modo de réplica**, elija el modo deseado:
   + **Solo lectura**: para cargas de trabajo de lectura
   + **En espera**: para recuperación ante desastres

1. Elija los demás ajustes que desee usar.

1. Elija **Continue**.

1. En **Programación de modificaciones**, elija **Aplicar inmediatamente**.

1. Elija **Modificar la instancia de base de datos**.

1. Una vez completada la modificación, compruebe el cambio de modo de réplica en la página **Bases de datos**. El estado de la réplica se debería mostrar como **Disponible** cuando se complete el cambio.

## AWS CLI
<a name="db2-replicas-changing-replica-mode-cli"></a>

Para cambiar una réplica de Db2 de modo de solo lectura a modo de espera, establezca `--replica-mode` en `mounted` en el comando [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) de la AWS CLI. Para cambiar una réplica de Db2 de modo de espera a modo de solo lectura, establezca `--replica-mode` en `open-read-only`.

El siguiente ejemplo cambia una réplica del modo de solo lectura al modo de espera:

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

```
aws rds modify-db-instance \
    --db-instance-identifier my_db2_replica \
    --replica-mode mounted
```
Para Windows:  

```
aws rds modify-db-instance ^
    --db-instance-identifier my_db2_replica ^
    --replica-mode mounted
```

El siguiente ejemplo cambia una réplica del modo de espera al modo de solo lectura:

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

```
aws rds modify-db-instance \
    --db-instance-identifier my_db2_replica \
    --replica-mode open-read-only
```
Para Windows:  

```
aws rds modify-db-instance ^
    --db-instance-identifier my_db2_replica ^
    --replica-mode open-read-only
```

## API de RDS
<a name="db2-replicas-changing-replica-mode-api"></a>

Para cambiar una réplica de Db2 de modo de solo lectura a modo de espera, establezca `ReplicaMode=mounted` en [ModifyDBInstance](AmazonRDS/latest/APIReference/API_ModifyDBInstance.html). Para cambiar una réplica de Db2 de modo de espera a modo de solo lectura, establezca `ReplicaMode=open-read-only`.

A continuación, se muestra una llamada a la API de ejemplo para cambiar el modo de réplica del modo de solo lectura a de espera:

```
{
    "DBInstanceIdentifier": "my_db2_replica",
    "ReplicaMode": "mounted",
    "ApplyImmediately": true
}
```

A continuación, se muestra una llamada a la API de ejemplo para cambiar el modo de réplica del modo de espera a de solo lectura:

```
{
    "DBInstanceIdentifier": "my_db2_replica",
    "ReplicaMode": "open-read-only",
    "ApplyImmediately": true
}
```

Para obtener información acerca de las diferencias entre modos de réplicas, consulte [Trabajo con las réplicas de Amazon RDS para Db2](db2-replication.md). Para solucionar problemas de réplica, consulte [Solución de problemas de replicación de RDS para Db2](db2-troubleshooting-replicas.md).

# Trabajo con copias de seguridad de réplicas de RDS para Db2
<a name="db2-read-replicas.backups"></a>

Puede crear y restaurar copias de seguridad de una réplica de RDS para Db2 solo como una base de datos principal. Sin embargo, existen diferencias importantes en el funcionamiento de las copias de seguridad de las réplicas, especialmente en lo que respecta al tiempo de restauración y la configuración de retención de las copias de seguridad.

RDS para Db2 admite copias de seguridad automáticas e instantáneas manuales para réplicas. RDS para Db2 no admite la restauración en un momento dado. Para obtener información sobre las copias de seguridad de RDS, consulte [Copia de seguridad, restauración y exportación de datos](CHAP_CommonTasks.BackupRestore.md). 

## Diferencias clave para las copias de seguridad de las réplicas
<a name="db2-read-replicas-backups-overview"></a>

Las copias de seguridad de las réplicas difieren de las copias de seguridad de la base de datos principal en varios aspectos importantes:
+ Las copias de seguridad automáticas no están habilitadas de forma predeterminada para las réplicas.
+ Las operaciones de restauración utilizan el tiempo de la base de datos en lugar del tiempo de creación de la copia de seguridad.
+ El retraso de la réplica puede afectar a los datos reales restaurados. Para obtener información sobre la supervisión del retraso de la réplica, consulte [Supervisión del retardo de replicación de Db2](db2-troubleshooting-replicas.md#db2-troubleshooting-replicas-lag).

## Habilitación de copias de seguridad automáticas para réplicas de RDS para Db2
<a name="db2-read-replicas.backups.turning-on"></a>

A diferencia de las bases de datos principales, las réplicas de RDS para Db2 no tienen habilitadas las copias de seguridad automáticas de forma predeterminada. Debe configurar manualmente el periodo de retención de copia de seguridad para habilitar las copias de seguridad automáticas. Habilite las copias de seguridad automáticas mediante el establecimiento del periodo de retención de copia de seguridad en un valor positivo distinto de cero.

### Consola
<a name="db2-read-replicas.backups.turning-on-console"></a>

**Habilitación de las copias de seguridad automáticas inmediatamente**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon RDS en [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. En el panel de navegación, elija **Databases (Bases de datos)** y, a continuación, seleccione la instancia de base de datos que desee modificar.

1. Elija **Modify**.

1. En **Periodo de retención de copia de seguridad**, elija un valor positivo distinto de cero, por ejemplo, tres días.

1. Elija **Continue**.

1. Seleccione **Apply immediately (Aplicar inmediatamente)**.

1. Elija **Modificar la instancia de base de datos** para guardar los cambios y habilitar las copias de seguridad automatizadas.

### AWS CLI
<a name="db2-read-replicas.backups.turning-on-cli"></a>

Para habilitar las copias de seguridad automáticas, utilice el comando [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) de la AWS CLI.

Incluya los siguientes parámetros:
+ `--db-instance-identifier`
+ `--backup-retention-period`
+ `--apply-immediately` o `--no-apply-immediately`

El ejemplo siguiente habilita las copias de seguridad automáticas estableciendo el periodo de retención de copia de seguridad en tres días. Los cambios se aplican inmediatamente.

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

```
aws rds modify-db-instance \
    --db-instance-identifier my_db_instance  \
    --backup-retention-period 3 \
    --apply-immediately
```
Para Windows:  

```
aws rds modify-db-instance ^
    --db-instance-identifier my_db_instance  ^
    --backup-retention-period 3 ^
    --apply-immediately
```

### API de RDS
<a name="db2-read-replicas.backups.turning-on-api"></a>

Para habilitar las copias de seguridad automáticas, utilice la operación [ModifyDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html) de la API de RDS con los siguientes parámetros obligatorios:
+ `DBInstanceIdentifier`
+ `BackupRetentionPeriod`

## Restauración de una copia de seguridad de réplicas de RDS para Db2
<a name="db2-read-replicas.backups.restoring"></a>

Puede restaurar una copia de seguridad de una réplica de RDS para Db2 del mismo modo que restaura una copia de seguridad de la base de datos principal. Para obtener más información, consulte [Restauración a una instancia de base de datos](USER_RestoreFromSnapshot.md).

La consideración más importante a la hora de restaurar copias de seguridad de réplicas es entender la diferencia entre la hora de creación de la base de datos y la hora de creación de la copia de seguridad, especialmente cuando hay un retraso en la réplica.

Puede supervisar el retraso de la replicación y asegurarse de que las copias de seguridad contengan los datos esperados. Para obtener información acerca de la métrica de retraso de réplicas, consulte [Métricas de Amazon CloudWatch para Amazon RDS](rds-metrics.md).

### Descripción de las diferencias de tiempo
<a name="db2-read-replicas-backups-restoring-timing"></a>

Cuanto restaura una copia de seguridad de réplicas, debe determinar el punto en el tiempo en el que se va a restaurar. El tiempo de base de datos se refiere a la última hora de la transacción aplicada de los datos de la copia de seguridad. Cuando restaura una copia de seguridad de réplicas, se restaura la hora de la base de datos, no la hora en que se realizó la copia de seguridad. La diferencia es significativa porque una réplica puede tener un retardo de minutos u horas con respecto a la base de datos principal. Por lo tanto, la hora de la base de datos de una copia de seguridad de réplicas puede ser mucho más anterior a la hora de creación de la instantánea.

Para averiguar la diferencia entre la hora de la base de datos y la hora de creación, ejecute el comando [describe-db-snapshots](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-snapshots.html) de AWS CLI o llame a la operación [DescribeDBSnapshots](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBSnapshots.html) de la API de RDS. Compare los valores `SnapshotDatabaseTime` y `OriginalSnapshotCreateTime`. El valor `SnapshotDatabaseTime` es la hora más antigua de la base de datos entre todas las bases de datos de la copia de seguridad de la réplica. El valor `OriginalSnapshotCreateTime` es la última transacción aplicada en la base de datos principal. Tenga en cuenta que los retardos de replicación pueden ser diferentes para varias bases de datos y la hora de la base de datos podría estar entre estas dos horas. 

El siguiente ejemplo de la AWS CLI muestra la diferencia entre las dos horas:

Para Linux, macOS o Unix:

```
aws rds describe-db-snapshots \
    --db-instance-identifier my_db2_replica \
    --db-snapshot-identifier my_replica_snapshot
```

Para Windows:

```
aws rds describe-db-snapshots ^
    --db-instance-identifier my_db2_replica ^
    --db-snapshot-identifier my_replica_snapshot
```

El resultado de este comando debería ser similar al siguiente ejemplo. 

```
{
    "DBSnapshots": [
        {
            "DBSnapshotIdentifier": "my_replica_snapshot",
            "DBInstanceIdentifier": "my_db2_replica", 
            "SnapshotDatabaseTime": "2022-07-26T17:49:44Z",
            ...
            "OriginalSnapshotCreateTime": "2021-07-26T19:49:44Z"
        }
    ]
}
```

# Solución de problemas de replicación de RDS para Db2
<a name="db2-troubleshooting-replicas"></a>

En este tema se describen los problemas más comunes de replicación de RDS para Db2 y se proporciona una guía de solución de problemas para las réplicas de solo lectura y en espera. Además de revisar la siguiente información de solución de problemas, asegúrese de haber seguido los [requisitos y las consideraciones](db2-read-replicas.limitations.md), y de haber completado los [pasos de preparación](db2-read-replicas.Configuration.md) antes de crear réplicas de Db2.

## Errores de creación de réplicas
<a name="db2-troubleshooting-replicas-creation"></a>



La creación de réplicas puede generar un error por varios motivos:
+ **Bases de datos inactivas**: todas las bases de datos de la instancia de base de datos de origen deben estar activas antes de crear réplicas. 

  Para obtener información sobre cómo activar bases de datos, consulte [Procedimientos almacenados de bases de datos de RDS para Db2](db2-sp-managing-databases.md).
+ **Faltan copias de seguridad automáticas**: la instancia de base de datos de origen debe tener habilitadas las copias de seguridad automáticas. 

  Para obtener información acerca de cómo habilitar copias de seguridad, consulte [Habilitación de copias de seguridad automáticas para réplicas de RDS para Db2](db2-read-replicas.backups.md#db2-read-replicas.backups.turning-on).
+ **Problemas de grupos de parámetros**: se requieren grupos de parámetros personalizados para las réplicas. Para las licencias BYOL, el grupo de parámetros debe incluir IBM Site ID e IBM Customer ID. 

  Para obtener más información, consulte [ID de IBM para traiga su propia licencia (BYOL) para Db2](db2-licensing.md#db2-prereqs-ibm-info).

## Supervisión del retardo de replicación de Db2
<a name="db2-troubleshooting-replicas-lag"></a>

Para supervisar el retraso de replicación en Amazon CloudWatch, consulte la métrica `ReplicaLag` de Amazon RDS. Para obtener información sobre el retardo de replicación, consulte [Monitoreo de la replicación de lectura](USER_ReadRepl.Monitoring.md) y [Métricas de Amazon CloudWatch para Amazon RDS](rds-metrics.md). Para obtener información acerca de la configuración de las alarmas de CloudWatch para el retraso de réplica, consulte [Supervisión de métricas de Amazon RDS con Amazon CloudWatch](monitoring-cloudwatch.md). 

En el caso de una réplica de solo lectura, si el tiempo de retraso es demasiado largo, consulte la tabla `MON_GET_HADR` para conocer el estado de la instancia de base de datos de la réplica. 

En el caso de una réplica en espera, si el tiempo de retardo es demasiado largo, consulte la tabla `MON_GET_HADR` para conocer el estado de la instancia de base de datos de origen. No consulte la instancia de base de datos de réplica, ya que las instancias de base de datos de réplica no aceptan conexiones de usuario.

Entre las causas comunes de un retraso elevado de replicación se incluyen las siguientes:
+ Recursos informáticos insuficientes en la réplica
+ Problemas de conectividad de red entre el origen y la réplica
+ Alta actividad de escritura en la base de datos de origen
+ Limitaciones de rendimiento de almacenamiento en la réplica

Si persiste un retraso elevado en la replicación, considere la posibilidad de escalar los recursos de la réplica. Para obtener más información, consulte [Modificación de una instancia de base de datos de Amazon RDS](Overview.DBInstance.Modifying.md).

## Errores de replicación de Db2
<a name="db2-troubleshooting-replicas-triggers"></a>

La replicación de Db2 puede encontrarse en estado de error por varios motivos. Lleve a cabo las siguientes acciones:
+ Supervise los eventos y el estado de la instancia de base de datos para asegurarse de que la instancia de base de datos se esté replicando. 

  Para obtener más información, consulte [Uso de notificaciones de eventos de Amazon RDS](USER_Events.md).
+ Consulte los registros de diagnóstico de la réplica de Db2 en la consola de Amazon RDS. En los registros, busque errores en los mensajes de HADR. Compare el número de secuencia del registro con el número de secuencia principal. 

  Para obtener información sobre el acceso a los registros de diagnóstico de Db2 y su interpretación, consulte [Archivos de registro de base de datos de Amazon RDS para Db2](USER_LogAccess.Concepts.Db2.md). Para obtener información sobre la configuración y la solución de problemas del HADR de Db2, consulte [Trabajo con las réplicas de Amazon RDS para Db2](db2-replication.md). 

Si los errores de replicación persisten, es posible que deba volver a crear la réplica. 

## Problemas de conectividad
<a name="db2-troubleshooting-replicas-connections"></a>

Si no puede conectarse a la réplica, consulte la siguiente información sobre los modos de réplica:
+ **Réplicas en espera**: por diseño, no aceptan conexiones de usuarios. Utilice réplicas de solo lectura para las cargas de trabajo de lectura.
+ **Réplicas de solo lectura**: compruebe la configuración del grupo de seguridad, las ACL de red y las configuraciones del grupo de parámetros. 

  Para obtener más información, consulte [Controle el tráfico a los recursos de AWS mediante grupos de seguridad](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-security-groups.html) en la *Guía del usuario de Amazon VPC*, [Controle el tráfico de subred con listas de control de acceso de red](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-network-acls.html) en la *Guía del usuario de Amazon VPC* y [Grupos de parámetros para Amazon RDS](USER_WorkingWithParamGroups.md).

## Problemas de rendimiento
<a name="db2-troubleshooting-replicas-performance"></a>

Si el rendimiento de la réplica es deficiente, consulte las siguientes sugerencias:
+ Asegúrese de que la réplica cuente con los recursos informáticos y de almacenamiento adecuados. 
+ Supervise la métrica `ReplicaLag` en Amazon CloudWatch. 
+ Considere la posibilidad de escalar verticalmente la clase de instancia de base de datos de réplica. 

Para obtener información acerca de cómo modificar recursos o clases de instancias, consulte [Modificación de una instancia de base de datos de Amazon RDS](Overview.DBInstance.Modifying.md).

Para obtener información sobre la supervisión del retraso de replicación, consulte [Monitoreo de retraso de la replicación](USER_ReadRepl.Monitoring.md#USER_ReadRepl.Monitoring.Lag) y [Métricas de Amazon CloudWatch para Amazon RDS](rds-metrics.md). Para obtener información acerca de la configuración de las alarmas de CloudWatch para el retraso de réplica, consulte [Supervisión de métricas de Amazon RDS con Amazon CloudWatch](monitoring-cloudwatch.md). 

# Opciones de instancias de base de datos de Amazon RDS para Db2
<a name="Db2.Options"></a>

A continuación, encontrará opciones o características adicionales que están disponibles para las instancias de Amazon RDS que ejecutan el motor de base de datos Db2. Para activar estas opciones, puede añadirlas a un grupo de opciones personalizado y, a continuación, asociar el grupo de opciones a la instancia de base de datos. Para obtener más información acerca de cómo trabajar con grupos de opciones, consulte [Trabajo con grupos de opciones](USER_WorkingWithOptionGroups.md).

Amazon RDS admite las siguientes opciones para Db2:


| Opción | ID de la opción | 
| --- | --- | 
|  [Registro de auditoría de Db2](Db2.Options.Audit.md)  |  `DB2_AUDIT`  | 

# Registro de auditoría de Db2
<a name="Db2.Options.Audit"></a>

Con el registro de auditoría de Db2, Amazon RDS registra la actividad de la base de datos, lo que incluye a los usuarios que inician sesión en la base de datos y las consultas ejecutadas en esta. RDS carga los registros de auditoría completados en su bucket de Amazon S3 mediante el rol de AWS Identity and Access Management (IAM) que usted proporciona.

**Topics**
+ [Configuración del registro de auditoría de Db2](#db2-audit-setting-up)
+ [Administración del registro de auditoría de Db2](#db2-audit-managing)
+ [Visualización de registros de auditoría](#db2-audit-viewing-logs)
+ [Solución de problemas en el registro de auditoría de Db2](#db2-audit-troubleshooting)

## Configuración del registro de auditoría de Db2
<a name="db2-audit-setting-up"></a>

Para habilitar el registro de auditoría en una base de datos de Amazon RDS para Db2, active la opción `DB2_AUDIT` en la instancia de base de datos de Amazon RDS para Db2. Luego, configure una política de auditoría para habilitar la característica en la base de datos específica. Para habilitar la opción en la instancia de base de datos de RDS para Db2, debe configurar los ajustes de la opción `DB2_AUDIT`. Para ello, debe proporcionar los nombres de recursos de Amazon (ARN) para su bucket de Amazon S3 y el rol de IAM con permisos para acceder a su bucket.

Para configurar el registro de auditoría de Db2 para una base de datos de RDS para Db2, siga estos pasos.

**Topics**
+ [Paso 1: Crear un bucket de Amazon S3](#db2-audit-create-s3-bucket)
+ [Paso 2: Crear una política de IAM](#db2-audit-create-iam-policy)
+ [Paso 3: Crear un rol de IAM y asociar la política de IAM](#db2-audit-create-iam-role)
+ [Paso 4: Configurar un grupo de opciones para el registro de auditoría de Db2](#db2-audit-configure-options-group)
+ [Paso 5: Configurar la política de auditoría](#db2-audit-configure-audit-policy)
+ [Paso 6: Comprobar la configuración de la auditoría](#db2-audit-check-config-status)

### Paso 1: Crear un bucket de Amazon S3
<a name="db2-audit-create-s3-bucket"></a>

Si aún no lo ha hecho, cree un bucket de Amazon S3 en el que Amazon RDS pueda cargar los archivos de registro de auditoría de la base de datos de RDS para Db2. Se aplican las siguientes restricciones al bucket de S3 que usa como destino para los archivos de auditoría:
+ Debería estar en la misma Región de AWS que su instancia de base de datos de RDS para Db2.
+ No debe estar abierto al público.
+ El propietario del bucket también debe ser el propietario del rol de IAM.

Para aprender a crear un bucket de Amazon S3, consulte [Crear un bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html) en la *Guía de usuario Amazon S3*.

Tras habilitar el registro de auditoría, Amazon RDS envía automáticamente los registros de la instancia de base de datos a las siguientes ubicaciones:
+ Registros en el nivel de instancia de base de datos: `bucket_name/db2-audit-logs/dbi_resource_id/date_time_utc/`
+ Registros en el nivel de base de datos: `bucket_name/db2-audit-logs/dbi_resource_id/date_time_utc/db_name/`

Apunte el nombre de recurso de Amazon (ARN) del bucket. Esta información será necesaria para completar los pasos siguientes.

### Paso 2: Crear una política de IAM
<a name="db2-audit-create-iam-policy"></a>

Cree una política de IAM con los permisos necesarios para transferir archivos de registro de auditoría desde su instancia de base de datos a su bucket de Amazon S3. En este paso, se da por sentado que ya tiene un bucket de S3.

Antes de crear la política, obtenga la siguiente información:
+ El ARN de su bucket.
+ El ARN para su clave de AWS Key Management Service (AWS KMS), si el bucket utiliza el cifrado SSE-KMS.

Cree una política de IAM que incluya los siguientes permisos:

```
"s3:ListBucket",
 "s3:GetBucketAcl",
 "s3:GetBucketLocation",
 "s3:PutObject",
 "s3:ListMultipartUploadParts",
 "s3:AbortMultipartUpload",
 "s3:ListAllMyBuckets"
```

**nota**  
Amazon RDS necesita la acción `s3:ListAllMyBuckets` internamente para verificar que la misma Cuenta de AWS tenga el bucket S3 y la instancia de base de datos de RDS para Db2.

Si el bucket usa el cifrado SSE-KMS, incluya también los siguientes permisos para el rol de IAM y la clave de AWS KMS.

Incluya los permisos siguientes a la política para el rol de IAM.

```
"kms:GenerateDataKey",
 "kms:Decrypt"
```

Incluya los permisos siguientes a la política de claves de la clave de AWS KMS. Reemplace *111122223333* por el número de cuenta y *AROA123456789EXAMPLE* por el nombre del rol de IAM.

```
{
  "Sid": "Allow RDS role to use the key",
  "Effect": "Allow",
  "Principal": {
    "AWS": [
      "arn:aws:sts::111122223333:assumed-role/AROA123456789EXAMPLE/RDS-Db2Audit",
      "arn:aws:iam::111122223333:role/AROA123456789EXAMPLE"
    ]
  },
  "Action": [
    "kms:GenerateDataKey",
    "kms:Decrypt"
  ],
  "Resource": "*"
}
```

Puede crear una política de IAM mediante la Consola de administración de AWS o la AWS Command Line Interface (AWS CLI).

#### Consola
<a name="db2-audit-create-iam-policy-console"></a>

**Para crear una política de IAM que permita a Amazon RDS acceder a un bucket de Amazon S3**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de IAM en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. En el panel de navegación, seleccione **Políticas**.

1. Elija **Crear política** y, a continuación, elija **JSON**.

1. En **Agregar acciones**, filtre por **S3**. Agregue el acceso **ListBucket**, **GetBucketAcl** y **GetBucketLocation**.

1. En **Agregar un recurso**, seleccione **Agregar**. En **Tipo de recurso**, elija **bucket** e introduzca el nombre del bucket. Luego, elija **Agregar recurso**.

1. Elija **Agregar nueva instrucción**.

1. En **Agregar acciones**, filtre por **S3**. Agregue el acceso **PutObject**, **ListMultipartUploadParts** y **AbortMultipartUpload**.

1. En **Agregar un recurso**, seleccione **Agregar**. En **Tipo de recurso**, elija **objeto** e introduzca *your bucket name/\$1*. Luego, elija **Agregar recurso**.

1. Elija **Agregar nueva instrucción**.

1. En **Agregar acciones**, filtre por **S3**. Agregue el acceso **ListAllMyBuckets**.

1. En **Agregar un recurso**, seleccione **Agregar**. Para **Tipo de recurso**, elija **Todos los recursos**. Luego, elija **Agregar recurso**.

1. Si utiliza sus propias claves de KMS para cifrar los datos:

   1. Elija **Agregar nueva instrucción**.

   1. En **Agregar acciones**, filtre por KMS. Agregue el acceso **GenerateDataKey** y **Decrypt**.

   1. En **Agregar un recurso**, seleccione **Agregar**. Para **Tipo de recurso**, elija **Todos los recursos**. Luego, elija **Agregar recurso**.

1. Elija **Siguiente**.

1. Escriba un nombre para la política en **Nombre de la política**.

1. (Opcional) En **Description (Descripción)**, escriba una descripción para esta política.

1. Elija **Crear política**.

#### AWS CLI
<a name="db2-audit-create-iam-policy-cli"></a>

**Para crear una política de IAM que permita a Amazon RDS acceder a un bucket de Amazon S3**

1. Ejecute el comando [https://docs.aws.amazon.com/cli/latest/reference/iam/create-policy.html](https://docs.aws.amazon.com/cli/latest/reference/iam/create-policy.html). En el siguiente ejemplo, sustituya *iam\$1policy\$1name* y *amzn-s3-demo-bucket* por un nombre para su política de IAM y por el nombre de su bucket de Amazon S3 de destino.

   Para Linux, macOS o Unix:

   ```
   aws iam create-policy \
       --policy-name iam_policy_name \
       --policy-document '{
           "Version": "2012-10-17",		 	 	 
           "Statement": [
               {
                   "Sid": "Statement1",
                   "Effect": "Allow",
                   "Action": [
                       "s3:ListBucket",
                       "s3:GetBucketAcl",
                       "s3:GetBucketLocation"
                   ],
                   "Resource": [
                       "arn:aws:s3:::amzn-s3-demo-bucket"
                   ]
               },
               {
                   "Sid": "Statement2",
                   "Effect": "Allow",
                   "Action": [
                       "s3:PutObject",
                       "s3:ListMultipartUploadParts",
                       "s3:AbortMultipartUpload"
                   ],
                   "Resource": [
                       "arn:aws:s3:::amzn-s3-demo-bucket/*"
                   ]
               },
               {
                   "Sid": "Statement3",
                   "Effect": "Allow",
                   "Action": [
                       "s3:ListAllMyBuckets"
                   ],
                   "Resource": [
                       "*"
                   ]
               },
               {
                   "Sid": "Statement4",
                   "Effect": "Allow",
                   "Action": [
                       "kms:GenerateDataKey",
                       "kms:Decrypt"
                   ],
                   "Resource": [
                       "*"
                   ]
               }
           ]
     }'
   ```

   Para Windows:

   ```
   aws iam create-policy ^
       --policy-name iam_policy_name ^
       --policy-document '{
           "Version": "2012-10-17",		 	 	 
           "Statement": [
               {
                   "Sid": "Statement1",
                   "Effect": "Allow",
                   "Action": [
                       "s3:ListBucket",
                       "s3:GetBucketAcl",
                       "s3:GetBucketLocation"
                   ],
                   "Resource": [
                       "arn:aws:s3:::amzn-s3-demo-bucket"
                   ]
               },
               {
                   "Sid": "Statement2",
                   "Effect": "Allow",
                   "Action": [
                       "s3:PutObject",
                       "s3:ListMultipartUploadParts",
                       "s3:AbortMultipartUpload"
                   ],
                   "Resource": [
                       "arn:aws:s3:::amzn-s3-demo-bucket/*"
                   ]
               },
               {
                   "Sid": "Statement3",
                   "Effect": "Allow",
                   "Action": [
                       "s3:ListAllMyBuckets"
                   ],
                   "Resource": [
                       "*"
                   ]
               },
               {
                   "Sid": "Statement4",
                   "Effect": "Allow",
                   "Action": [
                       "kms:GenerateDataKey",
                       "kms:Decrypt"
                   ],
                   "Resource": [
                       "*"
                   ]
               }
           ]
     }'
   ```

1. Después de crear la política, apunte el ARN de la política. Necesita el ARN para [Paso 3: Crear un rol de IAM y asociar la política de IAM](#db2-audit-create-iam-role).

Para obtener más información acerca de cómo crear una política de IAM, consulte [Creación de políticas de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) en la Guía del usuario de IAM.

### Paso 3: Crear un rol de IAM y asociar la política de IAM
<a name="db2-audit-create-iam-role"></a>

En este paso, se da por sentado que ha creado la política de IAM en [Paso 2: Crear una política de IAM](#db2-audit-create-iam-policy). En este paso, creará un rol de IAM para la instancia de base de datos de RDS para Db2 y, a continuación, asociará la política de IAM al rol.

Puede crear un rol de IAM a su instancia de base de datos mediante la consola o la AWS CLI.

#### Consola
<a name="db2-audit-create-iam-role-console"></a>

**Para crear un rol de IAM y asociarle la política de IAM**

1. Inicie sesión en Consola de administración de AWS y abra la consola IAM en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Seleccione **Roles** en el panel de navegación.

1. Elija **Creación de rol**.

1. En **Tipo de entidad de confianza**, elija **Servicio de AWS**.

1. Para el **Servicio o caso de uso**, seleccione **RDS** y, a continuación, seleccione **RDS: Agregar rol a la base de datos**.

1. Elija **Siguiente**.

1. Para **Políticas de permisos**, busque y seleccione el nombre de la política de IAM que creó.

1. Elija **Siguiente**.

1. En **Nombre de rol**, ingrese un nombre de rol.

1. (Opcional) En **Descripción**, ingrese una descripción para el nuevo rol.

1. Elija **Creación de rol**.

#### AWS CLI
<a name="db2-audit-create-iam-role-cli"></a>

**Para crear un rol de IAM y asociarle la política de IAM**

1. Ejecute el comando [https://docs.aws.amazon.com/cli/latest/reference/iam/create-role.html](https://docs.aws.amazon.com/cli/latest/reference/iam/create-role.html). En el siguiente ejemplo, sustituya *iam\$1role\$1name* por un nombre para su rol de IAM.

   Para Linux, macOS o Unix:

   ```
   aws iam create-role \
       --role-name iam_role_name \
       --assume-role-policy-document '{
         "Version": "2012-10-17",		 	 	 
         "Statement": [
           {
             "Effect": "Allow",
             "Principal": {
               "Service": "rds.amazonaws.com"
             },
             "Action": "sts:AssumeRole"
           }
         ]
       }'
   ```

   Para Windows:

   ```
   aws iam create-role ^
       --role-name iam_role_name ^
       --assume-role-policy-document '{
         "Version": "2012-10-17",		 	 	 
         "Statement": [
           {
             "Effect": "Allow",
             "Principal": {
               "Service": "rds.amazonaws.com"
             },
             "Action": "sts:AssumeRole"
           }
         ]
       }'
   ```

1. Después de crear el rol, anote el ARN del rol. Necesitará este ARN en el siguiente paso ([Paso 4: Configurar un grupo de opciones para el registro de auditoría de Db2](#db2-audit-configure-options-group)).

1. Ejecute el comando [https://docs.aws.amazon.com/cli/latest/reference/iam/attach-role-policy.html](https://docs.aws.amazon.com/cli/latest/reference/iam/attach-role-policy.html). En el siguiente ejemplo, sustituya *iam\$1policy\$1arn* por el ARN de la política de IAM que creó en [Paso 2: Crear una política de IAM](#db2-audit-create-iam-policy). Reemplace *iam\$1role\$1name* por el nombre del rol de IAM que acaba de crear.

   Para Linux, macOS o Unix:

   ```
   aws iam attach-role-policy \
      --policy-arn iam_policy_arn \
      --role-name iam_role_name
   ```

   Para Windows:

   ```
   aws iam attach-role-policy ^
      --policy-arn iam_policy_arn ^
      --role-name iam_role_name
   ```

Para obtener más información, vea [Crear un rol para delegar permisos a un usuario de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user.html) en *Guía del usuario de IAM. *

### Paso 4: Configurar un grupo de opciones para el registro de auditoría de Db2
<a name="db2-audit-configure-options-group"></a>

El proceso de incorporación de la opción del registro de auditoría de Db2 a una instancia de base de datos de RDS para Db2 es el siguiente:

1. Cree un grupo de opciones nuevo o copie o modifique un grupo de opciones existente.

1. Añada y configure todas las opciones necesarias.

1. Asocie el grupo de opciones a la instancia de base de datos.

Después de añadir la opción del registro de auditoría de Db2, no es necesario reiniciar la instancia de base de datos. En cuanto el grupo de opciones esté activo, podrá crear auditorías y almacenar registros de auditoría en su bucket de S3.

**Para añadir y configurar el registro de auditoría de Db2 en el grupo de opciones de una instancia de base de datos**

1. Elija una de las siguientes opciones:
   + Use un grupo de opciones existente.
   + Cree un grupo de opciones de base de datos personalizado y utilice ese grupo. Para obtener más información, consulte [Creación de un grupo de opciones](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create).

1. Agregue la opción **DB2\$1AUDIT** al grupo de opciones y configure las opciones. Para obtener más información acerca de la adición de opciones, consulte [Agregar una opción a un grupo de opciones](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption).
   + En **IAM\$1ROLE\$1ARN**, escriba el ARN para el rol de IAM que creó en [Paso 3: Crear un rol de IAM y asociar la política de IAM](#db2-audit-create-iam-role).
   + Para **S3\$1BUCKET\$1ARN**, introduzca el ARN del bucket de S3 que se utilizará en los registros de auditoría de Db2. El bucket debe estar en la misma región que la instancia de base de datos de RDS para Db2. La política asociada al rol de IAM que haya introducido debe permitir las operaciones necesarias en este recurso.

1. Aplique el grupo de opciones a una instancia de base de datos nueva o existente. Elija una de las siguientes opciones:
   + Si está creando una instancia de base de datos nueva, aplique el grupo de opciones al lanzar la instancia.
   + En una instancia de base de datos existente, el grupo de opciones se aplica modificando la instancia y asociando el grupo de opciones nuevo. Para obtener más información, consulte [Modificación de una instancia de base de datos de Amazon RDS](Overview.DBInstance.Modifying.md). 

### Paso 5: Configurar la política de auditoría
<a name="db2-audit-configure-audit-policy"></a>

A fin de configurar la política de auditoría para su base de datos de RDS para Db2, conéctese a la base de datos de `rdsadmin` con el nombre de usuario y la contraseña principales de su instancia de base de datos de RDS para Db2. Luego, llame al procedimiento almacenado `rdsadmin.configure_db_audit` con el nombre de base de datos de su base de datos y con los valores de parámetro aplicables.

El siguiente ejemplo se conecta a la base de datos y configura una política de auditoría para `testdb` con las categorías AUDIT, CHECKING, OBJMAINT, SECMAINT, SYSADMIN, y VALIDATE. El valor de estado `BOTH` registra los éxitos y los errores, y el `ERROR TYPE` es `NORMAL` de manera predeterminada. Para obtener más información sobre el uso de este procedimiento almacenado, consulte [rdsadmin.configure\$1db\$1audit](db2-sp-managing-audit-policies.md#db2-sp-configure-db-audit).

```
db2 "connect to rdsadmin user master_user using master_password"
db2 "call rdsadmin.configure_db_audit('testdb', 'ALL', 'BOTH', ?)"
```

### Paso 6: Comprobar la configuración de la auditoría
<a name="db2-audit-check-config-status"></a>

Para asegurarse de que la política de auditoría está configurada correctamente, compruebe el estado de la configuración de auditoría.

Para comprobar la configuración, conéctese a la base de datos `rdsadmin` con el nombre de usuario y la contraseña principales de su instancia de base de datos de RDS para Db2. Luego, ejecute la siguiente instrucción SQL con el nombre de base de datos de su base de datos. En el siguiente ejemplo, el nombre de base de datos es *testdb*.

```
db2 "select task_id, task_type, database_name, lifecycle,
    varchar(bson_to_json(task_input_params), 500) as task_params,
    cast(task_output as varchar(500)) as task_output
    from table(rdsadmin.get_task_status(null,'testdb','CONFIGURE_DB_AUDIT'))"
    
Sample Output
 
TASK_ID              TASK_TYPE            DATABASE_NAME       LIFECYCLE
-------------------- -------------------- --------------- -------------
                   2  CONFIGURE_DB_AUDIT            DB2DB       SUCCESS

... continued ...
TASK_PARAMS                                
-------------------------------------------------------- 
{ "AUDIT_CATEGORY" : "ALL", "CATEGORY_SETTING" : "BOTH" }            

... continued ...
                                        TASK_OUTPUT
---------------------------------------------------
2023-12-22T20:27:03.029Z Task execution has started.

2023-12-22T20:27:04.285Z Task execution has completed successfully.
```

## Administración del registro de auditoría de Db2
<a name="db2-audit-managing"></a>

Tras configurar el registro de auditoría de Db2, puede modificar la política de auditoría de una base de datos específica o deshabilitar el registro de auditoría en el nivel de base de datos o de toda la instancia de base de datos. También puede cambiar el bucket de Amazon S3 en el que se cargan los archivos de registro.

**Topics**
+ [Modificación de una política de auditoría de Db2](#db2-audit-modifying-policy)
+ [Modificación de la ubicación de los archivos de registro](#db2-audit-modifying-location)
+ [Deshabilitación del registro de auditoría de Db2](#db2-audit-disabling)

### Modificación de una política de auditoría de Db2
<a name="db2-audit-modifying-policy"></a>

Para modificar la política de auditoría de una base de datos RDS para Db2 específica, ejecute el procedimiento almacenado `rdsadmin.configure_db_audit`. Con este procedimiento almacenado, puede cambiar las categorías, los ajustes de las categorías y la configuración de los tipos de error de la política de auditoría. Para obtener más información, consulte [rdsadmin.configure\$1db\$1audit](db2-sp-managing-audit-policies.md#db2-sp-configure-db-audit).

### Modificación de la ubicación de los archivos de registro
<a name="db2-audit-modifying-location"></a>

Para cambiar el bucket de Amazon S3 en el que se cargan los archivos de registro, lleve a cabo una de las siguientes acciones:
+ Modificar el grupo de opciones actual asociado a su instancia de base de datos de RDS para Db2: actualice la configuración de `S3_BUCKET_ARN` para la opción `DB2_AUDIT` de modo que apunte al nuevo bucket. Además, actualice la política de IAM asociada al rol de IAM especificado en la configuración de `IAM_ROLE_ARN` del grupo de opciones asociado. Esta política de IAM debe darle a su nuevo bucket los permisos de acceso necesarios. Para obtener más información acerca de los permisos necesarios en la política de IAM, consulte [Crear una política de IAM](#db2-audit-create-iam-policy).
+ Asociar la instancia de base de datos de RDS para Db2 a un grupo de opciones diferente: modifique la instancia de base de datos para cambiar el grupo de opciones asociado. Asegúrese de que el nuevo grupo de opciones esté configurado con los ajustes `S3_BUCKET_ARN` y `IAM_ROLE_ARN` correctos. Para obtener información acerca de cómo configurar estos ajustes para la opción `DB2_AUDIT`, consulte [Configurar un grupo de opciones](#db2-audit-configure-options-group).

Al modificar el grupo de opciones, debe aplicar los cambios inmediatamente. Para obtener más información, consulte [Modificación de una instancia de base de datos de Amazon RDS](Overview.DBInstance.Modifying.md).

### Deshabilitación del registro de auditoría de Db2
<a name="db2-audit-disabling"></a>

Para deshabilitar el registro de auditoría de Db2, realice una de las siguientes acciones:
+ Deshabilitar el registro de auditoría para la instancia de base de datos de RDS para Db2: modifique su instancia de base de datos y elimine el grupo de opciones que contiene la opción `DB2_AUDIT`. Para obtener más información, consulte [Modificación de una instancia de base de datos de Amazon RDS](Overview.DBInstance.Modifying.md).
+ Deshabilitar el registro de auditoría para una base de datos específica: detenga el registro de auditoría y elimine la política de auditoría llamando a `rdsadmin.disable_db_audit` con el nombre de base de datos de su base de datos. Para obtener más información, consulte [rdsadmin.disable\$1db\$1audit](db2-sp-managing-audit-policies.md#db2-sp-disable-db-audit).

  ```
  db2 "call rdsadmin.disable_db_audit(
      'db_name',
      ?)"
  ```

## Visualización de registros de auditoría
<a name="db2-audit-viewing-logs"></a>

Tras habilitar el registro de auditoría de Db2, espere al menos una hora antes de ver los datos de auditoría en su bucket de Amazon S3. Amazon RDS envía automáticamente los registros desde su instancia de base de datos de RDS para Db2 a las siguientes ubicaciones:
+ Registros en el nivel de instancia de base de datos: `bucket_name/db2-audit-logs/dbi_resource_id/date_time_utc/`
+ Registros en el nivel de base de datos: `bucket_name/db2-audit-logs/dbi_resource_id/date_time_utc/db_name/`

En la siguiente captura de pantalla de ejemplo de la consola Amazon S3, se muestra una lista de carpetas para los archivos de registro en el nivel de instancia de base de datos de RDS para Db2.

![\[Consola Amazon S3 con la pestaña Objetos seleccionada, que muestra una lista de carpetas para los archivos de registro en la instancia de base de datos de RDS para Db2.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/db2-instance-level-audit-logs.png)


La siguiente captura de pantalla de ejemplo de la consola de Amazon S3 muestra los archivos de registro en el nivel de base de datos para la instancia de base de datos de RDS para Db2.

![\[Consola de Amazon S3 con la pestaña de Objetos seleccionada, que muestra los archivos de registro en la base de datos para la instancia de base de datos de RDS para Db2.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/db2-database-level-audit-logs.png)


## Solución de problemas en el registro de auditoría de Db2
<a name="db2-audit-troubleshooting"></a>

Utilice la siguiente información para solucionar problemas comunes con el registro de auditoría de Db2.

### No se puede configurar la política de auditoría
<a name="db2-audit-troubleshooting-policy-config"></a>

Si, al llamar al procedimiento almacenado `rdsadmin.configure_db_audit`, se produce un error, es posible que el grupo de opciones que contiene la opción `DB2_AUDIT` no esté asociado a la instancia de base de datos de RDS para Db2. Modifique la instancia de base de datos para añadir el grupo de opciones y llame de nuevo al procedimiento almacenado. Para obtener más información, consulte [Modificación de una instancia de base de datos de Amazon RDS](Overview.DBInstance.Modifying.md).

### No hay datos en el bucket de Amazon S3
<a name="db2-audit-troubleshooting-missing-data"></a>

Si faltan datos de registro en el bucket de Amazon S3, compruebe lo siguiente:
+ El bucket de Amazon S3 debe estar en la misma región que la instancia de base de datos de RDS para Db2.
+ El rol que especificó en la configuración de la opción `IAM_ROLE_ARN` debe estar configurado con los permisos necesarios para cargar registros en su bucket de Amazon S3. Para obtener más información, consulte [Crear una política de IAM](#db2-audit-create-iam-policy).
+ Los ARN de la configuración de las opciones `IAM_ROLE_ARN` y `S3_BUCKET_ARN` deben ser los correctos en el grupo de opciones asociado a su instancia de base de datos de RDS para Db2. Para obtener más información, consulte [Configurar un grupo de opciones](#db2-audit-configure-options-group).

Para verificar el estado de la tarea de la configuración de registro de auditoría, conéctese a la base de datos y ejecute una instrucción SQL. Para obtener más información, consulte [Comprobar la configuración de la auditoría](#db2-audit-check-config-status).

También puede comprobar los eventos para obtener más información sobre por qué faltan registros. Para obtener información sobre cómo ver eventos, consulte [Visualización de los registros, los eventos y los flujos en la consola de Amazon RDS](logs-events-streams-console.md).

# Procedimientos almacenados externos de Amazon RDS para Db2
<a name="db2-external-stored-procedures"></a>

Puede crear rutinas externas y registrarlas en sus bases de datos de Amazon RDS para Db2 como procedimientos almacenados externos. Actualmente, RDS para Db2 solo admite rutinas basadas en Java para procedimientos almacenados externos.

## Procedimientos almacenados externos basados en Java
<a name="db2-external-stored-procedures-java"></a>

Los procedimientos almacenados externos basados en Java son rutinas Java externas que se registran en la base de datos de RDS para Db2 como procedimientos almacenados externos.

**Topics**
+ [Limitaciones de los procedimientos almacenados externos basados en Java](#db2-external-stored-procedures-java-limitations)
+ [Configuración de procedimientos almacenados externos basados en Java](#db2-external-stored-procedures-java-configuring)

### Limitaciones de los procedimientos almacenados externos basados en Java
<a name="db2-external-stored-procedures-java-limitations"></a>

Antes de desarrollar su rutina externa, tenga en cuenta las siguientes limitaciones y restricciones.

Para crear su rutina externa, asegúrese de utilizar el kit de desarrollo de Java (JDK) proporcionado por Db2. Para obtener más información, consulte [Java software support for Db2 database products](https://www.ibm.com/docs/en/db2/11.5?topic=servers-java-software-support-db2-database-products).

Su programa Java solo puede crear archivos en el directorio `/tmp` y Amazon RDS no permite habilitar permisos ejecutables ni permisos de definición de ID de usuario (SUID) en estos archivos. Su programa Java tampoco puede usar llamadas al sistema de sockets ni las siguientes llamadas al sistema:
+ \$1sysctl
+ acct
+ afs\$1syscall
+ bpf
+ capset
+ chown
+ chroot
+ create\$1module
+ delete\$1module
+ fanotify\$1init
+ fanotify\$1mark
+ finit\$1module
+ fsconfig
+ fsopen
+ fspick
+ get\$1kernel\$1syms
+ getpmsg
+ init\$1module
+ mount
+ move\$1mount
+ nfsservctl
+ open\$1by\$1handle\$1at
+ open\$1tree
+ pivot\$1root
+ putpmsg
+ query\$1module
+ quotactl
+ reboot
+ security
+ setdomainname
+ setfsuid
+ sethostname
+ sysfs
+ tuxcall
+ umount2
+ uselib
+ ustat
+ vhangup
+ vserver

Para conocer las restricciones adicionales en las rutinas externas de Db2, consulte [Restrictions on external routines](https://www.ibm.com/docs/en/db2/11.5?topic=routines-restrictions-external) en la documentación de IBM Db2.

### Configuración de procedimientos almacenados externos basados en Java
<a name="db2-external-stored-procedures-java-configuring"></a>

Para configurar un procedimiento almacenado externo, cree un archivo .jar con su rutina externa, instálelo en la base de datos de RDS para Db2 y, a continuación, regístrelo como procedimiento almacenado externo.

**Topics**
+ [Paso 1: habilite los procedimientos almacenados externos](#db2-external-stored-procedures-java-enable)
+ [Paso 2: instale el archivo .jar con la rutina externa](#db2-external-stored-procedures-java-install-jar)
+ [Paso 3: registre el procedimiento almacenado externo](#db2-external-stored-procedures-java-register)
+ [Paso 4: valide el procedimiento almacenado externo](#db2-external-stored-procedures-java-validate)

#### Paso 1: habilite los procedimientos almacenados externos
<a name="db2-external-stored-procedures-java-enable"></a>

Para habilitar los procedimientos almacenados externos, establezca el parámetro `db2_alternate_authz_behaviour` en uno de los valores siguientes en un grupo de parámetros personalizado asociado a la instancia de base de datos:
+ `EXTERNAL_ROUTINE_DBADM`: concede de forma implícita a cualquier usuario, grupo o rol con autoridad `DBADM` el permiso `CREATE_EXTERNAL_ROUTINE`.
+ `EXTERNAL_ROUTINE_DBAUTH`: permite a un usuario con autoridad `DBADM` conceder el permiso `CREATE_EXTERNAL_ROUTINE` a cualquier usuario, grupo o rol. En este caso, no se concede implícitamente este permiso a ningún usuario, grupo o rol, ni siquiera a un usuario con autoridad `DBADM`.

Para obtener más información sobre esta configuración, consulte [GRANT (database authorities) statement](https://www.ibm.com/docs/en/db2/11.5?topic=statements-grant-database-authorities) en la documentación de IBM Db2.

Puede crear y modificar una instancia de base de datos mediante la Consola de administración de AWS, la AWS CLI o la API de Amazon RDS.

##### Consola
<a name="db2-external-stored-procedures-java-enable-console"></a>

**Configuración del parámetro db2\$1alternate\$1authz\$1behaviour en un grupo de parámetros personalizado**

1. Si desea utilizar un grupo de parámetros de base de datos personalizado diferente al que está utilizando su instancia de base de datos, cree un nuevo grupo de parámetros de base de datos. Si utiliza el modelo traiga su propia licencia (BYOL), asegúrese de que el nuevo grupo de parámetros personalizado incluya los ID de IBM. Para obtener información acerca de estos ID, consulte [ID de IBM para traiga su propia licencia (BYOL) para Db2](db2-licensing.md#db2-prereqs-ibm-info). Para obtener más información acerca de cómo crear un grupo de parámetros de base de datos, consulte [Creación de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Creating.md).

1. Establezca el valor del parámetro `db2_alternate_authz_behaviour` en su grupo de parámetros personalizados. Para obtener más información acerca de cómo modificar un grupo de parámetros, consulte [Modificación de los parámetros de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Modifying.md).

##### AWS CLI
<a name="db2-external-stored-procedures-java-enable-cli"></a>

**Configuración del parámetro db2\$1alternate\$1authz\$1behaviour en un grupo de parámetros personalizado**

1. Si desea utilizar un grupo de parámetros de base de datos personalizado diferente al que está utilizando su instancia de base de datos, cree un grupo de parámetros personalizado ejecutando el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-parameter-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-parameter-group.html). Si utiliza el modelo traiga su propia licencia (BYOL), asegúrese de que el nuevo grupo de parámetros personalizado incluya los ID de IBM. Para obtener información acerca de estos ID, consulte [ID de IBM para traiga su propia licencia (BYOL) para Db2](db2-licensing.md#db2-prereqs-ibm-info).

   Incluya las siguientes opciones obligatorias:
   + `--db-parameter-group-name`: un nombre para el grupo de parámetros que se está creando.
   + `--db-parameter-group-family`: la edición y la versión principal del motor de Db2. Los valores válidos son `db2-se-11.5` y `db2-ae-11.5`. 
   + `--description`: la descripción para este grupo de parámetros.

   Para obtener más información acerca de cómo crear un grupo de parámetros de base de datos, consulte [Creación de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Creating.md).

   En el siguiente ejemplo, se muestra cómo crear un grupo de parámetros personalizado denominado `MY_EXT_SP_PARAM_GROUP` para la familia de grupos de parámetros `db2-se-11.5`.

   Para Linux, macOS o Unix:

   ```
   aws rds create-db-parameter-group \
   --region us-east-1 \
   --db-parameter-group-name MY_EXT_SP_PARAM_GROUP \
   --db-parameter-group-family db2-se-11.5 \ 
   --description "test db2 external routines"
   ```

   Para Windows:

   ```
   aws rds create-db-parameter-group ^
   --region us-east-1 ^
   --db-parameter-group-name MY_EXT_SP_PARAM_GROUP ^
   --db-parameter-group-family db2-se-11.5 ^ 
   --description "test db2 external routines"
   ```

1. Modifique el parámetro `db2_alternate_authz_behaviour` en su grupo de parámetros personalizados ejecutando el comando [https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-parameter-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-parameter-group.html).

   Incluya las siguientes opciones obligatorias:
   + `--db-parameter-group-name`: el nombre del grupo de parámetros creado.
   + `--parameters`: una matriz de los nombres de parámetros, valores y métodos de aplicación para la actualización del parámetro.

   Para obtener más información acerca de cómo modificar un grupo de parámetros, consulte [Modificación de los parámetros de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Modifying.md).

   En el siguiente ejemplo, se muestra cómo modificar el grupo de parámetros `MY_EXT_SP_PARAM_GROUP` configurando el valor de `db2_alternate_authz_behaviour` en `EXTERNAL_ROUTINE_DBADM`.

   Para Linux, macOS o Unix:

   ```
   aws rds modify-db-parameter-group \
       --db-parameter-group-name MY_EXT_SP_PARAM_GROUP \
       --parameters "ParameterName='db2_alternate_authz_behaviour',ParameterValue='EXTERNAL_ROUTINE_DBADM',ApplyMethod=immediate"
   ```

   Para Windows:

   ```
   aws rds modify-db-parameter-group ^
       --db-parameter-group-name MY_EXT_SP_PARAM_GROUP ^
       --parameters "ParameterName='db2_alternate_authz_behaviour',ParameterValue='EXTERNAL_ROUTINE_DBADM',ApplyMethod=immediate"
   ```

##### API de RDS
<a name="db2-external-stored-procedures-java-enable-api"></a>

**Configuración del parámetro db2\$1alternate\$1authz\$1behaviour en un grupo de parámetros personalizado**

1. Si desea utilizar un grupo de parámetros de base de datos personalizado diferente del que utiliza su instancia de base de datos, cree un nuevo grupo de parámetros de base de datos mediante la operación [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBParameterGroup.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBParameterGroup.html) de la API de Amazon RDS. Si utiliza el modelo traiga su propia licencia (BYOL), asegúrese de que el nuevo grupo de parámetros personalizado incluya los ID de IBM Db2. Para obtener información acerca de estos ID, consulte [ID de IBM para traiga su propia licencia (BYOL) para Db2](db2-licensing.md#db2-prereqs-ibm-info).

   Incluya los siguientes parámetros obligatorios:
   + `DBParameterGroupName`
   + `DBParameterGroupFamily`
   + `Description`

   Para obtener más información acerca de cómo crear un grupo de parámetros de base de datos, consulte [Creación de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Creating.md).

1. Modifique el parámetro `db2_alternate_authz_behaviour` del grupo de parámetros personalizado que creó mediante la operación [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBParameterGroup.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBParameterGroup.html) de la API de RDS.

   Incluya los siguientes parámetros obligatorios:
   + `DBParameterGroupName`
   + `Parameters`

   Para obtener más información acerca de cómo modificar un grupo de parámetros, consulte [Modificación de los parámetros de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Modifying.md).

#### Paso 2: instale el archivo .jar con la rutina externa
<a name="db2-external-stored-procedures-java-install-jar"></a>

Tras crear la rutina de Java, cree el archivo .jar y, a continuación, ejecute `db2 "call sqlj.install_jar('file:file_path',jar_ID)"` para instalarlo en la base de datos de RDS para Db2.

En el siguiente ejemplo, se muestra cómo crear una rutina de Java e instalarla en una base de datos de RDS para Db2. En el ejemplo, se incluye un código de ejemplo para una rutina sencilla que puede utilizar para probar el proceso. En este ejemplo, se da por supuesto lo siguiente:
+ El código Java se compila en un servidor en el que está instalado Db2. Se trata de una práctica recomendada, ya que si no se compila con el JDK proporcionado por IBM, se pueden producir errores sin ninguna explicación.
+ El servidor tiene la base de datos de RDS para Db2 catalogada localmente.

Si desea probar el proceso con el siguiente código de ejemplo, cópielo y guárdelo en un archivo denominado `MYJAVASP.java`.

```
import java.sql.*;
public class MYJAVASP
{
public static void my_JAVASP (String inparam) throws SQLException, Exception
{
try
{
// Obtain the calling context's connection details.
Connection myConn = DriverManager.getConnection("jdbc:default:connection");
String myQuery = "INSERT INTO TEST.TEST_TABLE VALUES (?, CURRENT DATE)";
PreparedStatement myStmt = myConn.prepareStatement(myQuery);
myStmt.setString(1, inparam);
myStmt.executeUpdate();
}
catch (SQLException sql_ex)
{
throw sql_ex;
}
catch (Exception ex)
{
throw ex;
}
}
```

El siguiente comando compila la rutina de Java.

```
~/sqllib/java/jdk64/bin/javac MYJAVASP.java
```

El siguiente comando crea el archivo .jar.

```
~/sqllib/java/jdk64/bin/jar cvf MYJAVASP.jar MYJAVASP.class
```

Los siguientes comandos se conectan a la base de datos denominada `MY_DB2_DATABASE` e instalan el archivo .jar.

```
db2 "connect to MY_DB2_DATABASE user master_username using master_password" 

db2 "call sqlj.install_jar('file:/tmp/MYJAVASP.jar','MYJAVASP')"
db2 "call sqlj.refresh_classes()"
```

#### Paso 3: registre el procedimiento almacenado externo
<a name="db2-external-stored-procedures-java-register"></a>

Tras instalar el archivo .jar en la base de datos de RDS para Db2, regístrelo como procedimiento almacenado ejecutando el comando `db2 CREATE PROCEDURE` o `db2 REPLACE PROCEDURE`.

El siguiente ejemplo muestra cómo conectarse a la base de datos y registrar la rutina de Java creada en el paso anterior como un procedimiento almacenado.

```
db2 "connect to MY_DB2_DATABASE user master_username using master_password"

create procedure TESTSP.MYJAVASP (in input char(6))
specific myjavasp
dynamic result sets 0
deterministic
language java
parameter style java
no dbinfo
fenced
threadsafe
modifies sql data
program type sub
external name 'MYJAVASP!my_JAVASP';
```

#### Paso 4: valide el procedimiento almacenado externo
<a name="db2-external-stored-procedures-java-validate"></a>

Utilice los siguientes pasos para probar el procedimiento almacenado externo de ejemplo que se registró en el paso anterior.

**Validación del procedimiento almacenado externo**

1. Cree una tabla como `TEST.TEST_TABLE` en el siguiente ejemplo.

   ```
   db2 "create table TEST.TEST_TABLE(C1 char(6), C2 date)"
   ```

1. Llame al nuevo procedimiento almacenado externo. La llamada devuelve un estado de `0`.

   ```
   db2 "call TESTSP.MYJAVASP('test')"
   Return Status = 0
   ```

1. Consulte la tabla que creó en el paso 1 para comprobar los resultados de la llamada al procedimiento almacenado.

   ```
   db2 "SELECT * from TEST.TEST_TABLE"
   ```

   La consulta produce una salida similar a la del ejemplo siguiente:

   ```
   C1     C2
   ------ ----------
   test   02/05/2024
   ```

# Problemas conocidos y limitaciones para Amazon RDS para Db2
<a name="db2-known-issues-limitations"></a>

Los siguientes elementos son problemas y limitaciones conocidos para trabajar con Amazon RDS para Db2:

**Topics**
+ [Limitación de autenticación](#db2-known-issues-limitations-authentication-limit)
+ [Rutinas no restringidas](#db2-known-issues-limitations-non-fenced-routines)
+ [Espacios de tablas de almacenamiento no automáticos durante la migración](#db2-known-issues-limitations-non-automatic-storage-tablespaces)
+ [Establecimiento del parámetro db2\$1compatibility\$1vector](#db2-known-issues-limitations-db2-compatibility-vector)
+ [Migración de bases de datos que contienen paquetes NO VÁLIDOS](#db2-known-issues-limitations-invalid-packages-migrating)

## Limitación de autenticación
<a name="db2-known-issues-limitations-authentication-limit"></a>

Amazon RDS establece `db2auth` en `JCC_ENFORCE_SECMEC` de manera predeterminada. Sin embargo, si no quiere aplicar el cifrado de los identificadores de usuario y contraseñas a través de la red, puede anular esta configuración cambiando el parámetro `db2auth` a `CLEAR_TEXT` dentro del grupo de parámetros. Para obtener más información, consulte [Modificación de los parámetros de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Modifying.md).

## Rutinas no restringidas
<a name="db2-known-issues-limitations-non-fenced-routines"></a>

RDS para Db2 no admite la creación de rutinas no restringidas ni la migración de estas rutinas mediante la creación de copias de seguridad y la restauración de los datos. Para comprobar si la base de datos contiene rutinas no restringidas, ejecute el siguiente comando de SQL:

```
SELECT 'COUNT:' || count(*) FROM SYSCAT.ROUTINES where fenced='N' and routineschema not in ('SQLJ','SYSCAT','SYSFUN','SYSIBM','SYSIBMADM','SYSPROC','SYSTOOLS')
```

## Espacios de tablas de almacenamiento no automáticos durante la migración
<a name="db2-known-issues-limitations-non-automatic-storage-tablespaces"></a>

RDS para Db2 no admite la creación de nuevos espacios de tablas de almacenamiento no automáticos. Al utilizar la restauración nativa para una migración única de la base de datos, RDS para Db2 convierte automáticamente los espacios de tabla de almacenamiento no automáticos en espacios automáticos y, a continuación, restaura la base de datos en RDS para Db2. Para obtener información sobre las migraciones únicas, consulte [Migración de Linux a Linux de Amazon RDS para Db2](db2-one-time-migration-linux.md)y [Migración de AIX o Windows a Linux de Amazon RDS para Db2](db2-one-time-migration-aix-windows-linux.md).

## Establecimiento del parámetro db2\$1compatibility\$1vector
<a name="db2-known-issues-limitations-db2-compatibility-vector"></a>

Con Amazon RDS, puede crear una base de datos inicial al crear la instancia de base de datos y, a continuación, modificar los parámetros de un grupo de parámetros asociado. Sin embargo, en el caso de Db2, si desea establecer el parámetro `db2_compatibility_vector` en un grupo de parámetros, primero debe modificar el parámetro en un grupo de parámetros personalizado, crear la instancia de base de datos sin una base de datos y, a continuación, crear una base de datos mediante el procedimiento `rdsadmin.create_database` almacenado.

**Establecimiento del parámetro `db2_compatibility_vector`**

1. [Cree un grupo de parámetros personalizado](USER_WorkingWithParamGroups.Creating.md). (No puede modificar parámetros en un grupo de parámetros predeterminado).

1. [Modifique el parámetro](USER_WorkingWithParamGroups.Modifying.md).

1. [Cree una instancia de base de datos](USER_CreateDBInstance.md).

1. [Cree una base de datos](db2-managing-databases.md#db2-creating-database) mediante el procedimiento `rdsadmin.create_database` almacenado.

1. [Asocie el grupo de parámetros](USER_WorkingWithParamGroups.Associating.md) a la instancia de base de datos que contiene la base de datos. 

## Migración de bases de datos que contienen paquetes NO VÁLIDOS
<a name="db2-known-issues-limitations-invalid-packages-migrating"></a>

Si migra las bases de datos de Db2 que contienen paquetes `INVALID` a RDS para Db2 mediante el comando `RESTORE`, es posible que se produzcan problemas al empezar a utilizar las bases de datos. Los paquetes `INVALID` pueden provocar problemas debido a la configuración de autorización del usuario de la instancia de base de datos `rdsdb` y a la retirada de la autorización de `PUBLIC`. Los paquetes de `INVALID` provocan el error de los siguientes comandos:
+ `db2updv115`
+ `db2 "call SYSPROC.ADMIN_REVALIDATE_DB_OBJECTS()"`

Antes de migrar la base de datos con el comando `RESTORE`, asegúrese de que la base de datos no contenga paquetes `INVALID` ejecutando el siguiente comando:

```
db2 "SELECT 'COUNT:' || count(*) FROM SYSCAT.INVALIDOBJECTS"
```

Si el comando devuelve un recuento superior a cero, ejecute el siguiente comando:

```
db2 "call SYSPROC.ADMIN_REVALIDATE_DB_OBJECTS()"
```

Después, ejecute el comando anterior para confirmar que la base de datos ya no contiene paquetes `INVALID`.

```
db2 "SELECT 'COUNT:' || count(*) FROM SYSCAT.INVALIDOBJECTS"
```

Ahora estará listo para hacer una copia de seguridad de la base de datos y restaurarla en la instancia de base de datos de RDS para Db2.

# Referencia de procedimientos almacenados de Amazon RDS para Db2
<a name="db2-stored-procedures"></a>

Para administrar sus instancias de base de datos de Amazon RDS para Db2 ejecutando el motor Db2, llame a los procedimientos almacenados integrados.


| Procedimiento almacenado | Categoría | Descripción | 
| --- | --- | --- | 
|  [rdsadmin.activate\$1database](db2-sp-managing-databases.md#db2-sp-activate-database)  |  Bases de datos  |  Utilice el procedimiento almacenado `rdsadmin.activate_database` para activar una base de datos en una instancia de base de datos independiente de RDS para Db2.   | 
|  [rdsadmin.add\$1groups](db2-sp-granting-revoking-privileges.md#db2-sp-add-groups)  |  Concesión y revocación de privilegios  |  Utilice el procedimiento almacenado `rdsadmin.add_groups` para agregar uno o más grupos a un usuario para una base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.add\$1user](db2-sp-granting-revoking-privileges.md#db2-sp-add-user)  |  Concesión y revocación de privilegios  |  Utilice el procedimiento almacenado `rdsadmin.add_user` para agregar un usuario a una lista de autorización para una base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.alter\$1bufferpool](db2-sp-managing-buffer-pools.md#db2-sp-alter-buffer-pool)  |  Grupos de búferes  |  Utilice el procedimiento almacenado `rdsadmin.alter_bufferpool` para modificar un grupo de búferes para una base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.alter\$1tablespace](db2-sp-managing-tablespaces.md#db2-sp-alter-tablespace)  |  Espacios de tabla  |  Utilice el procedimiento almacenado `rdsadmin.alter_tablespace` para modificar un espacio de tabla para una base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.backup\$1database](db2-sp-managing-databases.md#db2-sp-backup-database)  |  Database  |  Utilice el procedimiento almacenado `rdsadmin.backup_database` para realizar la copia de seguridad de una base de datos en una instancia de base de datos de RDS para Db2 en un bucket de Amazon S3. A continuación, puede restaurar la copia de seguridad de Amazon S3 en una instancia de base de datos de RDS para Db2 o en otra ubicación, como un servidor local.  | 
|  [rdsadmin.catalog\$1storage\$1access](db2-sp-managing-storage-access.md#db2-sp-catalog-storage-access)  |  Acceso al almacenamiento  |  Utilice el procedimiento almacenado `rdsadmin.catalog_storage_access` para catalogar un alias de almacenamiento para acceder a un bucket de Amazon S3 con archivos de datos de Db2 para una base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.change\$1password](db2-sp-granting-revoking-privileges.md#db2-sp-change-password)  |  Concesión y revocación de privilegios  |  Utilice el procedimiento almacenado `rdsadmin.change_password` para cambiar la contraseña de usuario de una base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.complete\$1rollforward](db2-sp-managing-databases.md#db2-sp-complete-rollforward)  |  Bases de datos  |  Utilice el procedimiento almacenado `rdsadmin.complete_rollforward` para poner en línea una base de datos en una instancia de RDS para Db2 desde un estado `ROLL-FORWARD PENDING`. Se produce un estado `ROLL-FORWARD PENDING` cuando se llama a [rdsadmin.rollforward\$1database](db2-sp-managing-databases.md#db2-sp-rollforward-database) pero se establece el parámetro `complete_rollforward` en `FALSE`.  | 
|  [rdsadmin.configure\$1db\$1audit](db2-sp-managing-audit-policies.md#db2-sp-configure-db-audit)  |  Políticas de auditoría  |  Utilice el procedimiento almacenado `rdsadmin.configure_db_audit` para modificar una política de auditoría para una base de datos en una instancia de base de datos de RDS para Db2. Si no existe ninguna política de auditoría, al ejecutar este procedimiento almacenado se crea una política de auditoría.  | 
|  [rdsadmin.create\$1bufferpool](db2-sp-managing-buffer-pools.md#db2-sp-create-buffer-pool)  |  Grupos de búferes  |  Utilice el procedimiento almacenado `rdsadmin.create_bufferpool` para crear un grupo de búferes para una base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.create\$1database](db2-sp-managing-databases.md#db2-sp-create-database)  |  Bases de datos  |  Utilice el procedimiento almacenado `rdsadmin.create_database` para crear una base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.create\$1role](db2-sp-granting-revoking-privileges.md#db2-sp-create-role)  |  Concesión y revocación de privilegios  |  Utilice el procedimiento almacenado `rdsadmin.create_role` para crear un rol y asociarlo a una base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.create\$1tablespace](db2-sp-managing-tablespaces.md#db2-sp-create-tablespace)  |  Espacios de tabla  |  Utilice el procedimiento almacenado `rdsadmin.create_tablespace` para crear un espacio de tabla para una base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.db2pd\$1command](db2-sp-managing-databases.md#db2-sp-db2pd-command)  |  Bases de datos  |  Utilice el procedimiento `rdsadmin.db2pd_command` almacenado para recopilar información sobre una base de datos en una instancia de base de datos de RDS para Db2. Esta información puede ayudar a supervisar y solucionar problemas de bases de datos en RDS para Db2.  | 
|  [rdsadmin.db2support\$1command](db2-sp-managing-databases.md#db2-sp-db2support-command)  |  Bases de datos  |  Utilice el procedimiento almacenado `rdsadmin.db2support_command` para recopilar información de diagnóstico sobre una base de datos en una instancia de DB de RDS para Db2 y cárguela en un bucket de Amazon S3.  | 
|  [rdsadmin.dbadm\$1grant](db2-sp-granting-revoking-privileges.md#db2-sp-dbadm-grant)  |  Concesión y revocación de privilegios  |  Utilice el procedimiento almacenado `rdsadmin.dbadm_grant` para conceder uno o más tipos de autorización (`DBADM`, `ACCESSCTRL` o `DATAACCESS`) a uno o más roles, usuarios o grupos de una base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.dbadm\$1revoke](db2-sp-granting-revoking-privileges.md#db2-sp-dbadm-revoke)  |  Concesión y revocación de privilegios  |  Utilice el procedimiento almacenado `rdsadmin.dbadm_revoke` para revocar uno o más tipos de autorización (`DBADM`, `ACCESSCTRL` o `DATAACCESS`) de uno o más roles, usuarios o grupos para una base de datos en una instancia de base de datos de RDS para Db2.  | 
|   [rdsadmin.deactivate\$1database](db2-sp-managing-databases.md#db2-sp-deactivate-database)  |  Bases de datos  |  Utilice el procedimiento almacenado `rdsadmin.deactivate_database` para desactivar una base de datos en una instancia de base de datos de RDS para Db2. Puede desactivar las bases de datos para conservar los recursos de memoria.  | 
|  [rdsadmin.disable\$1db\$1audit](db2-sp-managing-audit-policies.md#db2-sp-disable-db-audit)  |  Políticas de auditoría  |  Utilice el procedimiento almacenado `rdsadmin.disable_db_audit` para detener el registro de auditorías y eliminar una política de auditoría de una base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.drop\$1bufferpool](db2-sp-managing-buffer-pools.md#db2-sp-drop-buffer-pool)  |  Grupos de búferes  |  Utilice el procedimiento almacenado `rdsadmin.drop_bufferpool` para descartar un grupo de búferes para una base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.drop\$1database](db2-sp-managing-databases.md#db2-sp-drop-database)  |  Bases de datos  |  Utilice el procedimiento almacenado `rdsadmin.drop_database` para descartar una base de datos de una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.drop\$1role](db2-sp-granting-revoking-privileges.md#db2-sp-drop-role)  |  Concesión y revocación de privilegios  |  Utilice el procedimiento almacenado `rdsadmin.drop_role` para eliminar un rol de una base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.drop\$1tablespace](db2-sp-managing-tablespaces.md#db2-sp-drop-tablespace)  |  Espacios de tabla  |  Utilice el procedimiento almacenado `rdsadmin.drop_tablespace` para descartar un espacio de tabla de una base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.fgac\$1command](db2-sp-managing-databases.md#db2-sp-fgac-command)  |  Bases de datos  |  Use el procedimiento almacenado `rdsadmin.fgac_command` para controlar el acceso por fila o columna a los datos de tabla de la base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.force\$1application](db2-sp-managing-databases.md#db2-sp-force-application)  |  Bases de datos  |  Utilice el procedimiento almacenado `rdsadmin.force_application` para forzar a las aplicaciones a salir de una base de datos en una instancia de base de datos de RDS para Db2 para realizar tareas de mantenimiento.   | 
|  [rdsadmin.grant\$1role](db2-sp-granting-revoking-privileges.md#db2-sp-grant-role)  |  Concesión y revocación de privilegios  |  Utilice el procedimiento almacenado `rdsadmin.grant_role` para asignar un rol a un rol, usuario o grupo del beneficiario en una base de datos en una instancia de base de datos de RDS para Db2. También puede utilizar este procedimiento almacenado para conceder al rol del beneficiario la autorización `DBADM` para asignar roles.  | 
|  [rdsadmin.list\$1archive\$1log\$1information](db2-sp-managing-databases.md#db2-sp-list-archive-log-information)  |  Bases de datos  |  Utilice el procedimiento almacenado `rdsadmin.list_archive_log_information` para devolver información sobre los registros de archivo de una base de datos en una instancia de base de datos de RDS para Db2. Esta información incluye detalles como el tamaño y la fecha de creación de los archivos de registro individuales, y el almacenamiento total utilizado por los archivos de registro de archivo.  | 
|  [rdsadmin.list\$1sid\$1group\$1mapping](db2-sp-granting-revoking-privileges.md#db2-sp-list-sid-group-mapping)  |  Concesión y revocación de privilegios  |  Utilice el procedimiento almacenado `rdsadmin.list_sid_group_mapping` para devolver una lista de todos los identificadores de seguridad (SID) y las asignaciones de grupos de Active Directory configuradas en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.list\$1users](db2-sp-granting-revoking-privileges.md#db2-sp-list-users)  |  Concesión y revocación de privilegios  |  Utilice el procedimiento almacenado `rdsadmin.list_users` para devolver una lista de usuarios en una lista de autorizaciones para una base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.reactivate\$1database](db2-sp-managing-databases.md#db2-sp-reactivate-database)  |  Bases de datos  |  Utilice el procedimiento almacenado `rdsadmin.reactivate_database` para reactivar una base de datos en una instancia de base de datos de RDS para Db2 después de realizar cambios en la configuración de la base de datos. Para una base de datos en una instancia de base de datos independiente, puede utilizar este procedimiento almacenado o el procedimiento almacenado [rdsadmin.activate\$1database](db2-sp-managing-databases.md#db2-sp-activate-database). Para una base de datos en una instancia de base de datos de origen de réplica, debe utilizar el procedimiento almacenado `rdsadmin.reactivate_database`.  | 
|  [rdsadmin.remove\$1groups](db2-sp-granting-revoking-privileges.md#db2-sp-remove-groups)  |  Concesión y revocación de privilegios  |  Utilice el procedimiento almacenado `rdsadmin.remove_groups` para eliminar uno o más grupos de un usuario para una base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.remove\$1sid\$1group\$1mapping](db2-sp-granting-revoking-privileges.md#db2-sp-remove-sid-group-mapping)  |  Concesión y revocación de privilegios  |  Utilice el procedimiento almacenado `rdsadmin.remove_sid_group_mapping` para eliminar un identificador de seguridad (SID) y su correspondiente asignación de grupo de Active Directory de una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.remove\$1user](db2-sp-granting-revoking-privileges.md#db2-sp-remove-user)  |  Concesión y revocación de privilegios  |  Utilice el procedimiento almacenado `rdsadmin.remove_user` para eliminar un usuario de una lista de autorización para una base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.rename\$1tablespace](db2-sp-managing-tablespaces.md#db2-sp-rename-tablespace)  |  Espacios de tabla  |  Utilice el procedimiento almacenado `rdsadmin.rename_tablespace` para renombrar un espacio de tabla para una base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.restore\$1database](db2-sp-managing-databases.md#db2-sp-restore-database)  |  Bases de datos  |  Utilice el procedimiento almacenado `rdsadmin.restore_database` para restaurar una base de datos en una instancia de base de datos de RDS para Db2 de un bucket de Amazon S3.  | 
|  [rdsadmin.revoke\$1role](db2-sp-granting-revoking-privileges.md#db2-sp-revoke-role)  |  Concesión y revocación de privilegios  |  Utilice el procedimiento almacenado `rdsadmin.revoke_role` para revocar un rol de un rol, usuario o grupo del beneficiario en una base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.rollforward\$1database](db2-sp-managing-databases.md#db2-sp-rollforward-database)  |  Bases de datos  |  Utilice el procedimiento almacenado `rdsadmin.rollforward_database` para poner en línea una base de datos en una instancia de base de datos de RDS para Db2 y aplicar los registros de transacciones después de restaurar una base de datos en una instancia de base de datos de RDS para Db2 mediante una llamada a [rdsadmin.restore\$1database](db2-sp-managing-databases.md#db2-sp-restore-database).  | 
|  [rdsadmin.rollforward\$1status](db2-sp-managing-databases.md#db2-sp-rollforward-status)  |  Bases de datos  |  Utilice el procedimiento almacenado `rdsadmin.rollforward_status` para consultar el estado de avance de la llamada al procedimiento [rdsadmin.rollforward\$1database](db2-sp-managing-databases.md#db2-sp-rollforward-database) o [rdsadmin.complete\$1rollforward](db2-sp-managing-databases.md#db2-sp-complete-rollforward) almacenado en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.set\$1archive\$1log\$1retention](db2-sp-managing-databases.md#db2-sp-set-archive-log-retention)  |  Bases de datos  |  Utilice el procedimiento almacenado `rdsadmin.set_archive_log_retention` para configurar durante cuánto tiempo se retendrán los archivos de registro de una base de datos en una instancia de base de datos de RDS para Db2. También puede usar este procedimiento almacenado para deshabilitar la retención del registro de archivos.  | 
|  [rdsadmin.set\$1configuration](db2-sp-managing-databases.md#db2-sp-set-configuration)  |  Bases de datos  |  Utilice el procedimiento almacenado `rdsadmin.set_configuration` para configurar determinadas opciones para una base de datos en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.set\$1sid\$1group\$1mapping](db2-sp-granting-revoking-privileges.md#db2-sp-set-sid-group-mapping)  |  Concesión y revocación de privilegios  |  Utilice el procedimiento almacenado `rdsadmin.set_sid_group_mapping` para crear una asignación entre un identificador de seguridad (SID) y su correspondiente grupo de Active Directory en una instancia de base de datos de RDS para Db2.  | 
|  [rdsadmin.show\$1archive\$1log\$1retention](db2-sp-managing-databases.md#db2-sp-show-archive-log-retention)  |  Bases de datos  | Utilice el procedimiento almacenado rdsadmin.show\$1archive\$1log\$1retention para devolver la configuración actual de retención del registro de archivos de una base de datos en una instancia de base de datos de RDS para Db2. | 
|  [rdsadmin.show\$1configuration](db2-sp-managing-databases.md#db2-sp-show-configuration)  |  Bases de datos  | Utilice el procedimiento almacenado rdsadmin.show\$1configuration para devolver una o más configuraciones modificables para una base de datos en una instancia de base de datos de RDS para Db2. | 
|  [rdsadmin.uncatalog\$1storage\$1access](db2-sp-managing-storage-access.md#db2-sp-uncatalog-storage-access)  |  Acceso al almacenamiento  |  Utilice el procedimiento `rdsadmin.uncatalog_storage_access` almacenado para eliminar un alias de almacenamiento para acceder a un bucket de Amazon S3 con archivos de datos de Db2.  | 
|  [rdsadmin.update\$1db\$1param](db2-sp-managing-databases.md#db2-sp-update-db-param)  |  Bases de datos  | Utilice el procedimiento almacenado rdsadmin.update\$1db\$1param para actualizar los parámetros de base de datos para una base de datos en una instancia de base de datos de RDS para Db2. | 
|  [rdsadmin.enable\$1archive\$1log\$1copy](db2-sp-managing-databases.md#db2-sp-enable_archive_log_copy)  |  Bases de datos  | Utilice el procedimiento almacenado rdsadmin.enable\$1archive\$1log\$1copy para habilitar la copia del registro de archivos de la base de datos de RDS Db2 en Amazon S3. | 
|  [rdsadmin.disable\$1archive\$1log\$1copy](db2-sp-managing-databases.md#db2-sp-disable_archive_log_copy)  |  Bases de datos  | Utilice el procedimiento almacenado rdsadmin.disable\$1archive\$1log\$1copy para deshabilitar la copia del registro de archivos de la base de datos de RDS Db2 en Amazon S3. | 

**Topics**
+ [Consideraciones sobre los procedimientos almacenados de Amazon RDS para Db2](db2-stored-procedures-considerations.md)
+ [Procedimientos almacenados para conceder y revocar privilegios de RDS para Db2](db2-sp-granting-revoking-privileges.md)
+ [Procedimientos almacenados para políticas de auditoría de RDS para Db2](db2-sp-managing-audit-policies.md)
+ [Procedimientos almacenados de grupos de búferes de RDS para Db2](db2-sp-managing-buffer-pools.md)
+ [Procedimientos almacenados de bases de datos de RDS para Db2](db2-sp-managing-databases.md)
+ [Procedimientos almacenados de acceso al almacenamiento de RDS para Db2](db2-sp-managing-storage-access.md)
+ [Procedimientos almacenados de espacios de tablas de RDS para Db2](db2-sp-managing-tablespaces.md)

# Consideraciones sobre los procedimientos almacenados de Amazon RDS para Db2
<a name="db2-stored-procedures-considerations"></a>

Antes de utilizar los procedimientos almacenados del sistema para Amazon RDS para las instancias de bases de datos de Db2 que ejecuten el motor de Db2, revise la información siguiente:
+ Antes de ejecutar los procedimientos almacenados, primero debe conectarse a la base de datos de `rdsadmin` como usuario maestro de su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por su propia información.

  ```
  db2 "connect to rdsadmin user master_username using master_password"
  ```
+ Los procedimientos almacenados devuelven el parámetro `ERR_MESSAGE`, que indica si el procedimiento almacenado se ha ejecutado correctamente o no; en caso negativo, también especifica el motivo.

  **Ejemplos**

  El siguiente ejemplo indica que el procedimiento almacenado se ha ejecutado correctamente.

  ```
  Parameter Name : ERR_MESSAGE
  Parameter Value : -
  Return Status = 0
  ```

  El siguiente ejemplo indica que el procedimiento almacenado no se ha ejecutado correctamente porque el nombre del bucket de Amazon S3 utilizado en el procedimiento almacenado no era válido.

  ```
  Parameter Name : ERR_MESSAGE
  Parameter Value : Invalid S3 bucket name
  Return Status = -1006
  ```

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

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

# Procedimientos almacenados para conceder y revocar privilegios de RDS para Db2
<a name="db2-sp-granting-revoking-privileges"></a>

Los procedimientos almacenados integrados que se describen en este tema administran usuarios, roles, grupos y autorización para bases de datos de Amazon RDS para Db2. Para ejecutar estos procedimientos, el usuario maestro debe conectarse primero a la base de datos `rdsadmin`. 

Para conocer las tareas que utilizan estos procedimientos almacenados, consulte [Concesión y revocación de privilegios](db2-granting-revoking-privileges.md) y [Configuración de la autenticación Kerberos](db2-kerberos-setting-up.md). 

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

**Topics**
+ [rdsadmin.create\$1role](#db2-sp-create-role)
+ [rdsadmin.grant\$1role](#db2-sp-grant-role)
+ [rdsadmin.revoke\$1role](#db2-sp-revoke-role)
+ [rdsadmin.drop\$1role](#db2-sp-drop-role)
+ [rdsadmin.add\$1user](#db2-sp-add-user)
+ [rdsadmin.change\$1password](#db2-sp-change-password)
+ [rdsadmin.list\$1users](#db2-sp-list-users)
+ [rdsadmin.remove\$1user](#db2-sp-remove-user)
+ [rdsadmin.add\$1groups](#db2-sp-add-groups)
+ [rdsadmin.remove\$1groups](#db2-sp-remove-groups)
+ [rdsadmin.dbadm\$1grant](#db2-sp-dbadm-grant)
+ [rdsadmin.dbadm\$1revoke](#db2-sp-dbadm-revoke)
+ [rdsadmin.set\$1sid\$1group\$1mapping](#db2-sp-set-sid-group-mapping)
+ [rdsadmin.list\$1sid\$1group\$1mapping](#db2-sp-list-sid-group-mapping)
+ [rdsadmin.remove\$1sid\$1group\$1mapping](#db2-sp-remove-sid-group-mapping)

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

Crea un rol.

### Sintaxis
<a name="db2-sp-create-role-syntax"></a>

```
db2 "call rdsadmin.create_role(
    'database_name',
    'role_name')"
```

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

Se requieren los siguientes parámetros:

*database\$1name*  
Nombre de la base de datos en la que se va a ejecutar el comando. El tipo de datos es `varchar`.

*role\$1name*  
El nombre del rol que desea crear. El tipo de datos es `varchar`.

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

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

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

En el siguiente ejemplo, se crea un rol denominado `MY_ROLE` para la base de datos `DB2DB`.

```
db2 "call rdsadmin.create_role(
    'DB2DB',
    'MY_ROLE')"
```

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

Asigna un rol a un rol, usuario o grupo.

### Sintaxis
<a name="db2-sp-grant-role-syntax"></a>

```
db2 "call rdsadmin.grant_role(
    ?,
    'database_name',
    'role_name',
    'grantee',
    'admin_option')"
```

### Parameters
<a name="db2-sp-grant-role-parameters"></a>

El siguiente parámetro de salida es obligatorio: 

?  
Un marcador de parámetro que genera el identificador único de la tarea. Este parámetro solo acepta `?`.

Se requieren los siguientes parámetros de entrada:

*database\$1name*  
Nombre de la base de datos en la que se va a ejecutar el comando. El tipo de datos es `varchar`.

*role\$1name*  
El nombre del rol que desea crear. El tipo de datos es `varchar`.

*grantee*  
El rol, el usuario o el grupo que recibirá la autorización. El tipo de datos es `varchar`. Valores válidos: `ROLE`, `USER`, `GROUP`, `PUBLIC`.   
El formato debe ser un valor seguido del nombre. Separe los valores y los nombres con comas. Ejemplo: “”.: '`USER user1, user2, GROUP group1, group2`'. Reemplace los nombres con su propia información.

El siguiente parámetro de entrada es opcional:

*admin\$1option*  
Especifica si el concesionario `ROLE` tiene la autorización `DBADM` para asignar roles. El tipo de datos es `char`. El valor predeterminado es `N`.

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

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

### Ejemplos
<a name="db2-sp-grant-role-examples"></a>

**Ejemplo 1: asignación de un rol a un rol, usuario y grupo, y concesión de la autorización**

El siguiente ejemplo asigna un rol llamado `ROLE_TEST` para la base de datos `TESTDB` al rol llamado `role1`, al usuario llamado `user1` y al grupo llamado `group1`. `ROLE_TEST` recibe la autorización de administrador para asignar roles.

```
db2 "call rdsadmin.grant_role(
    ?,
    'TESTDB',
    'ROLE_TEST',
    'ROLE role1, USER user1, GROUP group1',
    'Y')"
```

**Ejemplo 2: asignación de un rol a `PUBLIC` y no concesión de la autorización**

En el siguiente ejemplo, se asigna un rol llamado `ROLE_TEST` para la base de datos `TESTDB` a `PUBLIC`. `ROLE_TEST` no recibe la autorización de administrador para asignar roles.

```
db2 "call rdsadmin.grant_role(
    ?,
    'TESTDB',
    'ROLE_TEST',
    'PUBLIC')"
```

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

Revoca un rol de un rol, usuario o grupo.

### Sintaxis
<a name="db2-sp-revoke-role-syntax"></a>

```
db2 "call rdsadmin.revoke_role(
    ?,
    'database_name',
    'role_name',
    'grantee')"
```

### Parameters
<a name="db2-sp-revoke-role-parameters"></a>

El siguiente parámetro de salida es obligatorio: 

?  
Un marcador de parámetro que genera el identificador único de la tarea. Este parámetro solo acepta ?

Se requieren los siguientes parámetros de entrada:

*database\$1name*  
Nombre de la base de datos en la que se va a ejecutar el comando. El tipo de datos es `varchar`.

*role\$1name*  
El nombre del rol que desea revocar. El tipo de datos es `varchar`.

*grantee*  
El rol, el usuario o el grupo que perderá la autorización. El tipo de datos es `varchar`. Valores válidos: `ROLE`, `USER`, `GROUP`, `PUBLIC`.   
El formato debe ser un valor seguido del nombre. Separe los valores y los nombres con comas. Ejemplo: “”.: '`USER user1, user2, GROUP group1, group2`'. Reemplace los nombres con su propia información.

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

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

### Ejemplos
<a name="db2-sp-revoke-role-examples"></a>

**Ejemplo 1: revocación de un rol, usuario y grupo**

En el siguiente ejemplo, se revoca un rol llamado `ROLE_TEST` para la base de datos `TESTDB` del rol llamado `role1`, del usuario llamado `user1` y del grupo llamado `group1`.

```
db2 "call rdsadmin.revoke_role(
    ?,
    'TESTDB',
    'ROLE_TEST',
    'ROLE role1, USER user1, GROUP group1')"
```

**Ejemplo 2: revocación del rol de `PUBLIC`**

En el siguiente ejemplo, se revoca un rol llamado `ROLE_TEST` para la base de datos `TESTDB` de `PUBLIC`. 

```
db2 "call rdsadmin.revoke_role(
    ?,
    'TESTDB',
    'ROLE_TEST',
    'PUBLIC')"
```

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

Descarta un rol.

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

```
db2 "call rdsadmin.drop_role(
    ?,
    'database_name',
    'role_name')"
```

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

El siguiente parámetro de salida es obligatorio: 

?  
Un marcador de parámetro que genera el identificador único de la tarea. Este parámetro solo acepta ?

Se requieren los siguientes parámetros de entrada:

*database\$1name*  
Nombre de la base de datos en la que se va a ejecutar el comando. El tipo de datos es `varchar`.

*role\$1name*  
El nombre del rol que desea descartar. El tipo de datos es `varchar`.

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

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

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

En el siguiente ejemplo, se descarta un rol denominado `ROLE_TEST` para la base de datos `TESTDB`.

```
db2 "call rdsadmin.drop_role(
    ?,
    'TESTDB',
    'ROLE_TEST')"
```

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

Agrega un usuario a una lista de autorizaciones.

### Sintaxis
<a name="db2-sp-add-user-syntax"></a>

```
db2 "call rdsadmin.add_user(
    'username',
    'password',
    'group_name,group_name')"
```

### Parameters
<a name="db2-sp-add-user-parameters"></a>

Se requieren los siguientes parámetros:

*Nombre de usuario de*  
El nombre de usuario de un usuario. El tipo de datos es `varchar`.

*contraseña*  
La contraseña de un usuario. El tipo de datos es `varchar`.

El siguiente parámetro es opcional:

*group\$1name*  
El nombre de un grupo al que quiera agregar al usuario. El tipo de datos es `varchar`. El valor predeterminado es una cadena vacía o null. 

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

Puede agregar un usuario a uno o más grupos separando los nombres de los grupos con comas. 

Puede crear un grupo al crear un usuario nuevo o al [agregar un grupo a un usuario existente](db2-granting-revoking-privileges.md#add-group-to-user). No puede crear un grupo por sí mismo.

**nota**  
El número máximo de usuarios que puede agregar llamando a `rdsadmin.add_user` es de 5000.

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

### Ejemplos
<a name="db2-sp-add-user-examples"></a>

En el ejemplo siguiente, se crea un usuario llamado `jorge_souza` y se asigna a los grupos denominados `sales` y `inside_sales`.

```
db2 "call rdsadmin.add_user(
    'jorge_souza',
    '*******',
    'sales,inside_sales')"
```

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

Cambia la contraseña de un usuario

### Sintaxis
<a name="db2-sp-change-password-syntax"></a>

```
db2 "call rdsadmin.change_password(
    'username',
    'new_password')"
```

### Parameters
<a name="db2-sp-change-password-parameters"></a>

Se requieren los siguientes parámetros:

*Nombre de usuario de*  
El nombre de usuario de un usuario. El tipo de datos es `varchar`.

*new\$1password*  
Una nueva contraseña para el usuario. El tipo de datos es `varchar`.

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

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

### Ejemplos
<a name="db2-sp-change-password-examples"></a>

En el siguiente ejemplo se cambia la contraseña de `jorge_souza`.

```
db2 "call rdsadmin.change_password(
    'jorge_souza',
    '*******')"
```

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

Muestra los usuarios de una lista de autorización. 

### Sintaxis
<a name="db2-sp-list-users-syntax"></a>

```
db2 "call rdsadmin.list_users()"
```

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

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

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

Elimina el usuario de la lista de autorizaciones.

### Sintaxis
<a name="db2-sp-remove-user-syntax"></a>

```
db2 "call rdsadmin.remove_user('username')"
```

### Parameters
<a name="db2-sp-remove-user-parameters"></a>

El siguiente parámetro es obligatorio:

*Nombre de usuario de*  
El nombre de usuario de un usuario. El tipo de datos es `varchar`.

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

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

### Ejemplos
<a name="db2-sp-remove-user-examples"></a>

En el siguiente ejemplo, se impide a `jorge_souza` el acceso a las bases de datos de las instancias de bases de datos de RDS para Db2.

```
db2 "call rdsadmin.remove_user('jorge_souza')"
```

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

Agrega grupos a un usuario.

### Sintaxis
<a name="db2-sp-add-groups-syntax"></a>

```
db2 "call rdsadmin.add_groups(
    'username',
    'group_name,group_name')"
```

### Parameters
<a name="db2-sp-add-groups-parameters"></a>

Se requieren los siguientes parámetros:

*Nombre de usuario de*  
El nombre de usuario de un usuario. El tipo de datos es `varchar`.

*group\$1name*  
El nombre de un grupo al que quiera agregar al usuario. El tipo de datos es `varchar`. El valor predeterminado es una cadena vacía.

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

Puede agregar uno o más grupos a un usuario separando los nombres de los grupos con comas. Para obtener más información sobre cómo comprobar el estado al agregar grupos, consulte [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status). 

### Ejemplos
<a name="db2-sp-add-groups-examples"></a>

En el siguiente ejemplo, se agregan los grupos `direct_sales` y `b2b_sales` al usuario `jorge_souza`. 

```
db2 "call rdsadmin.add_groups(
    'jorge_souza',
    'direct_sales,b2b_sales')"
```

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

Elimina grupos de un usuario.

### Sintaxis
<a name="db2-sp-remove-groups-syntax"></a>

```
db2 "call rdsadmin.remove_groups(
    'username',
    'group_name,group_name')"
```

### Parameters
<a name="db2-sp-remove-groups-parameters"></a>

Se requieren los siguientes parámetros:

*Nombre de usuario de*  
El nombre de usuario de un usuario. El tipo de datos es `varchar`.

*group\$1name*  
El nombre de un grupo del que quiera eliminar al usuario. El tipo de datos es `varchar`.

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

Puede eliminar uno o más grupos de un usuario separando los nombres de los grupos con comas. 

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

### Ejemplos
<a name="db2-sp-remove-groups-examples"></a>

En el ejemplo siguiente se quitan los grupos `direct_sales` y `b2b_sales` del usuario `jorge_souza`. 

```
db2 "call rdsadmin.remove_groups(
    'jorge_souza',
    'direct_sales,b2b_sales')"
```

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

Concede autorización `DBADM`, `ACCESSCTRL` o `DATAACCESS` a un rol, usuario o grupo.

### Sintaxis
<a name="db2-sp-dbadm-grant-syntax"></a>

```
db2 "call rdsadmin.dbadm_grant(
    ?,
    'database_name',
    'authorization',
    'grantee')"
```

### Parameters
<a name="db2-sp-dbadm-grant-parameters"></a>

El siguiente parámetro de salida es obligatorio: 

?  
Un marcador de parámetro que genera el identificador único de la tarea. Este parámetro solo acepta `?`.

Se requieren los siguientes parámetros de entrada:

*database\$1name*  
Nombre de la base de datos en la que se va a ejecutar el comando. El tipo de datos es `varchar`. 

*authorization*  
El tipo de autorización que se va a conceder. El tipo de datos es `varchar`. Valores válidos: `DBADM`, `ACCESSCTRL`, `DATAACCESS`.   
Separe los diversos tipos con comas.

*grantee*  
El rol, el usuario o el grupo que recibirá la autorización. El tipo de datos es `varchar`. Valores válidos: `ROLE`, `USER`, `GROUP`.   
El formato debe ser un valor seguido del nombre. Separe los valores y los nombres con comas. Ejemplo: “”.: '`USER user1, user2, GROUP group1, group2`'. Reemplace los nombres con su propia información.

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

El rol que vaya a recibir el acceso debe existir.

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

### Ejemplos
<a name="db2-sp-dbadm-grant-examples"></a>

**Ejemplo 1: concesión de acceso de administrador de bases de datos al rol**

El siguiente ejemplo otorga acceso de administrador de base de datos a la base de datos denominada `TESTDB` para el rol `ROLE_DBA`.

```
db2 "call rdsadmin.dbadm_grant(
    ?, 
    'TESTDB',
    'DBADM',
    'ROLE ROLE_DBA')"
```

**Ejemplo 2: concesión de acceso de administrador de bases de datos al usuario y al grupo**

El siguiente ejemplo otorga acceso de administrador de base de datos a la base de datos denominada `TESTDB` para `user1` y `group1`.

```
db2 "call rdsadmin.dbadm_grant(
    ?, 
    'TESTDB', 
    'DBADM', 
    'USER user1, GROUP group1')"
```

**Ejemplo 3: concesión de acceso de administrador de bases de datos a varios usuarios y grupos**

El siguiente ejemplo otorga acceso de administrador de base de datos a la base de datos denominada `TESTDB` para `user1`, `user2`, `group1` y `group2`.

```
db2 "call rdsadmin.dbadm_grant(
    ?, 
    'TESTDB', 
    'DBADM', 
    'USER user1, user2, GROUP group1, group2')"
```

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

Revoca la autorización `DBADM`, `ACCESSCTRL` o `DATAACCESS` de un rol, usuario o grupo.

### Sintaxis
<a name="db2-sp-dbadm-revoke-syntax"></a>

```
db2 "call rdsadmin.dbadm_revoke(
    ?,
    'database_name',
    'authorization',
    'grantee')"
```

### Parameters
<a name="db2-sp-dbadm-revoke-parameters"></a>

El siguiente parámetro de salida es obligatorio: 

?  
El identificador único de la tarea. Este parámetro solo acepta `?`.

Se requieren los siguientes parámetros de entrada:

*database\$1name*  
Nombre de la base de datos en la que se va a ejecutar el comando. El tipo de datos es `varchar`.

*authorization*  
El tipo de autorización que se va a revocar. El tipo de datos es `varchar`. Valores válidos: `DBADM`, `ACCESSCTRL`, `DATAACCESS`.   
Separe los diversos tipos con comas.

*grantee*  
El rol, el usuario o el grupo al que se va a revocar la autorización. El tipo de datos es `varchar`. Valores válidos: `ROLE`, `USER`, `GROUP`.   
El formato debe ser un valor seguido del nombre. Separe los valores y los nombres con comas. Ejemplo: “”.: '`USER user1, user2, GROUP group1, group2`'. Reemplace los nombres con su propia información.

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

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

### Ejemplos
<a name="db2-sp-dbadm-revoke-examples"></a>

**Ejemplo 1: revocación del acceso de administrador de la base de datos de un rol**

El siguiente ejemplo revoca el acceso de administrador de base de datos a la base de datos denominada `TESTDB` para el rol `ROLE_DBA`.

```
db2 "call rdsadmin.dbadm_revoke(
    ?, 
    'TESTDB',
    'DBADM',
    'ROLE ROLE_DBA')"
```

**Ejemplo 2: revocación del acceso de administrador a la base de datos de un usuario y un grupo**

El siguiente ejemplo revoca el acceso de administrador de base de datos a la base de datos denominada `TESTDB` para `user1` y `group1`.

```
db2 "call rdsadmin.dbadm_revoke(
    ?, 
    'TESTDB', 
    'DBADM', 
    'USER user1, GROUP group1')"
```

**Ejemplo 3: revocación del acceso de administrador de la base de datos a varios usuarios y grupos**

El siguiente ejemplo revoca el acceso de administrador de base de datos a la base de datos denominada `TESTDB` para `user1`, `user2`, `group1` y `group2`.

```
db2 "call rdsadmin.dbadm_revoke(
    ?, 
    'TESTDB', 
    'DBADM', 
    'USER user1, user2, GROUP group1, group2')"
```

## rdsadmin.set\$1sid\$1group\$1mapping
<a name="db2-sp-set-sid-group-mapping"></a>

Crea una asignación entre un identificador de seguridad (SID) y el grupo de Active Directory correspondiente.

### Sintaxis
<a name="db2-sp-set-sid-group-mapping-syntax"></a>

```
db2 "call rdsadmin.set_sid_group_mapping(
    ?,
    'SID',
    'group_name')"
```

### Parameters
<a name="db2-sp-set-sid-group-mapping-parameters"></a>

El siguiente parámetro de salida es obligatorio:

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

Se requieren los siguientes parámetros de entrada:

*SID*  
Identificador de seguridad (SID). El tipo de datos es `varchar`.

*group\$1name*  
El nombre del grupo de Active Directory que se va a asignar al SID. El tipo de datos es `varchar`.

### Notas de uso
<a name="db2-sp-set-sid-group-mapping-usage-notes"></a>

Utilice este procedimiento almacenado para habilitar la autenticación Kerberos con grupos de Active Directory. Si el `SID` o `group_name` ya existe en la asignación, se produce un error en este procedimiento almacenado.

Para obtener información acerca de cómo encontrar el SID para un grupo, consulte [Paso 8: recuperar el SID del grupo de Active Directory en PowerShellPaso 8: recuperar el SID del grupo de Active Directory en PowerShell](db2-kerberos-setting-up.md#db2-kerberos-setting-up-retrieve-ad-group-sid).

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

### Ejemplos
<a name="db2-sp-set-sid-group-mapping-examples"></a>

En el siguiente ejemplo, se asigna un SID a un grupo denominado `my_group`.

```
db2 "call rdsadmin.set_sid_group_mapping(
    ?,
    'S-1-5-21-9146495592-531070549-834388463-513',
    'my_group')"
```

## rdsadmin.list\$1sid\$1group\$1mapping
<a name="db2-sp-list-sid-group-mapping"></a>

Muestra todos los identificadores de seguridad (SID) y las asignaciones de grupos de Active Directory configuradas en la instancia de base de datos.

### Sintaxis
<a name="db2-sp-list-sid-group-mapping-syntax"></a>

```
db2 "call rdsadmin.list_sid_group_mapping()"
```

### Notas de uso
<a name="db2-sp-list-sid-group-mapping-usage-notes"></a>

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

## rdsadmin.remove\$1sid\$1group\$1mapping
<a name="db2-sp-remove-sid-group-mapping"></a>

Elimina un identificador de seguridad (SID) y su correspondiente asignación de grupo de Active Directory de una instancia de base de datos.

### Sintaxis
<a name="db2-sp-remove-sid-group-mapping-syntax"></a>

```
db2 "call rdsadmin.remove_sid_group_mapping(
    ?,
    'SID')"
```

### Parameters
<a name="db2-sp-remove-sid-group-mapping-parameters"></a>

El siguiente parámetro de salida es obligatorio:

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

El siguiente parámetro de entrada es obligatorio:

*SID*  
Identificador de seguridad (SID). El tipo de datos es `varchar`.

### Notas de uso
<a name="db2-sp-remove-sid-group-mapping-usage-notes"></a>

Para obtener información acerca de cómo encontrar el SID para un grupo, consulte [Paso 8: recuperar el SID del grupo de Active Directory en PowerShellPaso 8: recuperar el SID del grupo de Active Directory en PowerShell](db2-kerberos-setting-up.md#db2-kerberos-setting-up-retrieve-ad-group-sid).

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

### Ejemplos
<a name="db2-sp-remove-sid-group-mapping-examples"></a>

En el siguiente ejemplo, se elimina una asignación de SID del grupo al que se ha asignado.

```
db2 "call rdsadmin.remove_sid_group_mapping(
    ?,
    'S-1-5-21-9146495592-531070549-834388463-513')"
```

# Procedimientos almacenados para políticas de auditoría de RDS para Db2
<a name="db2-sp-managing-audit-policies"></a>

Los procedimientos almacenados que se describen en este tema administran las políticas de auditoría para bases de datos de Amazon RDS para Db2 que utilizan el registro de auditoría. Para obtener más información, consulte [Registro de auditoría de Db2](Db2.Options.Audit.md). Para ejecutar estos procedimientos, el usuario maestro debe conectarse primero a la base de datos `rdsadmin`.

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

**Topics**
+ [rdsadmin.configure\$1db\$1audit](#db2-sp-configure-db-audit)
+ [rdsadmin.disable\$1db\$1audit](#db2-sp-disable-db-audit)

## rdsadmin.configure\$1db\$1audit
<a name="db2-sp-configure-db-audit"></a>

Configura la política de auditoría de la base de datos de RDS para Db2 especificada por *db\$1name*. Si la política que está configurando no existe, al llamar a este procedimiento almacenado, se creará. Si esta política existe, al llamar a este procedimiento almacenado, se modificará con los valores de los parámetros que proporcione.

### Sintaxis
<a name="db2-sp-configure-db-audit-syntax"></a>

```
db2 "call rdsadmin.configure_db_audit(
    'db_name', 
    'category', 
    'category_setting', 
    '?')"
```

### Parameters
<a name="db2-sp-configure-db-audit-parameters"></a>

Se requieren los siguientes parámetros.

*db\$1name*  
El nombre de la base de datos de RDS para Db2 para la que hay que configurar la política de auditoría. El tipo de datos es `varchar`.

*categoría*  
El nombre de la categoría para la que hay que configurar la política de auditoría. El tipo de datos es `varchar`. Esta es una lista de valores válidos para este parámetro.  
+ `ALL`: con `ALL`, Amazon RDS no incluye las categorías `CONTEXT`, `EXECUTE` o `ERROR`.
+ `AUDIT` 
+ `CHECKING` 
+ `CONTEXT` 
+ `ERROR` 
+ `EXECUTE`: puede configurar esta categoría con o sin datos. La configuración con datos implica registrar también valores de datos de entrada suministrados para cualquier variable de host y marcador de parámetro. La opción predeterminada es la configuración sin datos. Para obtener más información, consulte la descripción del parámetro *category\$1setting* y los [Ejemplos](#db2-sp-configure-db-audit-examples).
+ `OBJMAINT` 
+ `SECMAINT` 
+ `SYSADMIN` 
+ `VALIDATE` 
Para obtener más información sobre estas categorías, consulte la [documentación de IBM Db2](https://www.ibm.com/docs/en/db2/11.1?topic=statements-create-audit-policy).

*category\$1setting*  
La configuración de la categoría de auditoría especificada. El tipo de datos es `varchar`.  
En la tabla siguiente, se muestran los valores válidos de la configuración de cada categoría.      
<a name="db2-option-reference"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/db2-sp-managing-audit-policies.html)

### Notas de uso
<a name="db2-sp-configure-db-audit-usage-notes"></a>

Antes de llamar a `rdsadmin.configure_db_audit`, compruebe que la instancia de base de datos de RDS para Db2 con la base de datos para la que está configurando la política de auditoría esté asociada a un grupo de opciones que incluya la opción `DB2_AUDIT`. Para obtener más información, consulte [Configuración del registro de auditoría de Db2](Db2.Options.Audit.md#db2-audit-setting-up).

Tras configurar la política de auditoría, puede comprobar el estado de la configuración de auditoría de la base de datos siguiendo los pasos que se indican en [Comprobar la configuración de la auditoría](Db2.Options.Audit.md#db2-audit-check-config-status).

La especificación `ALL` para el parámetro `category` no incluye las categorías `CONTEXT`, `EXECUTE` ni `ERROR`. Para agregar estas categorías a su política de auditoría, llame a `rdsadmin.configure_db_audit` por separado con cada categoría que desee agregar. Para obtener más información, consulte [Ejemplos](#db2-sp-configure-db-audit-examples).

### Ejemplos
<a name="db2-sp-configure-db-audit-examples"></a>

Los siguientes ejemplos crean o modifican la política de auditoría de una base de datos denominada `TESTDB`. En los ejemplos 1 a 5, si la categoría `ERROR` no se ha configurado previamente, esta categoría se establece en `NORMAL` (valor predeterminado). Para cambiar esa configuración a `AUDIT`, siga el [Example 6: Specifying the ERROR category](#example-6).

**Ejemplo 1: Especificación de la categoría `ALL`**

```
db2 "call rdsadmin.configure_db_audit('TESTDB', 'ALL', 'BOTH', ?)"
```

En el ejemplo, la llamada configura las categorías `AUDIT`, `CHECKING`, `OBJMAINT`, `SECMAINT`, `SYSADMIN` y `VALIDATE` en la política de auditoría. La especificación de `BOTH` significa que se auditarán tanto los eventos correctos como incorrectos para cada categoría.

**Ejemplo 2: Especificación de la categoría `EXECUTE` con datos**

```
db2 "call rdsadmin.configure_db_audit('TESTDB', 'EXECUTE', 'SUCCESS,WITH', ?)"
```

En el ejemplo, la llamada configura la categoría `EXECUTE` en la política de auditoría. La especificación de `SUCCESS,WITH` significa que los registros de esta categoría incluirán solo los eventos correctos, así como los valores de datos de entrada proporcionados para variables de host y marcadores de parámetros.

**Ejemplo 3: Especificación de la categoría `EXECUTE` sin datos**

```
db2 "call rdsadmin.configure_db_audit('TESTDB', 'EXECUTE', 'FAILURE,WITHOUT', ?)"
```

En el ejemplo, la llamada configura la categoría `EXECUTE` en la política de auditoría. La especificación de `FAILURE,WITHOUT` significa que los registros de esta categoría incluirán solo los eventos con error, y no incluirán los valores de datos de entrada proporcionados para variables de host o marcadores de parámetros.

**Ejemplo 4: Especificación de la categoría `EXECUTE` sin eventos de estado**

```
db2 "call rdsadmin.configure_db_audit('TESTDB', 'EXECUTE', 'NONE', ?)"
```

En el ejemplo, la llamada configura la categoría `EXECUTE` en la política de auditoría. La especificación de `NONE` significa que no se auditará ningún evento de esta categoría.

**Ejemplo 5: Especificación de la categoría `OBJMAINT`**

```
db2 "call rdsadmin.configure_db_audit('TESTDB', 'OBJMAINT', 'NONE', ?)"
```

En el ejemplo, la llamada configura la categoría `OBJMAINT` en la política de auditoría. La especificación de `NONE` significa que no se auditará ningún evento de esta categoría.

**Ejemplo 6: Especificación de la categoría `ERROR`**

```
db2 "call rdsadmin.configure_db_audit('TESTDB', 'ERROR', 'AUDIT', ?)"
```

En el ejemplo, la llamada configura la categoría `ERROR` en la política de auditoría. La especificación de `AUDIT` significa que todos los errores, incluidos aquellos que ocurran en el propio registro de auditoría, se capturan en los registros. El tipo de error predeterminado es `NORMAL`. Con `NORMAL`, los errores generados por la auditoría se ignoran y solo se capturan los `SQLCODE` correspondientes a los errores asociados a la operación que se está realizando.

## rdsadmin.disable\$1db\$1audit
<a name="db2-sp-disable-db-audit"></a>

Detiene el registro de auditoría de la base de datos de RDS para Db2 especificada por *db\$1name* y elimina la política de auditoría configurada para ella. 

**nota**  
Este procedimiento almacenado solo elimina las políticas de auditoría que se configuraron mediante una llamada a [rdsadmin.configure\$1db\$1audit](#db2-sp-configure-db-audit).

### Sintaxis
<a name="db2-sp-disable-db-audit-syntax"></a>

```
db2 "call rdsadmin.disable_db_audit('db_name', ?)"
```

### Parameters
<a name="db2-sp-disable-db-audit-parameters"></a>

Se requieren los siguientes parámetros.

*db\$1name*  
El nombre de la base de datos de RDS para Db2 para la que se va a deshabilitar el registro de auditoría. El tipo de datos es `varchar`.

### Notas de uso
<a name="db2-sp-disable-db-audit-usage-notes"></a>

La llamada a `rdsadmin.disable_db_audit` no deshabilita el registro de auditoría de la instancia de base de datos de RDS para Db2. Para deshabilitar el registro de auditoría en el nivel de instancia de la base de datos, elimine el grupo de opciones de la instancia de la base de datos. Para obtener más información, consulte [Deshabilitación del registro de auditoría de Db2](Db2.Options.Audit.md#db2-audit-disabling).

### Ejemplos
<a name="db2-sp-disable-db-audit-examples"></a>

El siguiente ejemplo deshabilita el registro de auditoría para una base de datos denominada `TESTDB`.

```
db2 "call rdsadmin.disable_db_audit('TESTDB', ?)"
```

# Procedimientos almacenados de grupos de búferes de RDS para Db2
<a name="db2-sp-managing-buffer-pools"></a>

Los procedimientos almacenados integrados que se describen en este tema administran grupos de búferes para 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 grupos de búferes](db2-managing-buffer-pools.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\$1bufferpool](#db2-sp-create-buffer-pool)
+ [rdsadmin.alter\$1bufferpool](#db2-sp-alter-buffer-pool)
+ [rdsadmin.drop\$1bufferpool](#db2-sp-drop-buffer-pool)

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

Crea un grupo de búferes.

### Sintaxis
<a name="db2-sp-create-buffer-pool-syntax"></a>

```
db2 "call rdsadmin.create_bufferpool(
    'database_name', 
    'buffer_pool_name', 
    buffer_pool_size, 
    'immediate', 
    'automatic', 
    page_size, 
    number_block_pages, 
    block_size)"
```

### Parameters
<a name="db2-sp-create-buffer-pool-parameters"></a>

Se requieren los siguientes parámetros:

*database\$1name*  
Nombre de la base de datos en la que se va a ejecutar el comando. El tipo de datos es `varchar`.

*buffer\$1pool\$1name*  
Nombre del grupo de búferes que se va a crear. El tipo de datos es `varchar`.

Los siguientes parámetros son opcionales:

*buffer\$1pool\$1size*  
El tamaño del grupo de búferes en número de páginas. El tipo de datos es `integer`. El valor predeterminado es `-1`.

*immediate*  
Especifica si el comando se ejecuta inmediatamente. El tipo de datos es `char`. El valor predeterminado es `Y`.

*automatic*  
Especifica si el grupo de búferes se va a configurar como automático. El tipo de datos es `char`. El valor predeterminado es `Y`.

*page\$1size*  
El tamaño de página del grupo de búferes El tipo de datos es `integer`. Valores válidos: `4096`, `8192`, `16384`, `32768`. El valor predeterminado es `8192`.

*number\$1block\$1pages*  
El número de páginas de bloques en los grupos de búferes. El tipo de datos es `integer`. El valor predeterminado es `0`.

*block\$1size*  
El tamaño de bloque de las páginas de bloques. El tipo de datos es `integer`. Valores válidos: de `2` a `256`. El valor predeterminado es `32`.

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

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

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

**Ejemplo 1: Crear un conjunto de búferes con los parámetros predeterminados**

El siguiente ejemplo crea un grupo de búferes llamado `BP8` para una base de datos llamada `TESTDB` con los parámetros predeterminados, de modo que el grupo de búferes utiliza un tamaño de página de 8 KB. 

```
db2 "call rdsadmin.create_bufferpool(
    'TESTDB', 
    'BP8')"
```

**Ejemplo 2: Crear un grupo de búferes para que se ejecute inmediatamente sin asignación automática**

En el siguiente ejemplo, se crea un grupo de búferes denominado `BP16` para una base de datos denominada `TESTDB` que utiliza un tamaño de página de 16 KB con un recuento inicial de páginas de 1000 y se establece en automático. Db2 ejecuta el comando inmediatamente. Si utiliza un recuento inicial de páginas de -1, Db2 utilizará la asignación automática de páginas.

```
db2 "call rdsadmin.create_bufferpool(
    'TESTDB', 
    'BP16', 
    1000, 
    'Y', 
    'Y', 
    16384)"
```

**Ejemplo 3: Crear un grupo de búferes para que se ejecute de forma inmediata mediante páginas de bloques**

En el siguiente ejemplo, se crea un grupo de búferes llamado `BP16` para una base de datos llamada `TESTDB`. Este grupo de búferes tiene un tamaño de página de 16 KB con un recuento inicial de 10 000 páginas. Db2 ejecuta el comando inmediatamente utilizando 500 páginas de bloque con un tamaño de bloque de 512.

```
db2 "call rdsadmin.create_bufferpool(
    'TESTDB', 
    'BP16',
    10000, 
    'Y', 
    'Y', 
    16384, 
    500, 
    512)"
```

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

Modifica un grupo de búferes.

### Sintaxis
<a name="db2-sp-alter-buffer-pool-syntax"></a>

```
db2 "call rdsadmin.alter_bufferpool(
    'database_name', 
    'buffer_pool_name', 
    buffer_pool_size, 
    'immediate', 
    'automatic', 
    change_number_blocks, 
    number_block_pages, 
    block_size)"
```

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

Se requieren los siguientes parámetros:

*database\$1name*  
Nombre de la base de datos en la que se va a ejecutar el comando. El tipo de datos es `varchar`.

*buffer\$1pool\$1name*  
Nombre del grupo de búferes que se va a modificar. El tipo de datos es `varchar`.

*buffer\$1pool\$1size*  
El tamaño del grupo de búferes en número de páginas. El tipo de datos es `integer`.

Los siguientes parámetros son opcionales:

*immediate*  
Especifica si el comando se ejecuta inmediatamente. El tipo de datos es `char`. El valor predeterminado es `Y`.

*automatic*  
Especifica si el grupo de búferes se va a configurar como automático. El tipo de datos es `char`. El valor predeterminado es `N`.

*change\$1number\$1blocks*  
Especifica si se ha producido un cambio en el número de páginas de bloques del conjunto de búferes. El tipo de datos es `char`. El valor predeterminado es `N`.

*number\$1block\$1pages*  
El número de páginas de bloques en los grupos de búferes. El tipo de datos es `integer`. El valor predeterminado es `0`.

*block\$1size*  
El tamaño de bloque de las páginas de bloques. El tipo de datos es `integer`. Valores válidos: de `2` a `256`. El valor predeterminado es `32`.

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

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

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

En el siguiente ejemplo, se modifica un grupo de búferes llamado `BP16` para una base de datos llamada `TESTDB` a no automático y se cambia el tamaño a 10 000 páginas. Db2 ejecuta este comando inmediatamente. 

```
db2 "call rdsadmin.alter_bufferpool(
    'TESTDB',
    'BP16', 
    10000, 
    'Y', 
    'N')"
```

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

Elimina un grupo de búferes.

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

```
db2 "call rdsadmin.drop_bufferpool(
    'database_name', 
    'buffer_pool_name'"
```

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

Se requieren los siguientes parámetros:

*database\$1name*  
El nombre de la base de datos a la que pertenece el grupo de búferes. El tipo de datos es `varchar`.

*buffer\$1pool\$1name*  
Nombre del grupo de búferes que se va a eliminar. El tipo de datos es `varchar`.

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

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

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

El siguiente ejemplo elimina un grupo de búferes llamado `BP16` para una base de datos llamada `TESTDB`.

```
db2 "call rdsadmin.drop_bufferpool(
    'TESTDB',
    'BP16')"
```

# Procedimientos almacenados de bases de datos de RDS para Db2
<a name="db2-sp-managing-databases"></a>

Los procedimientos almacenados integrados que se describen en este tema administran 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 bases de datos](db2-managing-databases.md)
+ [Creación de bases de datos con intercalación EBCDIC](db2-ebcdic.md)
+ [Recopilación de información sobre las bases de datos](db2-supported-parameters.md#db2-modifying-parameters-db2-commands)
+ [Modificación de parámetros de configuración de bases de datos](db2-supported-parameters.md#db2-modifying-parameters-db2-commands)
+ [Migración de Linux a Linux](db2-one-time-migration-linux.md)
+ [Migración de Linux a Linux con un tiempo de inactividad prácticamente nulo](db2-near-zero-downtime-migration.md)

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

**Topics**
+ [rdsadmin.create\$1database](#db2-sp-create-database)
+ [rdsadmin.deactivate\$1database](#db2-sp-deactivate-database)
+ [rdsadmin.activate\$1database](#db2-sp-activate-database)
+ [rdsadmin.reactivate\$1database](#db2-sp-reactivate-database)
+ [rdsadmin.drop\$1database](#db2-sp-drop-database)
+ [rdsadmin.update\$1db\$1param](#db2-sp-update-db-param)
+ [rdsadmin.set\$1configuration](#db2-sp-set-configuration)
+ [rdsadmin.show\$1configuration](#db2-sp-show-configuration)
+ [rdsadmin.backup\$1database](#db2-sp-backup-database)
+ [rdsadmin.restore\$1database](#db2-sp-restore-database)
+ [rdsadmin.rollforward\$1database](#db2-sp-rollforward-database)
+ [rdsadmin.rollforward\$1status](#db2-sp-rollforward-status)
+ [rdsadmin.complete\$1rollforward](#db2-sp-complete-rollforward)
+ [rdsadmin.db2pd\$1command](#db2-sp-db2pd-command)
+ [rdsadmin.force\$1application](#db2-sp-force-application)
+ [rdsadmin.set\$1archive\$1log\$1retention](#db2-sp-set-archive-log-retention)
+ [rdsadmin.show\$1archive\$1log\$1retention](#db2-sp-show-archive-log-retention)
+ [rdsadmin.list\$1archive\$1log\$1information](#db2-sp-list-archive-log-information)
+ [rdsadmin.enable\$1archive\$1log\$1copy](#db2-sp-enable_archive_log_copy)
+ [rdsadmin.disable\$1archive\$1log\$1copy](#db2-sp-disable_archive_log_copy)
+ [rdsadmin.fgac\$1command](#db2-sp-fgac-command)
+ [rdsadmin.db2support\$1command](#db2-sp-db2support-command)

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

Crea una base de datos.

### Sintaxis
<a name="db2-sp-create-database-syntax"></a>

```
db2 "call rdsadmin.create_database(
    'database_name',
    'database_page_size',
    'database_code_set',
    'database_territory',
    'database_collation',
    'database_autoconfigure_str',
    'database_non-restrictive')"
```

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

**nota**  
Este procedimiento almacenado no valida la combinación de parámetros necesarios. Al llamar a [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status), la función definida por el usuario podría devolver un error debido a una combinación de `database_codeset`, `database_territory` y `database_collation` que no es válida. Para obtener más información, consulte [Choosing the code page, territory, and collation for your database](https://www.ibm.com/docs/en/db2/11.5?topic=support-choosing-code-page-territory-collation-your-database) en la documentación de IBM Db2.

El siguiente parámetro es obligatorio:

*database\$1name*  
El nombre de la base de datos que se va a crear. El tipo de datos es `varchar`.

Los siguientes parámetros son opcionales:

*database\$1page\$1size*  
El tamaño de página predeterminado de la base de datos. Valores válidos: `4096`, `8192`, `16384`, `32768`. El tipo de datos es `integer`. El valor predeterminado es `8192`.  
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 disco. 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).

*database\$1code\$1set*  
El conjunto de códigos de la base de datos. El tipo de datos es `varchar`. El valor predeterminado es `UTF-8`.

*database\$1territory*  
El código de dos letras de la base de datos. El tipo de datos es `varchar`. El valor predeterminado es `US`.

*database\$1collation*  
La secuencia de intercalación que determina cómo se ordenan y comparan las cadenas de caracteres almacenadas en la base de datos. El tipo de datos es `varchar`.  
Valores válidos:   
+ `COMPATIBILITY`: una secuencia de intercalación de IBM Db2 versión 2.
+ `EBCDIC_819_037`: página de códigos ISO latinos, intercalación; CCSID 037 (EBCDIC inglés de EE. UU.).
+ `EBCDIC_819_500`: página de códigos ISO latinos, intercalación; CCSID 500 (EBCDIC internacional).
+ `EBCDIC_850_037`: página de códigos ASCII latinos, intercalación; CCSID 037 (EBCDIC inglés de EE. UU.).
+ `EBCDIC_850_500`: página de códigos ASCII latinos, intercalación; CCSID 500 (EBCDIC internacional).
+ `EBCDIC_932_5026`: página de códigos ASCII japoneses, intercalación; CCSID 5026 (EBCDIC inglés de EE. UU.).
+ `EBCDIC_932_5035`: página de códigos ASCII japoneses, intercalación; CCSID 5035 (EBCDIC internacional).
+ `EBCDIC_1252_037`: página de códigos Windows latinos, intercalación; CCSID 037 (EBCDIC inglés de EE. UU.).
+ `EBCDIC_1252_500`: página de códigos Windows latinos, intercalación; CCSID 500 (EBCDIC internacional).
+ `IDENTITY`: intercalación predeterminada. Las cadenas se comparan byte por byte.
+ `IDENTITY_16BIT`: el esquema de codificación de compatibilidad para UTF-16: secuencia de intercalación de 8 bits (CESU-8). Para obtener más información, consulte [Unicode Technical Report \$126](https://www.unicode.org/reports/tr26/tr26-4.html) en el sitio web de Unicode Consortium.
+ `NLSCHAR`: solo para su uso con la página de códigos en tailandés (CP874).
+ `SYSTEM`: si utiliza `SYSTEM`, la base de datos utiliza automáticamente la secuencia de intercalación para `database_codeset` y `database_territory`.
El valor predeterminado es `IDENTITY`.  
Además, RDS para Db2 admite los siguientes grupos de intercalaciones: `language-aware-collation` y `locale-sensitive-collation`. Para obtener más información, consulte [Choosing a collation for a Unicode database](https://www.ibm.com/docs/en/db2/11.5?topic=collation-choosing-unicode-database) en la documentación de IBM Db2.

*database\$1autoconfigure\$1str*  
La sintaxis del comando `AUTOCONFIGURE`, por ejemplo, `'AUTOCONFIGURE APPLY DB'`. El tipo de datos es `varchar`. El valor predeterminado es una cadena vacía o null.  
Para obtener más información, consulte [Comando AUTOCONFIGURE](https://www.ibm.com/docs/en/db2/11.5?topic=cc-autoconfigure) en la documentación de IBM Db2.

*database\$1non-restrictive*  
La concesión de las autoridades y privilegios predeterminados en la base de datos. El tipo de datos es `varchar`. El valor predeterminado es `N`.  
Valores válidos:  
+ `N`: la base de datos creada es restrictiva y no concede autoridades ni privilegios.
+ `Y`: la base de datos creada no es restrictiva y concede un conjunto de permisos al grupo especial `PUBLIC`. Para obtener más información, consulte [los privilegios predeterminados que se conceden al crear una base de datos](https://www.ibm.com/docs/en/db2/11.5.x?topic=ownership-default-privileges-granted-creating-database) en la documentación de IBM Db2.

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

Si tiene previsto modificar el parámetro `db2_compatibility_vector`, modifíquelo antes de crear una base de datos. Para obtener más información, consulte [Establecimiento del parámetro db2\$1compatibility\$1vector](db2-known-issues-limitations.md#db2-known-issues-limitations-db2-compatibility-vector).

Consideraciones especiales:
+ El comando `CREATE DATABASE` enviado a la instancia de Db2 usa la opción `RESTRICTIVE`.
+ RDS para Db2 solo usa espacios de tabla `AUTOMATIC STORAGE`.
+ RDS para Db2 usa los valores predeterminados para `NUMSEGS` y `DFT_EXTENT_SZ`.
+ RDS para Db2 utiliza el cifrado de almacenamiento y no admite el cifrado de bases de datos.

Para obtener más información sobre estas consideraciones, consulte el [comando CREATE DATABASE](https://www.ibm.com/docs/en/db2/11.5?topic=commands-create-database#:~:text=in%20the%20database.-,RESTRICTIVE,-If%20the%20RESTRICTIVE) en la documentación de IBM Db2.

Antes de llamar a `rdsadmin.create_database`, debe conectarse a la base de datos `rdsadmin`. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por la información de su instancia de base de datos de RDS para Db2:

```
db2 connect to rdsadmin user master_username using master_password
```

Para obtener más información sobre cómo comprobar el estado de creación de una base de datos, 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 `rdsadmin.create_database`, consulte [Errores en los procedimientos almacenados](db2-troubleshooting.md#db2-troubleshooting-stored-procedures).

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

En el siguiente ejemplo, se crea una base de datos llamada `TESTJP` con una combinación correcta de los parámetros *database\$1code\$1set*, *database\$1territory* y *database\$1collation* para Japón:

```
db2 "call rdsadmin.create_database('TESTJP', 4096, 'IBM-437', 'JP', 'SYSTEM')"
```

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

Desactiva una base de datos.

### Sintaxis
<a name="db2-sp-deactivate-database-syntax"></a>

```
db2 "call rdsadmin.deactivate_database(
    ?,
    'database_name')"
```

### Parameters
<a name="db2-sp-deactivate-database-parameters"></a>

El siguiente parámetro de salida es obligatorio: 

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

El siguiente parámetro de entrada es obligatorio:

*database\$1name*  
Nombre de la base de datos que se va a desactivar. El tipo de datos es `varchar`.

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

Puede desactivar las bases de datos para conservar los recursos de memoria o para realizar otros cambios en la configuración de las bases de datos. Para volver a poner en línea las bases de datos desactivadas, llame al procedimiento almacenado [rdsadmin.activate\$1database](#db2-sp-activate-database).

No puede desactivar una base de datos en una instancia de base de datos de origen durante la replicación mediante una llamada al procedimiento `rdsadmin.deactivate_database` almacenado.

Para obtener más información sobre cómo comprobar el estado de desactivación de una base de datos, 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 `rdsadmin.deactivate_database`, consulte [Errores en los procedimientos almacenados](db2-troubleshooting.md#db2-troubleshooting-stored-procedures).

### Ejemplos
<a name="db2-sp-deactivate-database-examples"></a>

En el siguiente ejemplo, se desactiva una base de datos denominada `TESTDB`.

```
db2 "call rdsadmin.deactivate_database(?, 'TESTDB')"
```

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

Activa una base de datos.

Para obtener información acerca de las diferencias entre [rdsadmin.reactivate\$1database](#db2-sp-reactivate-database) y `rdsadmin.activate_database`, consulte [Notas de uso](#db2-sp-activate-database-usage-notes).

### Sintaxis
<a name="db2-sp-activate-database-syntax"></a>

```
db2 "call rdsadmin.activate_database(
    ?,
    'database_name')"
```

### Parameters
<a name="db2-sp-activate-database-parameters"></a>

El siguiente parámetro de salida es obligatorio: 

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

El siguiente parámetro de entrada es obligatorio:

*database\$1name*  
El nombre de la base de datos que se va a activar. El tipo de datos es `varchar`.

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

Todas las bases de datos se activan de forma predeterminada cuando se crean. Si [desactiva]() una base de datos en una instancia de base de datos independiente para conservar los recursos de memoria o para realizar otros cambios en la configuración de la base de datos, llame al procedimiento almacenado `rdsadmin.activate_database` para volver a activar la base de datos.

Este procedimiento almacenado solo activa una base de datos que se encuentra en una instancia de base de datos independiente y que se desactivó al llamar al procedimiento almacenado [rdsadmin.deactivate\$1database](#db2-sp-deactivate-database). Para activar una base de datos en una instancia de base de datos de origen de réplica, debe llamar al procedimiento almacenado [rdsadmin.reactivate\$1database](#db2-sp-reactivate-database).

Para obtener más información sobre cómo comprobar el estado de activación de una base de datos, 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 `rdsadmin.activate_database`, consulte [Errores en los procedimientos almacenados](db2-troubleshooting.md#db2-troubleshooting-stored-procedures).

### Ejemplos
<a name="db2-sp-activate-database-examples"></a>

En el siguiente ejemplo, se activa una base de datos denominada `TESTDB`.

```
db2 "call rdsadmin.activate_database(?, 'TESTDB')"
```

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

Reactiva una base de datos.

Para obtener información acerca de las diferencias entre [rdsadmin.activate\$1database](#db2-sp-activate-database) y `rdsadmin.reactivate_database`, consulte [Notas de uso](#db2-sp-reactivate-database-usage-notes).

### Sintaxis
<a name="db2-sp-reactivate-database-syntax"></a>

```
db2 "call rdsadmin.reactivate_database(
    ?,
    'database_name')"
```

### Parameters
<a name="db2-sp-reactivate-database-parameters"></a>

El siguiente parámetro de salida es obligatorio: 

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

El siguiente parámetro de entrada es obligatorio:

*database\$1name*  
El nombre de la base de datos que se va a reactivar. El tipo de datos es `varchar`.

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

Al llamar al procedimiento almacenado `rdsadmin.reactivate_database`, este primero desactiva la base de datos llamando al procedimiento almacenado [rdsadmin.deactivate\$1database](#db2-sp-deactivate-database) y, a continuación, activa la base de datos llamando al procedimiento almacenado [rdsadmin.activate\$1database](#db2-sp-activate-database).

Después de realizar cambios en las configuraciones de las bases de datos, es posible que necesite reactivar una base de datos en una instancia de base de datos de RDS para Db2. Para determinar si necesita reactivar una base de datos, conéctese a la base de datos y ejecute `db2 get db cfg show detail`.

Para una base de datos en una instancia de base de datos independiente, puede utilizar el procedimiento almacenado `rdsadmin.reactivate_database` para reactivar la base de datos. O bien, si ya ha llamado al procedimiento almacenado [rdsadmin.deactivate\$1database](#db2-sp-deactivate-database), puede llamar al procedimiento almacenado [rdsadmin.activate\$1database](#db2-sp-activate-database) en su lugar.

Para una base de datos en una instancia de base de datos de origen de réplica, debe utilizar el procedimiento almacenado `rdsadmin.reactivate_database` para reactivar la base de datos.

Para obtener información sobre cómo comprobar el estado de reactivación de una base de datos, 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 `rdsadmin.reactivate_database`, consulte [Errores en los procedimientos almacenados](db2-troubleshooting.md#db2-troubleshooting-stored-procedures).

### Ejemplos
<a name="db2-sp-reactivate-database-examples"></a>

En el siguiente ejemplo, se reactiva una base de datos denominada `TESTDB`.

```
db2 "call rdsadmin.reactivate_database(?, 'TESTDB')"
```

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

Elimina una base de datos.

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

```
db2 "call rdsadmin.drop_database('database_name')"
```

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

El siguiente parámetro es obligatorio:

*database\$1name*  
El nombre de la base de datos que se eliminará. El tipo de datos es `varchar`.

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

Puede eliminar una base de datos llamando a `rdsadmin.drop_database` solo si se cumplen las siguientes condiciones:
+ Si no especificó el nombre de la base de datos al crear la instancia de base de datos de RDS para Db2 mediante la consola de Amazon RDS o la AWS CLI. Para obtener más información, consulte [Creación de una instancia de base de datos](USER_CreateDBInstance.md#USER_CreateDBInstance.Creating).
+ Si creó la base de datos llamando al procedimiento almacenado [rdsadmin.create\$1database](#db2-sp-create-database).
+ Si ha restaurado la base de datos a partir de una imagen sin conexión o de una copia de seguridad llamando al procedimiento almacenado [rdsadmin.restore\$1database](#db2-sp-restore-database).

Antes de llamar a `rdsadmin.drop_database`, debe conectarse a la base de datos `rdsadmin`. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por la información de su instancia de base de datos de RDS para Db2:

```
db2 connect to rdsadmin user master_username using master_password
```

Para obtener más información sobre cómo comprobar el estado de eliminación de una base de datos, 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 `rdsadmin.drop_database`, consulte [Errores en los procedimientos almacenados](db2-troubleshooting.md#db2-troubleshooting-stored-procedures).

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

En el siguiente ejemplo, se elimina una base de datos denominada:`TESTDB`

```
db2 "call rdsadmin.drop_database('TESTDB')"
```

## rdsadmin.update\$1db\$1param
<a name="db2-sp-update-db-param"></a>

Actualiza los parámetros de la base de datos.

### Sintaxis
<a name="db2-sp-update-db-param-syntax"></a>

```
db2 "call rdsadmin.update_db_param(
    'database_name', 
    'parameter_to_modify', 
    'changed_value',
    'restart_database')"
```

### Parameters
<a name="db2-sp-update-db-param-parameters"></a>

Se requieren los siguientes parámetros:

*database\$1name*  
Nombre de la base de datos para la que se desea ejecutar la tarea. El tipo de datos es `varchar`.

*parameter\$1to\$1modify*  
El nombre del parámetro que se va a modificar. El tipo de datos es `varchar`. Para obtener más información, consulte [Parámetros de Amazon RDS para Db2](db2-supported-parameters.md).

*changed\$1value*  
El valor al que se desea cambiar el valor del parámetro. El tipo de datos es `varchar`.

El siguiente parámetro es opcional:

*restart\$1database*  
Especifica si RDS reinicia la base de datos si es necesario. El tipo de datos es `varchar`. Para modificar `logprimary` y `logfilsiz`, establezca este parámetro en `'YES'`.

### Notas de uso
<a name="db2-sp-update-db-param-usage-notes"></a>

Para obtener más información sobre cómo comprobar el estado de actualización de los parámetros de base de datos, 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 `rdsadmin.update_db_param`, consulte [Errores en los procedimientos almacenados](db2-troubleshooting.md#db2-troubleshooting-stored-procedures).

### Ejemplos
<a name="db2-sp-update-db-param-examples"></a>

**Ejemplo 1: actualización de un parámetro**

En el siguiente ejemplo, se actualiza el parámetro `archretrydelay` a `100` para una base de datos denominada:`TESTDB`

```
db2 "call rdsadmin.update_db_param(
    'TESTDB', 
    'archretrydelay', 
    '100')"
```

**Ejemplo 2: aplazamiento de la validación de los objetos**

El siguiente ejemplo aplaza la validación de los objetos creados en una base de datos denominada `TESTDB` para evitar la comprobación de dependencias:

```
db2 "call rdsadmin.update_db_param(
    'TESTDB', 
    'auto_reval', 
    'deferred_force')"
```

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

Configura ajustes específicos para la base de datos.

### Sintaxis
<a name="db2-sp-set-configuration-syntax"></a>

```
db2 "call rdsadmin.set_configuration(
    'name',  
    'value')"
```

### Parameters
<a name="db2-sp-set-configuration-parameters"></a>

Se requieren los siguientes parámetros:

*name*  
El nombre del ajuste de configuración. El tipo de datos es `varchar`.

*valor de*  
El valor del ajuste de la configuración. El tipo de datos es `varchar`.

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

La siguiente tabla muestra los ajustes de configuración que puede controlar con `rdsadmin.set_configuration`.


| Nombre | Descripción | 
| --- | --- | 
|  `RESTORE_DATABASE_NUM_BUFFERS`  |  El número de búferes que se van a crear durante una operación de restauración. Este valor debe ser menor que el tamaño de memoria total de la clase de instancia de base de datos. Si este ajuste no está configurado, Db2 determina el valor que se utilizará durante la operación de restauración. Para obtener más información, consulte el [comando RESTORE DATABASE](https://www.ibm.com/docs/en/db2/11.5?topic=commands-restore-database) en la documentación de IBM Db2.  | 
|  `RESTORE_DATABASE_PARALLELISM`  |  El número de manipuladores de búferes que se van a crear durante una operación de restauración. Este valor debe ser menor que el doble de la cantidad de vCPU para la instancia de base de datos. Si este ajuste no está configurado, Db2 determina el valor que se utilizará durante la operación de restauración. Para obtener más información, consulte el [comando RESTORE DATABASE](https://www.ibm.com/docs/en/db2/11.5?topic=commands-restore-database) en la documentación de IBM Db2.  | 
|  `RESTORE_DATABASE_NUM_MULTI_PATHS`  |  El número de rutas (o secuencias de E/S) que se van a utilizar durante una operación de restauración desde Amazon S3. Para usar este ajuste de configuración, debe tener varios archivos de copia de seguridad. Este valor puede mejorar el rendimiento al restaurar bases de datos con grandes volúmenes de datos, ya que restaura varios archivos de copia de seguridad de bases de datos en paralelo. Recomendamos que establezca este valor para que coincida con el número de los archivos de copia de seguridad de base de datos. Para obtener más información, consulte el [comando BACKUP DATABASE](https://www.ibm.com/docs/en/db2/11.5?topic=commands-backup-database) en la documentación de IBM Db2.  | 
|  `USE_STREAMING_RESTORE`  |  Especifica si se deben transmitir los datos de la copia de seguridad directamente durante la restauración, en lugar de descargar primero la copia de seguridad completa en la instancia de base de datos de RDS para Db2 y, a continuación, extraerla. La configuración de `USE_STREAMING_RESTORE` en `TRUE` reduce considerablemente los requisitos de almacenamiento y se puede mejorar el rendimiento de la restauración. Esta configuración requiere el motor IBM Db2 versión 11.5.9.0.sb00063198.r1 o posterior y conectividad con Amazon S3 a través de la interfaz de red elástica (ENI) de la base de datos. Para obtener más información, consulte [almacenamiento remoto](https://www.ibm.com/docs/en/db2/11.5.x?topic=databases-remote-storage) en la documentación de IBM Db2.  | 

### Ejemplos
<a name="db2-sp-set-configuration-examples"></a>

**Ejemplo 1: especificación del número de búferes que se van a crear**

En el siguiente ejemplo, se establece la configuración `RESTORE_DATABASE_NUM_BUFFERS` en `150`.

```
db2 "call rdsadmin.set_configuration(
    'RESTORE_DATABASE_NUM_BUFFERS', 
    '150')"
```

**Ejemplo 2: especificación del número de manipuladores de búferes que se van a crear**

En el siguiente ejemplo, se establece la configuración `RESTORE_DATABASE_PARALLELISM` en `8`.

```
db2 "call rdsadmin.set_configuration(
    'RESTORE_DATABASE_PARALLELISM', 
    '8')"
```

**Ejemplo 3: especificación del número de rutas o flujos de E/S que se van a utilizar durante la restauración**

En el siguiente ejemplo, se establece la configuración `RESTORE_DATABASE_NUM_MULTI_PATHS` en `5`.

```
db2 "call rdsadmin.set_configuration(
    'RESTORE_DATABASE_NUM_MULTI_PATHS', 
    '5')"
```

**Ejemplo 4: configuración de la restauración para transmitir datos de copia de seguridad**

En el siguiente ejemplo, se establece la configuración `USE_STREAMING_RESTORE` en `TRUE`.

```
db2 "call rdsadmin.set_configuration(
    'USE_STREAMING_RESTORE', 
    'TRUE')"
```

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

Devuelve el ajuste actual que puede establecer mediante el procedimiento almacenado `rdsadmin.set_configuration`.

### Sintaxis
<a name="db2-sp-show-configuration-syntax"></a>

```
db2 "call rdsadmin.show_configuration(
    'name')"
```

### Parameters
<a name="db2-sp-show-configuration-parameters"></a>

El siguiente parámetro es opcional:

*name*  
El nombre del ajuste de configuración sobre el que se va a devolver la información. El tipo de datos es `varchar`.  
Son válidos los siguientes nombres de configuración:  
+ `RESTORE_DATABASE_NUM_BUFFERS`: el número de búferes que se van a crear durante una operación de restauración.
+ `RESTORE_DATABASE_PARALLELISM`: el número de manipuladores de búferes que se van a crear durante una operación de restauración.
+ `RESTORE_DATABASE_NUM_MULTI_PATHS`: el número de rutas (o secuencias de E/S) que se van a utilizar durante una operación de restauración desde Amazon S3.
+ `USE_STREAMING_RESTORE`: especifica si se deben transmitir los datos de la copia de seguridad directamente durante la restauración, en lugar de descargar primero la copia de seguridad completa en la instancia de base de datos de RDS para Db2 y, a continuación, extraerla.

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

Si no especifica el nombre de un ajuste de configuración, `rdsadmin.show_configuration` devuelve la información de todos los ajustes de configuración que puede establecer mediante el procedimiento almacenado `rdsadmin.set_configuration`.

### Ejemplos
<a name="db2-sp-show-configuration-examples"></a>

En el siguiente ejemplo, se devuelve información sobre la configuración `RESTORE_DATABASE_PARALLELISM` actual.

```
db2 "call rdsadmin.show_configuration(
    'RESTORE_DATABASE_PARALLELISM')"
```

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

Se realiza la copia de seguridad de una base de datos de una instancia de base de datos de RDS para Db2 en un bucket de Amazon S3.

### Sintaxis
<a name="db2-sp-backup-database-syntax"></a>

```
db2 "call rdsadmin.backup_database(
    ?,
    'database_name', 
    's3_bucket_name', 
    's3_prefix', 
    'backup_type',
    'compression_option',
    'util_impact_priority', 
    'num_files',
    'parallelism',
    'num_buffers')"
```

### Parameters
<a name="db2-sp-backup-database-parameters"></a>

El siguiente parámetro de salida es obligatorio:

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

Se requieren los siguientes parámetros de entrada:

*database\$1name*  
El nombre de la base de datos de destino en una instancia de base de datos de RDS para Db2 de la que se va a realizar una copia de seguridad. El tipo de datos es `varchar`.  
La base de datos debe existir en la instancia de base de datos. No se puede hacer una copia de seguridad de la base de datos de `rdsadmin`.

*s3\$1bucket\$1name*  
El nombre del bucket de Amazon S3 donde desea que resida la copia de seguridad. El tipo de datos es `varchar`.  
El bucket de S3 debe existir antes de la llamada a `rdsadmin.backup_database`, estar en la misma Región de AWS que la base de datos de destino de la instancia de base de datos de RDS para Db2 de la que desee realizar una copia de seguridad y ser accesible a través del rol de IAM asociado a la instancia de base de datos.

*s3\$1prefix*  
El prefijo de la ruta a Amazon S3, donde RDS para Db2 carga los archivos de copia de seguridad. El tipo de datos es `varchar`.  
El prefijo se limita a 1024 caracteres. No debe incluir una barra inicial o final (/). Debido a una limitación con la transmisión de IBM  a Amazon S3, recomendamos que el prefijo incluya subdirectorios.  
Para una mejor administración de los archivos, RDS para Db2 crea directorios adicionales después de *s3\$1prefix*. RDS para Db2 carga todos los archivos de copia de seguridad en *s3\$1prefix/dbi\$1resource\$1id/db\$1name*. Si establece el *num\$1files* por encima de `1`, el directorio de *db\$1name* contendrá más de un archivo de copia de seguridad.  
A continuación, se muestra un ejemplo de ubicación de Amazon S3 para los archivos de copia de seguridad. En el ejemplo, `backups/daily` es el valor establecido para el parámetro *s3\$1prefix*.  

```
backups/daily/db-5N7FXOY4GDP7RG2NSH2ZTAI2W4/SAMPLEDB
```

*backup\$1type*  
El tipo de copia de seguridad que determina si la base de datos permanece disponible durante la copia de seguridad. El tipo de datos es `varchar`.  
Valores válidos:  
+ `OFFLINE`: la base de datos no está disponible durante la copia de seguridad. Este tipo es más rápido, pero provoca tiempo de inactividad. 
+ `ONLINE`: la base de datos permanece disponible durante la copia de seguridad. De forma predeterminada, `ONLINE` está establecido en `INCLUDE LOGS`.

Los siguientes parámetros son opcionales:

*compression\$1option*  
El tipo de algoritmo de compresión utilizado que afecta al tiempo de copia de seguridad, al uso de la CPU y a los costos de almacenamiento. El tipo de datos es `varchar`. El valor predeterminado es `NONE`.  
Valores válidos:  
+ `NONE`: el tamaño de archivo más grande, el menor uso de la CPU y los costes de almacenamiento más económicos.
+ `STANDARD`: compresión de Db2 estándar. Usa `libdb2compr.so`.
+ `ZLIB`: compresión de Db2 mejorada. Usa `libdb2zcompr.so`, pero consume más CPU y el costo de almacenamiento más caro.

*util\$1impact\$1priority*  
La configuración que controla el impacto de la copia de seguridad en los recursos del sistema. El tipo de datos es `integer`. Valores válidos: `1` - `100` (de menor a mayor). El valor predeterminado es `50`.  
Los valores más bajos reducen el impacto de la copia de seguridad en los recursos del sistema, pero pueden aumentar el tiempo necesario para realizar la copia de seguridad de la base de datos. Los valores más altos podrían completar la copia de seguridad de la base de datos con mayor rapidez, pero podrían afectar a otras operaciones. El impacto real depende del uso general del sistema y de la configuración de `util_impact_lim`. Puede ver y modificar los ajustes de `util_impact_lim` en grupos de parámetros. Para obtener más información, consulte [Parámetros de Amazon RDS para Db2](db2-supported-parameters.md).

*num\$1files*  
El número de transmisiones de carga paralelas a Amazon S3. El tipo de datos es `integer`. Valores válidos: `1`-`256`.  
Le recomendamos que solo establezca este parámetro después de observar el rendimiento de la copia de seguridad en los valores predeterminados que Amazon RDS calcula automáticamente. Los valores más altos podrían mejorar el rendimiento de las copias de seguridad de gran tamaño, especialmente con conexiones de gran ancho de banda, pero en un momento determinado, los valores más altos reducen el rendimiento. Además, asegúrese de tener en cuenta los recursos del sistema disponibles y la capacidad de la red.

*paralelismo*  
El número de espacios de tabla que la utilidad de copia de seguridad puede leer en paralelo. El tipo de datos es `integer`. Valores válidos: `1`-`256`.  
Le recomendamos que solo establezca este parámetro después de observar el rendimiento de la copia de seguridad en los valores predeterminados que el motor de Db2 calcula automáticamente como valor óptimo. Si establece este parámetro, Amazon RDS lo valida con los procesadores disponibles y no ejecutará la solicitud de copia de seguridad si la potencia de procesamiento es insuficiente.

*num\$1buffers*  
El número de búferes que se van a utilizar. El tipo de datos es `integer`. Valores válidos: `1`-`268435456`.  
Le recomendamos que solo establezca este parámetro después de observar el rendimiento de la copia de seguridad en los valores predeterminados que Amazon RDS calcula automáticamente en función de la memoria. Si establece este parámetro, Amazon RDS lo valida con la memoria disponible y no ejecutará la solicitud de copia de seguridad si la memoria disponible es insuficiente. Si va a realizar copias de seguridad en varias ubicaciones (`num_files` está configurado en más de `1`), un mayor número de búferes podría mejorar el rendimiento. Si no está configurado `compression_option` en `NONE`, puede mejorar el rendimiento aumentando `num_buffers` y `parallelism`.

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

Este procedimiento almacenado crea tareas de copia de seguridad asíncronas que transmiten la copia de seguridad de la base de datos directamente al bucket de Amazon S3 mediante la integración de Amazon S3. Puede realizar copias de seguridad desde el servidor local o desde una instancia de base de datos de RDS para Db2, transmitirlas a Amazon S3 y, a continuación, restaurarlas cuando lo desee. Para obtener información acerca de cómo restaurar una base de datos a una instancia de base de datos de RDS para Db2, consulte [rdsadmin.restore\$1database](#db2-sp-restore-database).

Antes de llamar al procedimiento almacenado, tenga en cuenta lo siguiente:
+ Solo puede realizar la copia de seguridad de una base de datos a la vez.
+ No puede realizar una copia de seguridad y una restauración juntas en una instancia de base de datos.
+ El cifrado del servidor de Amazon S3 con AWS KMS (SSE-KMS) no se admite. Incluso si el bucket de S3 está configurado como SSE-KMS, los archivos cargados en el bucket de S3 no utilizarán el cifrado de SSE-KMS.
+ Para transmitir los archivos de copia de seguridad a Amazon S3, debe haber configurado previamente la integración. Para obtener más información, consulte [Integración de una instancia de base de datos de Amazon RDS para Db2 con Amazon S3](db2-s3-integration.md).
+ Para que una instancia de base de datos de RDS para Db2 interactúe con Amazon S3, debe tener una VPC y un punto de conexión de puerta de enlace de Amazon S3 para que lo utilicen las subredes privadas. Para obtener más información, consulte [Paso 1: crear un punto de conexión de puerta de enlace de VPC para Amazon S3](db2-troubleshooting.md#db2-creating-endpoint) y [Paso 2: confirme que existe el punto de conexión de la puerta de enlace de Amazon S3](db2-troubleshooting.md#db2-confirming-endpoint).

Antes de llamar a `rdsadmin.backup_database`, debe conectarse a la base de datos `rdsadmin`. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por la información de su instancia de base de datos de RDS para Db2:

```
db2 connect to rdsadmin user master_username using master_password
```

Después de hacer una copia de seguridad de la base de datos, asegúrese de terminar la conexión.

```
terminate
```

Para obtener más información sobre cómo comprobar el estado de la copia de seguridad de una base de datos, 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 `rdsadmin.backup_database`, consulte [Errores en los procedimientos almacenados](db2-troubleshooting.md#db2-troubleshooting-stored-procedures).

### Ejemplos
<a name="db2-sp-backup-database-examples"></a>

Todos los ejemplos hacen una copia de seguridad de una base de datos llamada `MYDB` en el bucket de Amazon S3 llamado `amzn-s3-demo-bucket` y configuran el *s3\$1prefix* en `backups/daily`.

**Ejemplo n.º 1: especificación de una base de datos fuera de línea y no disponible con un uso medio y un único flujo de carga**

En el siguiente ejemplo, la base de datos está fuera de línea, lo que es más rápido, pero significa que la base de datos no está disponible durante la copia de seguridad. El ejemplo no comprime los archivos, tiene un impacto medio en los recursos del sistema y utiliza una única transmisión de carga a Amazon S3.

```
db2 call "rdsadmin.backup_database(
    ?, 
    'MYDB',
    'amzn-s3-demo-bucket', 
    'backups/daily',
    'OFFLINE',
    'NONE', 
    50, 
    1)"
```

**Ejemplo n.º 2: especificación de una base de datos en línea y disponible con compresión mejorada, utilización media y pocos flujos de carga paralelos**

En el siguiente ejemplo, la base de datos está en línea y disponible durante la copia de seguridad. En el ejemplo se realiza una compresión mejorada, lo que se traduce en un tamaño de archivo pequeño, pero requiere un uso intensivo de la CPU. Tiene un impacto ligeramente superior a la media en los recursos del sistema y utiliza cinco flujos de carga a Amazon S3.

```
db2 call "rdsadmin.backup_database(
    ?, 
    'MYDB',
    'amzn-s3-demo-bucket', 
    'backups/daily',
    'ONLINE',
    'ZLIB', 
    60, 
    5)"
```

**Ejemplo n.º 3: especificación de una base de datos sin conexión y no disponible con valores predeterminados y cálculos del sistema**

En el siguiente ejemplo, la base de datos está fuera de línea, lo que es más rápido, pero significa que la base de datos no está disponible durante la copia de seguridad. En el ejemplo, se utiliza la compresión predeterminada de los archivos, lo que afecta a los recursos del sistema. También permite a RDS para Db2 calcular el número de flujos de carga paralelos a Amazon S3, los espacios de tablas que se deben leer en paralelo y los búferes que se deben utilizar.

```
db2 "call rdsadmin.backup_database(
    ?, 
    'MYDB', 
    'amzn-s3-demo-bucket',
    'backups/daily', 
    'OFFLINE')"
```

**Ejemplo n.º 4: especificación de una base de datos sin conexión y no disponible sin compresión, con una utilización alta y con cálculos personalizados**

En el siguiente ejemplo, la base de datos está fuera de línea, lo que es más rápido, pero significa que la base de datos no está disponible durante la copia de seguridad. El ejemplo no comprime los archivos, tiene un impacto alto en los recursos del sistema y utiliza 20 transmisiones de carga a Amazon S3. Establece el número máximo de espacios de tablas para leer en paralelo, lo que puede provocar que la solicitud de copia de seguridad produzca un error si la potencia de procesamiento es insuficiente. También establece el número máximo de búferes que se deben utilizar, lo que puede provocar un error en la solicitud de copia de seguridad si la memoria es insuficiente.

```
db2 "call rdsadmin.backup_database(
    ?, 
    'MYDB', 
    'amzn-s3-demo-bucket', 
    'backups/daily', 
    'OFFLINE', 
    'NONE', 
    90, 
    20, 
    256, 
    268435456)"
```

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

Restablece una base de datos de un bucket de Amazon S3 a una instancia de base de datos de RDS para Db2.

### Sintaxis
<a name="db2-sp-restore-database-syntax"></a>

```
db2 "call rdsadmin.restore_database(
    ?,
    'database_name', 
    's3_bucket_name', 
    's3_prefix', 
    restore_timestamp, 
    'backup_type')"
```

### Parameters
<a name="db2-sp-restore-database-parameters"></a>

El siguiente parámetro de salida es obligatorio: 

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

Se requieren los siguientes parámetros de entrada:

*database\$1name*  
El nombre de la base de datos de destino que se va a restaurar en RDS para Db2. El tipo de datos es `varchar`.  
Por ejemplo, si el nombre de la base de datos de origen era `TESTDB` y usted estableció *database\$1name* en `NEWDB`, Amazon RDS restaura `NEWDB` como la base de datos de origen.

*s3\$1bucket\$1name*  
El nombre del bucket de Amazon S3 donde se almacena su copia de seguridad. El tipo de datos es `varchar`.

*s3\$1prefix*  
El prefijo que se utilizará para la coincidencia de archivos durante la descarga. El tipo de datos es `varchar`.  
Si este parámetro está vacío, se procesarán todos los archivos del bucket de Amazon S3. A continuación, se muestra un prefijo de ejemplo:  

```
backupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101
```

*restore\$1timestamp*  
La marca de tiempo de la imagen de copia de seguridad de la base de datos. El tipo de datos es `varchar`.  
La marca de tiempo se incluye en el nombre del archivo de copia de seguridad. Por ejemplo, `20230615010101` es la marca de tiempo del nombre del archivo `SAMPLE.0.rdsdb.DBPART000.20230615010101.001`.

*backup\$1type*  
El tipo de copia de seguridad. El tipo de datos es `varchar`. Valores válidos: `OFFLINE`, `ONLINE`.  
Use `ONLINE` para migraciones con un tiempo de inactividad prácticamente nulo Para obtener más información, consulte [Migración de Linux a Linux con un tiempo de inactividad prácticamente nulo para Amazon RDS para Db2](db2-near-zero-downtime-migration.md).

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

Puede utilizar este procedimiento almacenado para migrar una base de datos Db2 a una instancia de base de datos de RDS para Db2. Para obtener más información, consulte [Uso de servicios de AWS para migrar datos de Db2 a Amazon RDS para Db2](db2-migration-approaches.md). También puede utilizar este procedimiento almacenado para crear varias copias de la misma base de datos con diferentes nombres de base de datos que utilicen la misma imagen de restauración.

Antes de llamar al procedimiento almacenado, tenga en cuenta lo siguiente: 
+ Antes de restaurar una base de datos, debe aprovisionar un espacio de almacenamiento para la instancia de base de datos de RDS para Db2 que sea mayor que la base de datos de Db2 original en el disco. Si ha habilitado `USE_STREAMING_RESTORE`, cuando restaure la copia de seguridad, Amazon RDS transmite los archivos de copia de seguridad directamente desde el bucket de S3 a la instancia de base de datos de RDS para Db2. Si no habilita `USE_STREAMING_RESTORE`, debe aprovisionar un espacio de almacenamiento para la instancia de base de datos de RDS para Db2 que sea igual o mayor que la suma del tamaño de la copia de seguridad más la base de datos Db2 original en el disco. Para obtener más información, consulte [Insufficient disk space](db2-troubleshooting.md#restore-database-sp-insufficient-disk-space).
+ Al restaurar la copia de seguridad, Amazon RDS extrae el archivo de copia de seguridad de la instancia de base de datos de RDS para Db2. Cada archivo de copia de seguridad debe tener 5 TB o menos. Si un archivo de copia de seguridad supera los 5 TB, debe dividir el archivo de copia de seguridad en archivos más pequeños. 
+ Para restaurar todos los archivos con el procedimiento almacenado `rdsadmin.restore_database`, no incluya el sufijo del número de archivo después de la marca de tiempo en los nombres de los archivos. Por ejemplo, el *s3\$1prefix* `backupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101` restaura los siguientes archivos:

  ```
  SAMPLE.0.rdsdb.DBPART000.20230615010101.001
  SAMPLE.0.rdsdb.DBPART000.20230615010101.002
  SAMPLE.0.rdsdb.DBPART000.20230615010101.003
  SAMPLE.0.rdsdb.DBPART000.20230615010101.004
  SAMPLE.0.rdsdb.DBPART000.20230615010101.005
  ```
+ RDS para Db2 no admite almacenamiento no automático. Para obtener más información, consulte [Tablespaces not restored](db2-troubleshooting.md#restore-database-sp-tablespaces-not-restored).
+ RDS para Db2 no admite la creación de rutinas no restringidas. Para obtener más información, consulte [Non-fenced routines not allowed](db2-troubleshooting.md#restore-database-sp-non-fenced-routines).
+ Para mejorar el rendimiento de las operaciones de restauración de bases de datos, puede configurar el número de búferes, manipuladores de búferes y el número de rutas de varias copias de seguridad que utilizará RDS. Para optimizar el uso del almacenamiento y mejorar potencialmente el rendimiento, también puede transmitir directamente una copia de seguridad desde Amazon S3. Para comprobar la configuración actual, utilice [rdsadmin.show\$1configuration](#db2-sp-show-configuration). Para cambiar la configuración, utilice [rdsadmin.set\$1configuration](#db2-sp-set-configuration).

Para poner la base de datos en línea y aplicar registros de transacciones adicionales después de restaurarla, consulte [rdsadmin.rollforward\$1database](#db2-sp-rollforward-database).

Para obtener más información sobre cómo comprobar el estado de restauración de su base de datos, 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 `rdsadmin.restore_database`, consulte [Errores en los procedimientos almacenados](db2-troubleshooting.md#db2-troubleshooting-stored-procedures).

### Ejemplos
<a name="db2-sp-restore-database-examples"></a>

El siguiente ejemplo restaura una copia de seguridad sin conexión con uno o varios archivos que tienen el *s3\$1prefix*:`backupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101`

```
db2 "call rdsadmin.restore_database(
    ?,
    'SAMPLE',
    'amzn-s3-demo-bucket',
    'backupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101',
    20230615010101,
    'OFFLINE')"
```

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

Pone la base de datos en línea y aplicar registros de transacciones adicionales después de restaurar una base de datos llamando a [rdsadmin.restore\$1database](#db2-sp-restore-database).

### Sintaxis
<a name="db2-sp-rollforward-database-syntax"></a>

```
db2 "call rdsadmin.rollforward_database(
    ?,
    'database_name',
    's3_bucket_name', 
    s3_prefix, 
    'rollforward_to_option', 
    'complete_rollforward')"
```

### Parameters
<a name="db2-sp-rollforward-database-parameters"></a>

El siguiente parámetro de salida es obligatorio: 

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

Se requieren los siguientes parámetros de entrada:

*database\$1name*  
Nombre de la base de datos en la que se va a realizar la operación. El tipo de datos es `varchar`.

*s3\$1bucket\$1name*  
El nombre del bucket de Amazon S3 donde se almacena su copia de seguridad. El tipo de datos es `varchar`.

*s3\$1prefix*  
El prefijo que se utilizará para la coincidencia de archivos durante la descarga. El tipo de datos es `varchar`.  
Si este parámetro está vacío, se descargarán todos los archivos del bucket de S3. A continuación, se muestra un ejemplo de prefijo:  

```
backupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101
```

Los siguientes parámetros de entrada son opcionales:

*rollforward\$1to\$1option*  
El punto al que desee realizar la puesta al día. El tipo de datos es `varchar`. Valores válidos: `END_OF_LOGS`, `END_OF_BACKUP` con la marca temporal en el formato `YYYY-MM-DD-HH.MM.SS`. El valor predeterminado es `END_OF_LOGS`.

*complete\$1rollforward*  
Especifica si se debe completar el proceso de puesta al día. El tipo de datos es `varchar`. El valor predeterminado es `TRUE`.  
Si es `TRUE`, una vez finalizado el proceso, la base de datos está en línea y accesible. Si es `FALSE`, entonces la base de datos permanece en el estado `ROLL-FORWARD PENDING`.

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

Puede utilizar `rds.rollforward_database` como copia de seguridad en línea e incluir registros que se generan en las instalaciones en muchos escenarios diferentes.

**Escenario 1: restauración de la base de datos, actualización de los registros incluidos y puesta en línea de la base de datos**

Una vez completo `rdsadmin.restore_database()`, utilice la sintaxis del [Ejemplo 1](#db2-sp-rollforward-database-examples) para poner en línea la base de datos con los registros de transacciones.

**Escenario 2: puesta en línea de la base de datos, pero no actualización de los registros incluidos. **

Una vez completo `rdsadmin.restore_database()`, utilice la sintaxis del [Ejemplo 2](#db2-sp-rollforward-database-examples) para poner en línea la base de datos sin los registros de transacciones.

**Escenario 3: continuar con los registros incluidos en la copia de seguridad y aplicar registros de transacciones adicionales a medida que se producen en las instalaciones**

Una vez completo `rdsadmin.restore_database()`, utilice la sintaxis del [Ejemplo 3 o Ejemplo 4](#db2-sp-rollforward-database-examples) para recuperar los registros sin poner la base de datos en línea.

Si configura `complete_rollforward` como `FALSE` la base de datos estará en el estado `ROLL-FORWARD PENDING` y sin conexión. Para poner la base de datos en línea, debe llamar a [rdsadmin.complete\$1rollforward](#db2-sp-complete-rollforward).

Para obtener información sobre cómo comprobar el estado de puesta al día de una base de datos, consulte [rdsadmin.rollforward\$1status](#db2-sp-rollforward-status).

### Ejemplos
<a name="db2-sp-rollforward-database-examples"></a>

**Ejemplo 1: Puesta en línea de una base de datos con registros de transacciones**

El siguiente ejemplo pone al día una base de datos desde una copia de seguridad en línea con los registros de transacciones y pone la base de datos en línea:

```
db2 "call rdsadmin.rollforward_database(
    ?,
    null,
    null,
    'END_OF_LOGS',
    'TRUE')"
```

**Ejemplo 2: puesta en línea de una base de datos sin registros de transacciones **

El siguiente ejemplo pone al día una base de datos desde una copia de seguridad en línea sin los registros de transacciones y pone la base de datos en línea:

```
db2 "call rdsadmin.rollforward_database(
    ?,
    'TESTDB',
    'amzn-s3-demo-bucket',
    'logsfolder/,
    'END_OF_BACKUP',
    'TRUE')"
```

**Ejemplo 3: no puesta en línea de la base de datos con registros de transacciones **

El siguiente ejemplo pone al día una base de datos desde una copia de seguridad en línea con los registros de transacciones y luego no pone la base de datos en línea:

```
db2 "call rdsadmin.rollforward_database(
    ?,
    'TESTDB',
    null,
    'onlinebackup/TESTDB',
    'END_OF_LOGS',
    'FALSE')"
```

**Ejemplo 4: no puesta en línea de la base de datos con registros de transacciones adicionales **

El siguiente ejemplo pone al día una base de datos desde una copia de seguridad en línea con los registros de transacciones adicionales y luego no pone la base de datos en línea:

```
db2 "call rdsadmin.rollforward_database(
    ?,
    'TESTDB',
    'amzn-s3-demo-bucket',
    'logsfolder/S0000155.LOG',
    'END_OF_LOGS',
    'FALSE')"
```

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

Devuelve el resultado de `ROLLFORWARD DATABASE database_name QUERY STATUS`.

### Sintaxis
<a name="db2-sp-rollforward-status-syntax"></a>

```
db2 "call rdsadmin.rollforward_status(
    ?,
    'database_name')"
```

### Parameters
<a name="db2-sp-rollforward-status-parameters"></a>

El siguiente parámetro de salida es obligatorio: 

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

El siguiente parámetro de entrada es obligatorio:

*database\$1name*  
Nombre de la base de datos en la que se va a realizar la operación. El tipo de datos es `varchar`.

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

Después de llamar a [rdsadmin.rollforward\$1database](#db2-sp-rollforward-database), puede llamar a `rdsadmin.rollforward_status` para comprobar el estado de la acumulación en la base de datos.

Para obtener información sobre cómo comprobar el estado de este procedimiento almacenado, consulte [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status).

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

Pone en línea la base de datos desde un estado `ROLL-FORWARD PENDING`.

### Sintaxis
<a name="db2-sp-complete-rollforward-syntax"></a>

```
db2 "call rdsadmin.complete_rollforward(
    ?,
    'database_name')"
```

### Parameters
<a name="db2-sp-complete-rollforward-parameters"></a>

El siguiente parámetro de salida es obligatorio: 

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

El siguiente parámetro de entrada es obligatorio:

*database\$1name*  
El nombre de la base de datos que quiera poner en línea. El tipo de datos es `varchar`.

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

Si llamó a [rdsadmin.rollforward\$1database](#db2-sp-rollforward-database) con `complete_rollforward` configurado como `FALSE`, la base de datos está en un estado `ROLL-FORWARD PENDING` y sin conexión. Para completar el proceso de puesta al día y poner la base de datos en línea, llame a `rdsadmin.complete_rollforward`.

Para obtener información sobre cómo comprobar el estado de finalización del proceso de avance, consulte [rdsadmin.rollforward\$1status](#db2-sp-rollforward-status).

### Ejemplos
<a name="db2-sp-complete-rollforward-examples"></a>

El siguiente ejemplo pone la base de datos TESTDB en línea:

```
db2 "call rdsadmin.complete_rollforward(
    ?,
    'TESTDB')"
```

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

Recopila información sobre una base de datos de RDS para Db2.

### Sintaxis
<a name="db2-sp-db2pd-command-syntax"></a>

```
db2 "call rdsadmin.db2pd_command('db2pd_cmd')"
```

### Parameters
<a name="db2-sp-db2pd-command-parameters"></a>

El siguiente parámetro de entrada es obligatorio:

*db2pd\$1cmd*  
El nombre del comando `db2pd` que desea ejecutar. El tipo de datos es `varchar`.  
El parámetro debe comenzar con un guion. Para obtener una lista de parámetros, consulte [db2pd - Monitor and troubleshoot Db2 database command](https://www.ibm.com/docs/en/db2/11.5?topic=commands-db2pd-monitor-troubleshoot-db2-engine-activities) en la documentación de IBM Db2.  
Las siguientes opciones no son compatibles:  
+ `-addnode`
+ `-alldatabases`
+ `-alldbp`
+ `-alldbs`
+ `-allmembers`
+ `-alm_in_memory`
+ `-cfinfo`
+ `-cfpool`
+ `-command`
+ `-dbpartitionnum`
+ `-debug`
+ `-dump`
+ `-everything`
+ `-file | -o`
+ `-ha`
+ `-interactive`
+ `-member`
+ `-pages`
**nota**  
`-pages summary`Compatible con .
+ `-pdcollection`
+ `-repeat`
+ `-stack`
+ `-totalmem`
La subopción `file` no es compatible; por ejemplo, `db2pd -db testdb -tcbstats file=tcbstat.out`.  
El uso de la opción `stacks` no es compatible; por ejemplo, `db2pd -edus interval=5 top=10 stacks`.

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

Este procedimiento almacenado recopila información que puede ayudar a supervisar y solucionar problemas de bases de datos de RDS para Db2.

El procedimiento almacenado utiliza la utilidad `db2pd` de IBM para ejecutar varios comandos. La utilidad `db2pd` requiere una autorización `SYSADM`, que el usuario maestro de RDS para Db2 no tiene. Sin embargo, con el procedimiento almacenado de Amazon RDS, el usuario maestro puede utilizar la utilidad para ejecutar varios comandos. Para obtener más información acerca de la utilidad, consulte [db2pd - Monitor and troubleshoot Db2 database command](https://www.ibm.com/docs/en/db2/11.5?topic=commands-db2pd-monitor-troubleshoot-db2-engine-activities) en la documentación de IBM Db2.

El resultado está restringido a un máximo de 2 GB.

Para obtener información sobre cómo comprobar el estado de la recopilación de información sobre la base de datos, consulte [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status).

### Ejemplos
<a name="db2-sp-db2pd-command-examples"></a>

**Ejemplo 1: devolución del tiempo de actividad de la instancia de base de datos**

El siguiente ejemplo devuelve el tiempo de actividad de una instancia de base de datos de RDS para Db2:

```
db2 "call rdsadmin.db2pd_command('-')"
```

**Ejemplo 2: devolución del tiempo de actividad de la base de datos**

El siguiente ejemplo devuelve el tiempo de actividad de una base de datos denominada:`TESTDB`

```
db2 "call rdsadmin.db2pd_command('-db TESTDB -')"
```

**Ejemplo 3: devolución del uso de memoria de la instancia de base de datos**

El siguiente ejemplo devuelve el uso de memoria de una instancia de base de datos de RDS para Db2:

```
db2 "call rdsadmin.db2pd_command('-dbptnmem')"
```

**Ejemplo 4: devolución de conjuntos de memoria de una instancia de base de datos y una base de datos**

El siguiente ejemplo devuelve los conjuntos de memoria de una instancia de base de datos de RDS para Db2 y una base de datos denominada:`TESTDB`

```
db2 "call rdsadmin.db2pd_command('-inst -db TESTDB -memsets')"
```

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

Fuerza a las aplicaciones a salir de una base de datos de RDS para Db2.

### Sintaxis
<a name="db2-sp-force-application-syntax"></a>

```
db2 "call rdsadmin.force_application(
    ?,
    'applications')"
```

### Parameters
<a name="db2-sp-force-application-parameters"></a>

El siguiente parámetro de salida es obligatorio: 

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

El siguiente parámetro de entrada es obligatorio:

*aplicaciones*  
Las aplicaciones que quiere forzar a que salgan de una base de datos de RDS para Db2. El tipo de datos es `varchar`. Valores válidos: `ALL` o *application\$1handle*.  
Separe los nombres de varias aplicaciones con comas. Ejemplo: '*application\$1handle\$11*, *application\$1handle\$12*'.

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

Este procedimiento almacenado obliga a todas las aplicaciones a salir de una base de datos para que pueda realizar el mantenimiento.

El procedimiento almacenado utiliza el comando `FORCE APPLICATION` de IBM. El comando `FORCE APPLICATION` requiere autorización `SYSADM`, `SYSMAINT` o `SYSCTRL` que el usuario maestro de RDS para Db2 no tiene. Sin embargo, con el procedimiento almacenado de Amazon RDS, el usuario maestro puede utilizar el comando. Para obtener más información, consulte [FORCE APPLICATION command](https://www.ibm.com/docs/en/db2/11.1?topic=commands-force-application) en la documentación de IBM Db2.

Para obtener información sobre cómo comprobar el estado al obligar la salida de aplicaciones de una base de datos, consulte [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status).

### Ejemplos
<a name="db2-sp-force-application-examples"></a>

**Ejemplo 1: especificación de todas las aplicaciones**

El siguiente ejemplo fuerza a todas las aplicaciones a salir de una base de datos de RDS para Db2:

```
db2 "call rdsadmin.force_application(
    ?,
    'ALL')"
```

**Ejemplo 2: especificación de varias aplicaciones**

El siguiente ejemplo obliga a los controladores de aplicaciones `9991`, `8891` y `1192` a salir de una base de datos de RDS para Db2:

```
db2 "call rdsadmin.force_application(
    ?,
    '9991, 8891, 1192')"
```

## rdsadmin.set\$1archive\$1log\$1retention
<a name="db2-sp-set-archive-log-retention"></a>

Configura la cantidad de tiempo (en horas) que se conservarán los archivos de registro de la base de datos de RDS para Db2 especificada.

### Sintaxis
<a name="db2-sp-set-archive-log-retention-syntax"></a>

```
db2 "call rdsadmin.set_archive_log_retention(
    ?,            
    'database_name',  
    'archive_log_retention_hours')"
```

### Parameters
<a name="db2-sp-set-archive-log-retention-parameters"></a>

El siguiente parámetro de salida es obligatorio:

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

Se requieren los siguientes parámetros de entrada:

*database\$1name*  
El nombre de la base de datos para la que se configura la retención de registros de archivo. El tipo de datos es `varchar`.

*archive\$1log\$1retention\$1hours*  
El número de horas que se van a conservar los archivos de registros de archivo. El tipo de datos es `smallint`. El valor predeterminado es `0` y el máximo es `840` (35 días).  
Si el valor es `0`, Amazon RDS no conserva los archivos de registro de archivo.

### Notas de uso
<a name="db2-sp-set-archive-log-retention-usage-notes"></a>

De forma predeterminada, RDS para Db2 retiene los registros durante 5 minutos. Si utiliza herramientas de replicación, como AWS DMS para la captura de datos de cambios (CDC) o IBM Q Replication, le recomendamos que configure la retención de registros en esas herramientas para más de 5 minutos.

Puede ver la configuración actual de conservación de registros de archivo llamando a [rdsadmin.show\$1archive\$1log\$1retention](#db2-sp-show-archive-log-retention).

No puede configurar el ajuste de retención de registros de archivos en la base de datos `rdsadmin`.

### Ejemplos
<a name="db2-sp-set-archive-log-retention-examples"></a>

**Ejemplo 1: establecimiento del tiempo de retención**

El siguiente ejemplo ajusta el tiempo de conservación de registros de archivo para una base de datos denominada `TESTDB` en 24 horas.

```
db2 "call rdsadmin.set_archive_log_retention(
    ?,
    'TESTDB', 
    '24')"
```

**Ejemplo 2: desactivación del tiempo de retención**

El siguiente ejemplo deshabilita la conservación de registros de archivo para una base de datos denominada `TESTDB`.

```
db2 "call rdsadmin.set_archive_log_retention(
    ?,
    'TESTDB', 
    '0')"
```

## rdsadmin.show\$1archive\$1log\$1retention
<a name="db2-sp-show-archive-log-retention"></a>

Devuelve la configuración actual de retención de registros de archivo de la base de datos especificada.

### Sintaxis
<a name="db2-sp-show-archive-log-retention-syntax"></a>

```
db2 "call rdsadmin.show_archive_log_retention(
    ?,
    'database_name')"
```

### Parameters
<a name="db2-sp-show-archive-log-retention-parameters"></a>

El siguiente parámetro de salida es obligatorio:

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

El siguiente parámetro de entrada es obligatorio:

*database\$1name*  
El nombre de la base de datos para la que se muestra la configuración de la conservación de registros de archivo. El tipo de datos es `varchar`.

### Ejemplos
<a name="db2-sp-show-archive-log-retention-examples"></a>

El siguiente ejemplo muestra el ajuste de conservación de registros de archivo para una base de datos denominada `TESTDB`.

```
db2 "call rdsadmin.show_archive_log_retention(?,'TESTDB')"
```

## rdsadmin.list\$1archive\$1log\$1information
<a name="db2-sp-list-archive-log-information"></a>

Devuelve detalles sobre los archivos de registro de archivo, como el tamaño, la fecha y hora de creación y el nombre de los archivos de registro individuales de la base de datos especificada. También devuelve la cantidad total de almacenamiento utilizada por los archivos de registro de la base de datos.

### Sintaxis
<a name="db2-sp-list-archive-log-information-syntax"></a>

```
db2 "call rdsadmin.list_archive_log_information(
    ?,
    'database_name')"
```

### Parameters
<a name="db2-sp-list-archive-log-information-parameters"></a>

El siguiente parámetro de salida es obligatorio:

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

El siguiente parámetro de entrada es obligatorio:

*database\$1name*  
El nombre de la base de datos para la que se va a mostrar la información de registro de archivo. El tipo de datos es `varchar`.

### Ejemplos
<a name="db2-sp-list-archive-log-information-examples"></a>

El siguiente ejemplo devuelve información de registros de archivo para una base de datos denominada `TESTDB`.

```
db2 "call rdsadmin.list_archive_log_information(
    ?,
    'TESTDB')"
```

## rdsadmin.enable\$1archive\$1log\$1copy
<a name="db2-sp-enable_archive_log_copy"></a>

Habilita la copia del registro de archivos de la base de datos de RDS Db2 en Amazon S3.

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

```
db2 "call rdsadmin.enable_archive_log_copy(
    ?,
    'database_name')"
```

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

El siguiente parámetro de salida es obligatorio:

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

El siguiente parámetro de entrada es obligatorio:

*database\$1name*  
El nombre de la base de datos para la que se habilitará la copia del registro de archivos en Amazon S3. El tipo de datos es `varchar`.

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

El siguiente ejemplo habilita la copia del registro de archivos para una base de datos denominada `TESTDB`.

```
db2 "call rdsadmin.enable_archive_log_copy(
    ?,
    'TESTDB')"
```

## rdsadmin.disable\$1archive\$1log\$1copy
<a name="db2-sp-disable_archive_log_copy"></a>

Deshabilita la copia del registro de archivos de la base de datos de RDS Db2 en Amazon S3.

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

```
db2 "call rdsadmin.disable_archive_log_copy(
    ?,
    'database_name')"
```

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

El siguiente parámetro de salida es obligatorio:

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

El siguiente parámetro de entrada es obligatorio:

*database\$1name*  
El nombre de la base de datos para la que se va a deshabilitar la copia del registro de archivos en Amazon S3. El tipo de datos es `varchar`.

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

El siguiente ejemplo deshabilita la copia del registro de archivos para una base de datos denominada `TESTDB`.

```
db2 "call rdsadmin.disable_archive_log_copy(
    ?,
    'TESTDB')"
```

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

Ejecuta comandos de control de acceso preciso (FGAC).

### Sintaxis
<a name="db2-sp-fgac-command-syntax"></a>

```
db2 "call rdsadmin.fgac_command(
    ?,
    'database_name',
    'fgac_cmd')"
```

### Parameters
<a name="db2-sp-fgac-command-parameters"></a>

El siguiente parámetro de salida es obligatorio:

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

Se requieren los siguientes parámetros de entrada:

*database\$1name*  
El nombre de la base de datos en la que desea ejecutar comandos de FGAC. El tipo de datos es `varchar`.

*fgac\$1cmd*  
El comando de control de acceso preciso que desea ejecutar. El tipo de datos es `varchar`.  
Los comandos siguientes son válidos:  
+ `ALTER MASK`: modifica una máscara de columna existente en el control de acceso por filas y columnas (RCAC).
+ `ALTER PERMISSION`: modifica las propiedades de un permiso de fila existente en el RCAC.
+ `ALTER SECURITY POLICY`: modifica una política de seguridad existente para el RCAC.
+ `ALTER SECURITY LABEL`: modifica las propiedades de una etiqueta de seguridad existente en el control de acceso basado en etiquetas (LBAC). 
+ `ALTER TABLE`: modifica la estructura de la tabla, incluida la agregación de controles RCAC o LBAC.
+ `CREATE MASK`: crea una nueva máscara de columna para el RCAC.
+ `CREATE PERMISSION`: crea un nuevo permiso de fila para el RCAC.
+ `CREATE SECURITY LABEL`: crea una nueva etiqueta de seguridad para el LBAC.
+ `CREATE SECURITY POLICY`: crea una nueva política de seguridad para el RCAC.
+ `DROP MASK`: elimina una máscara de columna existente.
+ `DROP PERMISSION`: elimina un permiso de fila existente.
+ `DROP SECURITY LABEL`: elimina una etiqueta de seguridad del LBAC.
+ `DROP SECURITY POLICY`: elimina una política de seguridad existente del RCAC.
+ `GRANT EXEMPTION ON RULE`: permite al usuario eludir reglas específicas del LBAC.
+ `GRANT SECURITY LABEL`: asigna una etiqueta de seguridad de LBAC a un usuario.
+ `REVOKE EXEMPTION ON RULE`: elimina la exención de un usuario de las normas del LBAC.
+ `REVOKE SECURITY LABEL`: elimina una etiqueta de seguridad del LBAC de un usuario.

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

Este procedimiento almacenado controla el acceso por fila o columna a los datos de tabla de la base de datos en una instancia de base de datos de RDS para Db2. RDS para Db2 admite dos tipos de FGAC en la base de datos: 
+ control de acceso basado en etiquetas (LBAC)
+ control de acceso por filas y columnas (RCAC)

Antes de llamar al procedimiento almacenado, tenga en cuenta lo siguiente: 
+ Para evitar una comilla simple (‘), utilice una comilla simple adicional. Los siguientes ejemplos muestran cómo evitar `'apple'`, `'banana'` y `'fruit'`.

  ```
  db2 "call rdsadmin.fgac_command(
      ?,
      'testdb',
      'CREATE SECURITY LABEL COMPONENT FRUITSET SET{''apple'',''banana''}')"
  ```

  ```
  db2 "call rdsadmin.fgac_command(
      ?, 
      'testdb', 
      'CREATE SECURITY LABEL COMPONENT FRUITTREE TREE(''fruit'' ROOT, ''apple'' UNDER ''fruit'', ''banana'' UNDER ''fruit'')')"
  ```
+ Para evitar los corchetes ([ ]), utilice una barra invertida (\$1). En el siguiente ejemplo, se muestra cómo evitar `[''apple'',''banana'']`. 

  ```
  db2 "call rdsadmin.fgac_command(
      ?, '
      testdb', 
      'CREATE SECURITY LABEL COMPONENT FRUITARRAY ARRAY\[''apple'',''banana''\]')"
  ```

### Ejemplos
<a name="db2-sp-fgac-command-examples"></a>

Todos los ejemplos siguientes ejecutan comandos de FGAC en una base de datos llamada `testdb`.

**Ejemplo 1: creación de una nueva etiqueta de seguridad llamada `FRUITSET`** 

```
db2 "call rdsadmin.fgac_command(
    ?,
    'testdb',
    'CREATE SECURITY LABEL COMPONENT FRUITSET SET{''apple'',''banana''}')"
```

**Ejemplo 2: creación de una nueva máscara para la columna `EMP_ID` que está habilitada cuando `EMP_ID` está configurado en menos de tres**

```
db2 "call rdsadmin.fgac_command(
    ?,
    'testdb',
    'CREATE MASK id_MASK ON EMPLOYEE FOR COLUMN EMP_ID RETURN CASE WHEN (EMP_ID < 3) THEN EMP_ID ELSE NULL END ENABLE')"
```

**Ejemplo 3: creación de una nueva máscara para la columna `DEPARTMENT` que está habilitada cuando `SESSION_USER` está configurado en `security_user`** 

```
db2 "call rdsadmin.fgac_command(
    ?,
    'testdb',
    'CREATE MASK DEPARTMENT_MASK ON EMPLOYEE FOR COLUMN DEPARTMENT RETURN CASE  WHEN SESSION_USER = ''security_user'' THEN DEPARTMENT ELSE NULL END ENABLE')"
```

**Ejemplo 4: creación de una nueva etiqueta de seguridad llamada `treelabel`** 

```
db2 "call rdsadmin.fgac_command(
    ?,
    'testdb',
    'CREATE SECURITY LABEL COMPONENT treelabel  TREE(''COMPANY'' ROOT, ''HR'' UNDER ''COMPANY'', ''FINANCE'' UNDER ''COMPANY'', ''IT'' UNDER ''COMPANY'')')"
```

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

Recopila información de diagnóstico sobre una base de datos de RDS para Db2 y la carga en un bucket de Amazon S3.

### Sintaxis
<a name="db2-sp-db2support-command-syntax"></a>

```
db2 "call rdsadmin.db2support_command(
    ?,
    'database_name',
    's3_bucket_name',
    's3_prefix')"
```

### Parameters
<a name="db2-sp-db2support-command-parameters"></a>

El siguiente parámetro de salida es obligatorio:

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

Se requieren los siguientes parámetros de entrada:

*database\$1name*  
El nombre de la base de datos para la que se recopilará la información de diagnóstico. El tipo de datos es `varchar`.

*s3\$1bucket\$1name*  
El nombre del bucket de Amazon S3 donde desea cargar la información de diagnóstico. El tipo de datos es `varchar`.

*s3\$1prefix*  
El prefijo de la ruta a Amazon S3, donde RDS para Db2 carga los archivos de diagnóstico. El tipo de datos es `varchar`.

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

Este procedimiento almacenado recopila información de diagnóstico que puede ayudar a solucionar problemas de bases de datos de RDS para Db2 y carga la información en un bucket de Amazon S3.

El procedimiento almacenado utiliza la utilidad `db2support` de IBM para recopilar datos de diagnóstico. Para obtener más información sobre la utilidad, consulte [db2support - Problem analysis and environment collection tool command](https://www.ibm.com/docs/en/db2/11.5?topic=commands-db2support-problem-analysis-environment-collection-tool) en la documentación de IBM Db2.

Antes de llamar al procedimiento almacenado, tenga en cuenta lo siguiente:
+ Para subir los archivos de diagnóstico a Amazon S3, debe haber configurado previamente la integración. Para obtener más información, consulte [Integración de una instancia de base de datos de Amazon RDS para Db2 con Amazon S3](db2-s3-integration.md).
+ Para que una instancia de base de datos de RDS para Db2 interactúe con Amazon S3, debe tener una VPC y un punto de conexión de puerta de enlace de Amazon S3 para que lo utilicen las subredes privadas. Para obtener más información, consulte [Paso 1: crear un punto de conexión de puerta de enlace de VPC para Amazon S3](db2-troubleshooting.md#db2-creating-endpoint) y [Paso 2: confirme que existe el punto de conexión de la puerta de enlace de Amazon S3](db2-troubleshooting.md#db2-confirming-endpoint).

Antes de llamar a `rdsadmin.db2support_command`, debe conectarse a la base de datos `rdsadmin`. En el siguiente ejemplo, sustituya *master\$1username* y *master\$1password* por la información de su instancia de base de datos de RDS para Db2:

```
db2 connect to rdsadmin user master_username using master_password
```

Para obtener información sobre cómo comprobar el estado de la recopilación de información de diagnóstico, consulte [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status).

### Ejemplos
<a name="db2-sp-db2support-command-examples"></a>

**Ejemplo 1: Recopilación de información de diagnóstico para una base de datos**

El siguiente ejemplo recopila la información de diagnóstico de una base de datos denominada `TESTDB` y la carga en el bucket de Amazon S3 denominado `amzn-s3-demo-bucket` con el prefijo `diagnostics/testdb`:

```
db2 "call rdsadmin.db2support_command(
    ?,
    'TESTDB',
    'amzn-s3-demo-bucket',
    'diagnostics/testdb')"
```

**Ejemplo 2: Recopilación de información de diagnóstico con un prefijo basado en fecha**

El siguiente ejemplo recopila la información de diagnóstico de una base de datos denominada `MYDB` y la carga en el bucket de Amazon S3 denominado `amzn-s3-demo-bucket` con un prefijo basado en fecha:

```
db2 "call rdsadmin.db2support_command(
    ?,
    'MYDB',
    'amzn-s3-demo-bucket',
    'support/2024/01/15')"
```

# Procedimientos almacenados de acceso al almacenamiento de RDS para Db2
<a name="db2-sp-managing-storage-access"></a>

Los procedimientos almacenados que se describen en este tema administran el acceso al almacenamiento para bases de datos de RDS para Db2 que utilizan Amazon S3 para la migración de datos. Para obtener más información, consulte [Migración de datos de Db2 mediante Amazon S3 a Amazon RDS para Db2](db2-migration-load-from-s3.md).

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

**Topics**
+ [rdsadmin.catalog\$1storage\$1access](#db2-sp-catalog-storage-access)
+ [rdsadmin.uncatalog\$1storage\$1access](#db2-sp-uncatalog-storage-access)

## rdsadmin.catalog\$1storage\$1access
<a name="db2-sp-catalog-storage-access"></a>

Cataloga un alias de almacenamiento para acceder a un bucket de Amazon S3 con archivos de datos de Db2.

### Sintaxis
<a name="db2-sp-catalog-storage-access-syntax"></a>

```
db2 "call rdsadmin.catalog_storage_access(
    ?,
    'alias',
    's3_bucket_name',
    'grantee_type',
    'grantee'
    )"
```

### Parámetros
<a name="db2-sp-catalog-storage-access-parameters"></a>

El siguiente parámetro de salida es obligatorio:

?  
Un marcador de parámetros que genera un mensaje de error. El tipo de datos es `varchar`.

Se requieren los siguientes parámetros de entrada:

*alias*  
El alias para acceder al almacenamiento remoto en un bucket de Amazon S3. El tipo de datos es `varchar`.

*s3\$1bucket\$1name*  
El nombre del bucket de Amazon S3 donde residen sus datos. El tipo de datos es `varchar`.

*grantee\$1type*  
El tipo de beneficiario de la concesión que recibirá la autorización. El tipo de datos es `varchar`. Valores válidos: `USER`, `GROUP`.

*grantee*  
El usuario o el grupo que recibirá la autorización. El tipo de datos es `varchar`. 

### Notas de uso
<a name="db2-sp-catalog-storage-access-usage-notes"></a>

Amazon RDS incluye el alias catalogado en el rol de IAM que agregó a su instancia de base de datos de RDS para Db2. Si elimina el rol de IAM de la instancia de base de datos, Amazon RDS elimina el alias. Para obtener más información, consulte [Migración de datos de Db2 mediante Amazon S3 a Amazon RDS para Db2](db2-migration-load-from-s3.md).

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

### Ejemplos
<a name="db2-sp-catalog-storage-access-examples"></a>

En el siguiente ejemplo se registra un alias denominado `SAMPLE`. Al usuario `jorge_souza` se le concede acceso al bucket de Amazon S3 denominado `amzn-s3-demo-bucket`.

```
db2 "call rdsadmin.catalog_storage_access(
    ?,
    'SAMPLE', 
    'amzn-s3-demo-bucket', 
    'USER', 
    'jorge_souza')"
```

## rdsadmin.uncatalog\$1storage\$1access
<a name="db2-sp-uncatalog-storage-access"></a>

Elimina un alias de acceso al almacenamiento.

### Sintaxis
<a name="db2-sp-uncatalog-storage-access-syntax"></a>

```
db2 "call rdsadmin.uncatalog_storage_access(
    ?,
    'alias')"
```

### Parámetros
<a name="db2-sp-uncatalog-storage-access-parameters"></a>

El siguiente parámetro de salida es obligatorio:

?  
Un marcador de parámetros que genera un mensaje de error. El tipo de datos es `varchar`.

El siguiente parámetro de entrada es obligatorio:

*alias*  
El nombre del alias de almacenamiento que se va a eliminar. El tipo de datos es `varchar`.

### Notas de uso
<a name="db2-sp-uncatalog-storage-access-usage-notes"></a>

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

### Ejemplos
<a name="db2-sp-uncatalog-storage-access-examples"></a>

En el siguiente ejemplo se elimina un alias denominado `SAMPLE`. Este alias ya no proporciona acceso al bucket de Amazon S3 al que estaba asociado.

```
db2 "call rdsadmin.uncatalog_storage_access(
    ?,
    'SAMPLE')"
```

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

# Referencia de funciones definidas por el usuario de Amazon RDS para Db2
<a name="db2-user-defined-functions"></a>

Las siguientes funciones definidas por el usuario están disponibles para las instancias de base de datos de Amazon RDS que ejecutan el motor de Db2. 

**Topics**
+ [rdsadmin.get\$1task\$1status](#db2-udf-get-task-status)
+ [rdsadmin.list\$1databases](#db2-udf-list-databases)
+ [rdsadmin.list\$1modifiable\$1db\$1params](#db2-udf-list-modi-db-params)

## rdsadmin.get\$1task\$1status
<a name="db2-udf-get-task-status"></a>

Devuelve el estado de una tarea.

### Sintaxis
<a name="db2-udf-get-task-status-syntax"></a>

```
db2 "select task_id, task_type, database_name, lifecycle,
    varchar(bson_to_json(task_input_params), 500) as task_params,
    cast(task_output as varchar(500)) as task_output
    from table(rdsadmin.get_task_status(task_id,'database_name','task_type'))"
```

### Parameters
<a name="db2-udf-get-task-status-parameters"></a>

Los siguientes parámetros son opcionales. Si no proporciona ningún parámetro, la función definida por el usuario devuelve el estado de todas las tareas de todas las bases de datos. Amazon RDS conserva el historial de tareas durante 35 días.

*task\$1id*  
El ID de la tarea que se está ejecutando. Este ID se devuelve al ejecutar una tarea. Predeterminado: `0`. 

*database\$1name*  
El nombre de la base de datos para la que se está ejecutando la tarea.

*task\$1type*  
El tipo de tarea que se desea consultar. Valores válidos: `ADD_GROUPS`, `ADD_USER`, `ALTER_BUFFERPOOL`, `ALTER_TABLESPACE`, `CHANGE_PASSWORD`, `COMPLETE_ROLLFORWARD`, `CREATE_BUFFERPOOL`, `CREATE_DATABASE`, `CREATE_ROLE`, `CREATE_TABLESPACE`, `DROP_BUFFERPOOL`, `DROP_DATABASE`, `DROP_TABLESPACE`, `LIST_USERS`, `REMOVE_GROUPS`, `REMOVE_USER`, `RESTORE_DB`, `ROLLFORWARD_DB_LOG`, `ROLLFORWARD_STATUS`, `UPDATE_DB_PARAM`.

### Notas de uso
<a name="db2-udf-get-task-status-usage-notes"></a>

Puede utilizar la función definida por el usuario `rdsadmin.get_task_status` para comprobar el estado de las siguientes tareas para Amazon RDS para Db2. Esta lista no es exhaustiva.
+ Crear, modificar o eliminar un grupo de búferes
+ Crear, modificar o eliminar un espacio de tabla
+ Crear o eliminar una base de datos
+ Restaurar una copia de seguridad de una base de datos desde Amazon S3
+ Poner al día los registros de bases de datos desde Amazon S3

### Ejemplos
<a name="db2-udf-get-task-status-examples"></a>

En el siguiente ejemplo se muestran las columnas devueltas cuando se llama a `rdsadmin.get_task_status`.

```
db2 "describe select * from table(rdsadmin.get_task_status())"
```

En el siguiente ejemplo se muestra el estado de todas las tareas.

```
db2 "select task_id, task_type, database_name, lifecycle, 
    varchar(bson_to_json(task_input_params), 500) as task_params, 
    cast(task_output as varchar(500)) as task_output 
    from table(rdsadmin.get_task_status(null,null,null))"
```

En el siguiente ejemplo se muestra el estado de una tarea específica.

```
db2 "select task_id, task_type, database_name, 
    varchar(bson_to_json(task_input_params), 500) as task_params 
    from table(rdsadmin.get_task_status(1,null,null))"
```

En el siguiente ejemplo se muestra el estado de una tarea y una base de datos específicas.

```
db2 "select task_id, task_type, database_name, 
    varchar(bson_to_json(task_input_params), 500) as task_params 
    from table(rdsadmin.get_task_status(2,'SAMPLE',null))"
```

En el siguiente ejemplo se muestra el estado de todas las tareas `ADD_GROUPS`.

```
db2 "select task_id, task_type, database_name, 
    varchar(bson_to_json(task_input_params), 500) as task_params 
    from table(rdsadmin.get_task_status(null,null,'add_groups'))"
```

En el siguiente ejemplo se muestra el estado de todas las tareas para una base de datos específica. 

```
db2 "select task_id, task_type, database_name, 
    varchar(bson_to_json(task_input_params), 500) as task_params 
    from table(rdsadmin.get_task_status(null,'testdb', null))"
```

En el siguiente ejemplo aparecen los valores JSON como columnas.

```
db2 "select varchar(r.task_type,25) as task_type, varchar(r.lifecycle,10) as lifecycle, r.created_at, u.* from 
    table(rdsadmin.get_task_status(null,null,'restore_db')) as r, json_table(r.task_input_params, 'strict $' columns(s3_prefix varchar(500) 
    null on empty, s3_bucket_name varchar(500) null on empty) error on error ) as U"
```

### Respuesta
<a name="db2-udf-get-task-status-response"></a>

La función definida por el usuario `rdsadmin.get_task_status` devuelve las siguientes columnas:

`TASK_ID`  
El ID de la tarea.

`TASK_TYPE`  
Depende de los parámetros de entrada.  
+ `ADD_GROUPS`: agrega grupos.
+ `ADD_USER`: agrega un usuario.
+ `ALTER_BUFFERPOOL`: modifica un grupo de búferes.
+ `ALTER_TABLESPACE`: modifica un espacio de tabla.
+ `CHANGE_PASSWORD `: cambia la contraseña de un usuario.
+ `COMPLETE_ROLLFORWARD`: completa una tarea `rdsadmin.rollforward_database` y activa una base de datos.
+ `CREATE_BUFFERPOOL`: crea un grupo de búferes.
+ `CREATE_DATABASE`: crea una base de datos.
+ `CREATE_ROLE`: crea un rol de Db2 para un usuario.
+ `CREATE_TABLESPACE`: crea un espacio de tabla.
+ `DROP_BUFFERPOOL`: elimina un grupo de búferes.
+ `DROP_DATABASE`: elimina una base de datos.
+ `DROP_TABLESPACE`: elimina un espacio de tabla.
+ `LIST_USERS`: muestra todos los usuarios.
+ `REMOVE_GROUPS`: elimina grupos.
+ `REMOVE_USER`: elimina un usuario.
+ `RESTORE_DB`: restaura una base de datos completa.
+ `ROLLFORWARD_DB_LOG`: realiza una tarea `rdsadmin.rollforward_database` en los registros de la base de datos.
+ `ROLLFORWARD_STATUS `: devuelve el estado de una tarea `rdsadmin.rollforward_database`.
+ `UPDATE_DB_PARAM`: actualiza los parámetros de datos.

`DATABASE_NAME`  
El nombre de la base de datos a la que está asociada la tarea.

`COMPLETED_WORK_BYTES`  
Número de bytes restaurados por la tarea.

`DURATION_MINS`  
El tiempo que se tarda en completar la tarea. 

`LIFECYCLE`  
El estado de la tarea. Estados posibles:  
+ `CREATED`: tras enviar una tarea a Amazon RDS, Amazon RDS establece el estado en `CREATED`.
+ `IN_PROGRESS`: cuando una tarea comienza, Amazon RDS establece su estado en `IN_PROGRESS`. El estado puede tardar hasta cinco minutos en cambiar de `CREATED` a `IN_PROGRESS`.
+ `SUCCESS`: cuando una tarea se completa, el estado se establece en `SUCCESS`.
+ `ERROR`: si se produce un error en una tarea de restauración, Amazon RDS establece el estado en `ERROR`. Para obtener más información acerca del error, consulte `TASK_OUPUT`. 

`CREATED_BY`  
El `authid` que creó el comando.

`CREATED_AT`  
La fecha y hora en que se creó la tarea.

`LAST_UPDATED_AT`  
La fecha y hora de la última actualización de la tarea.

`TASK_INPUT_PARAMS`  
Los parámetros difieren según el tipo de tarea. Todos los parámetros de entrada se representan como un objeto JSON. Por ejemplo, las claves JSON de la tarea `RESTORE_DB` son las siguientes:   
+ `DBNAME`
+ `RESTORE_TIMESTAMP`
+ `S3_BUCKET_NAME`
+ `S3_PREFIX`

`TASK_OUTPUT`  
Información adicional acerca de la tarea. Si ocurre un error durante la restauración nativa, esta columna incluye información acerca del error. 

### Ejemplos de respuesta
<a name="db2-udf-get-task-status-response-examples"></a>

El siguiente ejemplo de respuesta muestra que la base de datos llamada `TESTJP` se creó correctamente. Para obtener más información, consulte el procedimiento almacenado [rdsadmin.create\$1database](db2-sp-managing-databases.md#db2-sp-create-database).

```
`1 SUCCESS CREATE_DATABASE RDSDB 2023-10-24-18.32.44.962689 2023-10-24-18.34.50.038523 1 TESTJP { "CODESET" : "IBM-437", "TERRITORY" : "JP", "COLLATION" : "SYSTEM", "AUTOCONFIGURE_CMD" : "", "PAGESIZE" : 4096 } 
2023-10-24-18.33.30.079048 Task execution has started.

2023-10-24-18.34.50.038523 Task execution has completed successfully`.
```

El siguiente ejemplo de respuesta explica por qué no se pudo eliminar una base de datos. Para obtener más información, consulte el procedimiento almacenado [rdsadmin.drop\$1database](db2-sp-managing-databases.md#db2-sp-drop-database).

```
1 ERROR DROP_DATABASE RDSDB 2023-10-10-16.33.03.744122 2023-10-10-16.33.30.143797 - 2023-10-10-16.33.30.098857 Task execution has started.
2023-10-10-16.33.30.143797 Caught exception during executing task id 1, Aborting task. 
Reason Dropping database created via rds CreateDBInstance api is not allowed. 
Only database created using rdsadmin.create_database can be dropped
```

El siguiente ejemplo de respuesta muestra la restauración correcta de una base de datos. Para obtener más información, consulte el procedimiento almacenado [rdsadmin.restore\$1database](db2-sp-managing-databases.md#db2-sp-restore-database).

```
1 RESTORE_DB  SAMPLE  SUCCESS   
                                         
{ "S3_BUCKET_NAME" : "amzn-s3-demo-bucket", "S3_PREFIX" : "SAMPLE.0.rdsdb3.DBPART000.20230413183211.001", "RESTORE_TIMESTAMP" : "20230413183211", "BACKUP_TYPE" : "offline" }                                                                                                                                                                                                                                                                                                                                                   

2023-11-06-18.31.03.115795 Task execution has started.
2023-11-06-18.31.04.300231 Preparing to download
2023-11-06-18.31.08.368827 Download complete. Starting Restore
2023-11-06-18.33.13.891356 Task Completed Successfully
```

## rdsadmin.list\$1databases
<a name="db2-udf-list-databases"></a>

Devuelve una lista de todas las bases de datos que se ejecutan en una instancia de base de datos de RDS para Db2.

### Sintaxis
<a name="db2-udf-list-databases-syntax"></a>

```
db2 "select * from table(rdsadmin.list_databases())"
```

### Notas de uso
<a name="db2-udf-list-databases-usage-notes"></a>

Esta función definida por el usuario no especifica si las bases de datos están activadas o desactivadas. 

Si no ve sus bases de datos en la lista, llame a la función [rdsadmin.get\$1task\$1status](#db2-udf-get-task-status) definida por el usuario y busque los mensajes de error.

### Respuesta
<a name="db2-udf-list-databases-response"></a>

La función definida por el usuario `rdsadmin.list_databases` devuelve las siguientes columnas: 

`DATABASE_NAME`  
El nombre de una base de datos.

`CREATE_TIME`  
La fecha y hora en la que se ha creado la sesión.

`DATABASE_UNIQUE_ID`  
El RDS creó el GUID para identificar de forma exclusiva la base de datos Db2.

`ARCHIVE_LOG_RETENTION_HOUR`  
El número de horas que se van a conservar los archivos de registros de archivo.

`ARCHIVE_LOG_COPY`  
Muestra si la característica está HABILITADA o DESHABILITADA para la base de datos.

`ARCHIVE_LOG_LAST_UPLOAD_FILE `  
Indica el último registro de archivos cargado en S3.

`ARCHIVE_LOG_LAST_UPLOAD_FILE_TIME`  
Indica la hora en que se archivó el archivo de registro.

`ARCHIVE_LOG_COPY_STATUS`  
Muestra el estado de la copia de registro de archivos.  
CARGANDO: indica que los archivos de registro del archivo se están cargando en S3.  
CONFIGURATION\$1ERROR: indica que hay un problema de configuración que requiere su atención.   
Para ver el error detallado, consulte los mensajes de eventos de RDS de su instancia de Db. Los mensajes del evento se pueden ver en [Consulta de eventos de Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ListEvents.html).

### Ejemplos de respuesta
<a name="db2-udf-list-databases-response-examples"></a>

El siguiente ejemplo de respuesta muestra una lista de bases de datos y las horas en que se crearon. `rdsadmin` es una base de datos que Amazon RDS administra y que siempre aparece en los resultados.

```
DATABASE_NAME   CREATE_TIME                DATABASE_UNIQUE_ID                                 ARCHIVE_LOG_RETENTION_HOURS ARCHIVE_LOG_COPY ARCHIVE_LOG_LAST_UPLOAD_FILE ARCHIVE_LOG_LAST_UPLOAD_FILE_TIME ARCHIVE_LOG_COPY_STATUS
--------------- -------------------------- -------------------------------------------------- --------------------------- ---------------- ---------------------------- --------------------------------- ------------------------------
RDSADMIN        2026-01-06-02.03.42.569069 RDSADMIN                                                                     0 DISABLED         -                            -                                 -
FOO             2026-01-06-02.13.42.885650 F0D81C7E-7213-4565-B376-4F33FCF420E3                                         0 ENABLED          S0006536.LOG                 2026-01-28-19.15.10.000000        UPLOADING
CODEP           2026-01-14-19.42.42.508476 106EEF95-6E30-4FFF-85AE-B044352DF095                                         0 DISABLED         -                            -                                 -
...
```

## rdsadmin.list\$1modifiable\$1db\$1params
<a name="db2-udf-list-modi-db-params"></a>

Devuelve una lista de todos los parámetros de configuración de la base de datos que se pueden modificar.

### Sintaxis
<a name="db2-udf-list-modi-db-params-syntax"></a>

```
db2 "select * from table(rdsadmin.list_modifiable_db_params())"
```

### Notas de uso
<a name="db2-udf-list-modi-db-params-usage-notes"></a>

Esta función definida por el usuario muestra una lista seleccionada de parámetros de la base de datos que se pueden modificar. Estos parámetros se pueden actualizar mediante el procedimiento almacenado [rdsadmin.update\$1db\$1param](db2-sp-managing-databases.md#db2-sp-update-db-param).

Todos los parámetros de la base de datos que no estén incluidos en esta lista se han restringido y no se pueden modificar.

### Respuesta
<a name="db2-udf-list-modi-db-params-response"></a>

La función definida por el usuario `rdsadmin.list_modifiable_db_params` devuelve las siguientes columnas: 

`PARAM_NAME`  
El nombre del grupo de parámetros que se puede modificar.

`DEFAULT_VALUE`  
El valor del parámetro predeterminado en el momento de la creación de la base de datos.

`RESTART_REQUIRED`  
Si es necesario reciclar la base de datos o no.  
 Y = Sí, es necesario reiniciar de la base de datos.  
 N = No, no es necesario reiniciar la base de datos.

### Ejemplos de respuesta
<a name="db2-udf-list-modi-db-params-response-examples"></a>

A continuación se muestra una lista de ejemplo (truncada) del resultado esperado.

```
PARAM_NAME             DEFAULT_VALUE RESTART_REQUIRED
---------------------- ------------- ----------------
ACT_SORTMEM_LIMIT      NONE          N
ARCHRETRYDELAY         20            N
AUTHN_CACHE_DURATION   3             N
AUTHN_CACHE_USERS      0             N
AUTO_CG_STATS          OFF           N
...
```

# Resolución de problemas de Amazon RDS para Db2
<a name="db2-troubleshooting"></a>

El siguiente contenido puede ayudarle a solucionar algunos problemas que puede encontrarse con RDS para Db2.

Para obtener más información acerca de cómo solucionar problemas generales de Amazon RDS, consulte [Solución de problemas de Amazon RDS](CHAP_Troubleshooting.md).

**Topics**
+ [Error de conexión a la base](#db2-database-connection-error)
+ [Error de E/S de archivos](#db2-file-input-output-error)
+ [Errores en los procedimientos almacenados](#db2-troubleshooting-stored-procedures)

## Error de conexión a la base
<a name="db2-database-connection-error"></a>

El siguiente mensaje de error indica que una base de datos no se ha podido conectar porque el servidor no tiene suficiente memoria.

```
SQL1643C The database manager failed to allocate shared memory because the
database manager instance memory limit has been reached.
```

Aumente la memoria de la instancia de base de datos y, a continuación, intente conectarse de nuevo a la base de datos. Para obtener información sobre el uso de la memoria y las recomendaciones para las bases de datos, consulte [Varias bases de datos en una instancia de base de datos de Amazon RDS para Db2](db2-multiple-databases.md). Para obtener más información sobre cómo actualizar la memoria de una base de datos de RDS para Db2, consulte [rdsadmin.update\$1db\$1param](db2-sp-managing-databases.md#db2-sp-update-db-param).

## Error de E/S de archivos
<a name="db2-file-input-output-error"></a>

Es posible que se produzca un error de E/S en un archivo por distintos motivos; por ejemplo, al utilizar el comando `LOAD` o al llamar al procedimiento `rdsadmin.restore_database` almacenado. 

En este ejemplo, puede ejecutar el comando `LOAD` siguiente: 

```
db2 "call sysproc.admin_cmd('load from "DB2REMOTE://s3test//public/datapump/t6.del" of del lobs from "DB2REMOTE://s3test/public/datapump/" modified by lobsinfile MESSAGES ON SERVER insert INTO RDSDB.t6 nonrecoverable ')"
```

El comando `LOAD` devuelve el siguiente mensaje:

```
  Result set 1
  --------------

  ROWS_READ            ROWS_SKIPPED         ROWS_LOADED          ROWS_REJECTED        ROWS_DELETED         ROWS_COMMITTED       ROWS_PARTITIONED     NUM_AGENTINFO_ENTRIES MSG_RETRIEVAL                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    MSG_REMOVAL
  -------------------- -------------------- -------------------- -------------------- -------------------- -------------------- -------------------- --------------------- -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
                     -                    -                    -                    -                    -                    -                    -                     - SELECT SQLCODE, MSG FROM TABLE(SYSPROC.ADMIN_GET_MSGS('1594987316_285548770')) AS MSG                                                                                                                                                                                                                                                                                                                                                                                                                                            CALL SYSPROC.ADMIN_REMOVE_MSGS('1594987316_285548770')

  1 record(s) selected.

  Return Status = 0

SQL20397W  Routine "SYSPROC.ADMIN_CMD" execution has completed, but at least
one error, "SQL1652", was encountered during the execution. More information
is available.  SQLSTATE=01H52
```

Para ver el mensaje de error, ejecute el comando de SQL como se sugiere en la respuesta anterior. `SELECT SQLCODE, MSG FROM TABLE(SYSPROC.ADMIN_GET_MSGS('1594987316_285548770')) AS MSG` devuelve el siguiente mensaje:

```
SQLCODE   MSG
--------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
SQL2025N  An I/O error occurred. Error code “438”. Media on which this error occurred: “DB2REMOTE://s3test//public/datapump/t6.del”

SQL3500W The utility is beginning the LOAD phase at time “07/05/2024 21:21:48.082954”

SQL1652N File I/O error occurred
```

Los registros de diagnóstico de Db2 contienen un archivo de registro similar al siguiente:

```
2024-07-05-21.20.09.440609+000 I1191321E864          LEVEL: Error
PID     : 2710                 TID : 139619509200640 PROC : db2sysc 0
INSTANCE: rdsdb                NODE : 000            DB   : NTP
APPHDL  : 0-12180              APPID: xxx.xx.x.xxx.xxxxx.xxxxxxxxxxxx
UOWID   : 5                    ACTID: 1
AUTHID  : ADMIN                HOSTNAME: ip-xx-xx-x-xx
EDUID   : 147                  EDUNAME: db2lmr 0
FUNCTION: DB2 UDB, oper system services, sqloS3Client_GetObjectInfo, probe:219
MESSAGE : ZRC=0x870F01B6=-2029059658=SQLO_FAILED
          "An unexpected error is encountered"
DATA #1 : String, 29 bytes
S3:HeadObject request failed.
DATA #2 : signed integer, 4 bytes
99
DATA #3 : String, 0 bytes
Object not dumped: Address: 0x00007EFC08A9AE38 Size: 0 Reason: Zero-length data
DATA #4 : String, 33 bytes
curlCode: 28, Timeout was reached
```

Este error de E/S del archivo puede deberse a varios casos distintos. Por ejemplo, es posible que la VPC asociada al grupo de seguridad utilizado para crear la instancia de base de datos de RDS para Db2 no tenga un punto de conexión de puerta de enlace de Amazon S3. El punto de conexión es esencial para permitir de que RDS para Db2 acceda a Amazon S3. Si la instancia de base de datos de RDS para Db2 está en subredes privadas, necesitará un punto de conexión de puerta de enlace de Amazon S3. Puede especificar si su instancia de base de datos utiliza subredes públicas o privadas configurando los grupos de subredes de Amazon RDS. Para obtener más información, consulte [Uso de los grupos de subredes de base de datos](USER_VPC.WorkingWithRDSInstanceinaVPC.md#USER_VPC.Subnets).

**Topics**
+ [Paso 1: crear un punto de conexión de puerta de enlace de VPC para Amazon S3](#db2-creating-endpoint)
+ [Paso 2: confirme que existe el punto de conexión de la puerta de enlace de Amazon S3](#db2-confirming-endpoint)

### Paso 1: crear un punto de conexión de puerta de enlace de VPC para Amazon S3
<a name="db2-creating-endpoint"></a>

Para que la instancia de base de datos de RDS para Db2 interactúe con Amazon S3, cree una VPC y, a continuación, un punto de conexión de puerta de enlace de Amazon S3 para que lo utilicen las subredes privadas.

**Creación de un punto de conexión de puerta de enlace de VPC para S3**

1. Cree una VPC. Para obtener más información, consulte [Creación de una VPC](https://docs.aws.amazon.com/vpc/latest/userguide/create-vpc.html) en la *Guía del usuario de Amazon Virtual Private Cloud*.

1. Cree un punto de conexión de puerta de enlace de Amazon S3 para que lo utilicen las subredes privadas. Para obtener más información, consulte [Puntos de conexión de la puerta de enlace](https://docs.aws.amazon.com/vpc/latest/privatelink/gateway-endpoints.html) en la *Guía de AWS PrivateLink*.

### Paso 2: confirme que existe el punto de conexión de la puerta de enlace de Amazon S3
<a name="db2-confirming-endpoint"></a>

Confirme que ha creado correctamente un punto de conexión de la puerta de enlace de Amazon S3 mediante el Consola de administración de AWS o el AWS CLI.

#### Consola
<a name="db2-confirming-endpoing-console"></a>

**Confirmación de un punto de conexión de puerta de enlace de Amazon S3**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon VPC en [https://console.aws.amazon.com/vpc](https://console.aws.amazon.com/vpc).

1.  En la esquina superior derecha de la consola, elija la Región de AWS de su VPC.

1. Seleccione la VPC que ha creado.

1. En la pestaña **Mapa de recursos**, en **Conexiones de red**, confirme que aparezca un punto de conexión de puerta de enlace de Amazon S3. 

#### AWS CLI
<a name="db2-confirming-endpoint-cli"></a>

Para confirmar un punto de conexión de la puerta de enlace de Amazon S3, ejecute el comando [https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-vpc-endpoints.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-vpc-endpoints.html). En el siguiente ejemplo, sustituya *vpc\$1id* por el ID de VPC, la *región* por su Región de AWSy el *perfil* por su nombre de perfil.

Para Linux, macOS o Unix:

```
aws ec2 describe-vpc-endpoints \
    --filters "Name=vpc-id,Values=$vpc_id" \
    "Name=service-name,\
    Values=com.amazonaws.${region}.s3" \
    --region $region --profile=$profile \
    --query "VpcEndpoints[*].VpcEndpointId" --output text
```

Para Windows:

```
aws ec2 describe-vpc-endpoints ^
    --filters "Name=vpc-id,Values=$vpc_id" ^
    "Name=service-name,^
    Values=com.amazonaws.${region}.s3" ^
    --region $region --profile=$profile ^
    --query "VpcEndpoints[*].VpcEndpointId" --output text
```

El resultado de este comando debería ser similar al siguiente ejemplo si existe un punto de conexión de la puerta de enlace de Amazon S3. 

```
[
    "vpce-0ea810434ff0b97e4"
]
```

El resultado de este comando debería ser similar al siguiente ejemplo si no existe un punto de conexión de la puerta de enlace de Amazon S3. 

```
[]
```

Si no ve ningún punto de conexión de la puerta de enlace de Amazon S3 en la lista, entonces [Paso 1: crear un punto de conexión de puerta de enlace de VPC para Amazon S3](#db2-creating-endpoint). 

## Errores en los procedimientos almacenados
<a name="db2-troubleshooting-stored-procedures"></a>

En esta sección se describen varios errores que se muestran al llamar a los procedimientos almacenados y cómo solucionarlos.


| Categoría | Errores en los procedimientos almacenados | 
| --- | --- | 
|  Bases de datos  |  [rdsadmin.activate\$1database errors](#db2-troubleshooting-activate-database-sp-errors)  | 
|  Bases de datos  |  [errores rdsadmin.backup\$1database](#db2-troubleshooting-backup-database-sp-errors)  | 
|  Bases de datos  |  [rdsadmin.create\$1database errors](#db2-troubleshooting-create-database-sp-errors)  | 
|  Bases de datos  |  [Errores de rdsadmin.deactivate\$1database](#db2-troubleshooting-deactivate-database-sp-errors)  | 
|  Bases de datos  |  [Errores de rdsadmin.drop\$1database](#db2-troubleshooting-drop-database-sp-errors)  | 
|  Bases de datos  |  [Errores de rdsadmin.reactivate\$1database](#db2-troubleshooting-reactivate-database-sp-errors)  | 
|  Bases de datos  |  [Errores de rdsadmin.restore\$1database](#db2-troubleshooting-restore-database-sp-errors)  | 
|  Bases de datos  |  [Errores de rdsadmin.update\$1db\$1param](#db2-troubleshooting-update-db-param-sp-errors)  | 
|  Espacios de tabla  |  [Errores de rdsadmin.alter\$1tablespace](#db2-troubleshooting-alter-tablespace-sp-errors)  | 

### Errores de rdsadmin.activate\$1database
<a name="db2-troubleshooting-activate-database-sp-errors"></a>

Los siguientes errores pueden producirse al llamar al procedimiento almacenado [rdsadmin.activate\$1database](db2-sp-managing-databases.md#db2-sp-activate-database).


| Error | Mensaje de error | 
| --- | --- | 
|  [Failed to allocate shared memory](#activate-database-sp-failed-to-allocate-shared-memory)  |  `SQL1643C The database manager failed to allocate shared memory because the database manager instance memory limit has been reached.`  | 
|  [Unable to activate because of running processes](#activate-database-sp-unable-to-activate-processes)  |  `The database can’t be activated because it's in the process of being created or restored.`  | 

**No se ha podido asignar la memoria compartida**

El siguiente mensaje de error indica que el procedimiento almacenado no ha podido activar la base de datos porque la instancia de base de datos no tiene suficiente memoria.

```
SQL1643C The database manager failed to allocate shared memory because the database manager instance memory limit has been reached.
```

Aumente la memoria de la instancia de base de datos y, a continuación, vuelva a llamar al procedimiento `rdsadmin.activate_database` almacenado. Para obtener información sobre el uso de la memoria y las recomendaciones para las bases de datos, consulte [Varias bases de datos en una instancia de base de datos de Amazon RDS para Db2](db2-multiple-databases.md).

**No se puede activar debido a procesos en ejecución**

El siguiente mensaje de error indica que el procedimiento almacenado no ha podido activar una base de datos porque el procedimiento almacenado `rdsadmin.create_database` o `rdsadmin.restore_database` se está ejecutando.

```
The database can’t be activated because it's in the process of being created or restored.
```

Espere unos minutos y vuelva a llamar al procedimiento almacenado `rdsadmin.activate_database`.

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

Los siguientes errores pueden producirse al llamar al procedimiento almacenado [rdsadmin.alter\$1tablespace](db2-sp-managing-tablespaces.md#db2-sp-alter-tablespace).


| Error | Mensaje de error | 
| --- | --- | 
|  [Statement not valid](#alter-tablespace-sp-statement-not-valid)  |  `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"`  | 
|  [tablespace_prefetch_size value not valid](#alter-tablespace-sp-prefetch-value-not-valid)  |  `Invalid tablespace_prefetch_size. Set value to AUTOMATIC or to a non-zero positive numerical value.`  | 
|  [tablespace_prefetch_size numerical value not valid](#alter-tablespace-sp-prefetch-numerical-value-not-valid)  |  `Invalid tablespace_prefetch_size. The number of pages can't be greater than 32767.`  | 
|  [Parameter can't be used with tablespace_prefetch_size](#alter-tablespace-sp-prefetch-incompatible-parameter)  |  `You can't use tablespace_prefetch_size with {parameter}.`  | 
|  [Tablespace change failed](#alter-tablespace-sp-tablespace-change-failed)  |  `The change to tablespace {tablespace_name} failed because you can only alter LARGE or REGULAR tablespaces.`  | 

**La instrucción no es válida**

El siguiente mensaje de error indica que el procedimiento almacenado combinó parámetros opcionales mutuamente excluyentes con otros parámetros opcionales. Los parámetros opcionales `reduce_max, reduce_stop`, `reduce_value`, `lower_high_water`, `lower_high_water_stop` y `switch_online` del procedimiento almacenado `rdsadmin.alter_tablespace` son mutuamente excluyentes. No puede combinarlos con ningún otro parámetro opcional, por ejemplo `buffer_pool_name`, en el procedimiento almacenado `rdsadmin.alter_tablespace`. Si los combina, al llamar a la función `rdsadmin.get_task_status` definida por el usuario, Db2 devolverá este mensaje de error. 

```
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"
```

Vuelva a llamar al procedimiento almacenado `rdsadmin.alter_tablespace` sin combinar parámetros opcionales mutuamente excluyentes con otros parámetros opcionales. A continuación, llame a la función `rdsadmin.get_task_status` definida por el usuario. Para obtener más información, consulte [rdsadmin.alter\$1tablespace](db2-sp-managing-tablespaces.md#db2-sp-alter-tablespace) y [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status).

**Valor de tablespace\$1prefetch\$1size no válido**

El siguiente mensaje de error indica que no ha establecido `tablespace_prefetch_size` en `AUTOMATIC` o un valor numérico no positivo. Por ejemplo, ha intentado establecerlo en `testinput`.

```
Invalid tablespace_prefetch_size. Set value to AUTOMATIC or to a non-zero positive numerical value.
```

Vuelva a llamar al procedimiento almacenado `rdsadmin.alter_tablespace` y establezca `tablespace_prefetch_size` en `AUTOMATIC` o en un valor numérico no positivo.

**El valor numérico tablespace\$1prefetch\$1size no es válido**

El siguiente mensaje de error indica que ha establecido `tablespace_prefetch_size` en un valor numérico superior a 32767.

```
Invalid tablespace_prefetch_size. The number of pages can't be greater than 32767.
```

Vuelva a llamar al procedimiento almacenado `rdsadmin.alter_tablespace` y establezca `tablespace_prefetch_size` en un valor numérico positivo que no sea cero inferior o igual a 32767.

**El parámetro no se puede usar con tablespace\$1prefetch\$1size**

El siguiente mensaje de error indica que intentó utilizar `tablespace_prefetch_size` con un parámetro no compatible. 

```
You can't use tablespace_prefetch_size with {parameter}.
```

Vuelva a llamar al procedimiento almacenado `rdsadmin.alter_tablespace` y use `tablespace_prefetch_size` solo con parámetros compatibles. Para obtener información acerca de parámetros que puede usar con `tablespace_prefetch_size`, consulte [rdsadmin.alter\$1tablespace](db2-sp-managing-tablespaces.md#db2-sp-alter-tablespace).

**Error al cambiar el espacio de tablas**

El siguiente mensaje de error indica que intentó modificar un espacio de tabla. 

```
The change to tablespace {tablespace_name} failed because you can only alter LARGE or REGULAR tablespaces.
```

### errores rdsadmin.backup\$1database
<a name="db2-troubleshooting-backup-database-sp-errors"></a>

Los siguientes errores pueden producirse al llamar al procedimiento almacenado [rdsadmin.backup\$1database](db2-sp-managing-databases.md#db2-sp-backup-database).


| Error | Mensaje de error | 
| --- | --- | 
|  [Insufficient disk space](#backup-database-sp-insufficient-disk-space)  |  `Aborting task. Reason Backing up your database failed because of insufficient disk space. Increase the storage for your DB instance and rerun the rdsadmin.backup_database stored procedure.`  | 
|  [Internal error](#backup-database-sp-internal-error)  |  `Caught exception during executing task id 104, Aborting task. Reason Internal Error`  | 

**Espacio en disco insuficiente**

El siguiente mensaje de error indica que la instancia de base de datos no tiene suficiente espacio en disco para realizar copias de seguridad de la base de datos:

```
Aborting task. Reason Backing up your database failed because of insufficient disk space. Increase the storage for your DB instance and rerun the rdsadmin.backup_database stored procedure.
```

Al realizar una copia de seguridad de una base de datos en un almacenamiento remoto, asegúrese de tener suficiente espacio libre en el disco para la sesión de copia de seguridad y los archivos de trabajo. Cada sesión de copia de seguridad procesa hasta 5 GB de datos, pero se necesita espacio adicional para los registros de transacciones, los archivos temporales y las operaciones en curso de la base de datos. 

Recomendamos disponer del siguiente espacio libre en disco para las copias de seguridad en función del tamaño de la base de datos:
+ Para bases de datos de menos de 5 GB: el tamaño de la base de datos más 3 GB de búfer
+ Para bases de datos de 5 GB o más: al menos 10 GB de espacio libre

Esta cantidad de espacio libre en disco tiene en cuenta el procesamiento de las sesiones de copia de seguridad, la acumulación del registro de transacciones durante la copia de seguridad, los archivos de trabajo temporales y los flujos de copia de seguridad en paralelo, si están configurados. Para obtener más información, consulte [Aumento de la capacidad de almacenamiento de la instancia de base de datos](USER_PIOPS.ModifyingExisting.md).

Aumente el espacio en disco y, a continuación, vuelva a ejecutar el procedimiento [rdsadmin.backup\$1database](db2-sp-managing-databases.md#db2-sp-backup-database) almacenado. Para confirmar que se realizó una copia de seguridad correcta de la base de datos, compruebe el estado de la tarea mediante [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status). También puede comprobar que los archivos de copia de seguridad se encuentran en el bucket de Amazon S3, en *s3\$1prefix/dbi\$1resource\$1id/db\$1name*.

**Error interno**

El siguiente mensaje de error indica que el procedimiento almacenado ha detectado un error interno: 

```
Caught exception during executing task id 104, Aborting task. Reason Internal Error
```

Contacte con [AWS Support](https://aws.amazon.com/premiumsupport/).

### Errores de rdsadmin.create\$1database
<a name="db2-troubleshooting-create-database-sp-errors"></a>

El siguiente error puede producirse al llamar al procedimiento almacenado [rdsadmin.create\$1database](db2-sp-managing-databases.md#db2-sp-create-database).


| Error | Mensaje de error | 
| --- | --- | 
|  [Failed to allocate shared memory](#create-database-sp-failed-to-allocate-shared-memory)  |  `SQL1643C The database manager failed to allocate shared memory because the database manager instance memory limit has been reached.`  | 

**No se ha podido asignar la memoria compartida**

El siguiente mensaje de error indica que el procedimiento almacenado no ha podido crear la base de datos porque la instancia de base de datos no tiene suficiente memoria.

```
SQL1643C The database manager failed to allocate shared memory because the database manager instance memory limit has been reached.
```

Aumente la memoria de la instancia de base de datos y, a continuación, vuelva a llamar al procedimiento `rdsadmin.create_database` almacenado. Para obtener información sobre el uso de la memoria y las recomendaciones para las bases de datos, consulte [Varias bases de datos en una instancia de base de datos de Amazon RDS para Db2](db2-multiple-databases.md).

Para confirmar que se ha creado la base de datos, llame a la función [rdsadmin.list\$1databases](db2-user-defined-functions.md#db2-udf-list-databases) definida por el usuario y compruebe que la nueva base de datos aparezca en la lista.

### Errores de rdsadmin.deactivate\$1database
<a name="db2-troubleshooting-deactivate-database-sp-errors"></a>

El siguiente error puede producirse al llamar al procedimiento almacenado [rdsadmin.deactivate\$1database](db2-sp-managing-databases.md#db2-sp-deactivate-database).


| Error | Mensaje de error | 
| --- | --- | 
|  [Unable to deactivate because of running processes](#deactivate-database-sp-unable-to-deactivate-processes)  |  `The database can’t be deactivated because it's in the process of being created or restored.`  | 

**No se puede desactivar debido a procesos en ejecución**

El siguiente mensaje de error indica que el procedimiento almacenado no ha podido desactivar una base de datos porque el procedimiento almacenado `rdsadmin.create_database` o `rdsadmin.restore_database` se está ejecutando.

```
The database can’t be deactivated because it's in the process of being created or restored.
```

Espere unos minutos y vuelva a llamar al procedimiento almacenado `rdsadmin.deactivate_database`.

### Errores de rdsadmin.drop\$1database
<a name="db2-troubleshooting-drop-database-sp-errors"></a>

Los siguientes errores pueden producirse al llamar al procedimiento almacenado [rdsadmin.drop\$1database](db2-sp-managing-databases.md#db2-sp-drop-database).


| Error | Mensaje de error | 
| --- | --- | 
|  [Database name doesn't exist](#drop-database-sp-database-name-not-exist)  |  `SQL0438N Application raised error or warning with diagnostic text: "Cannot drop database. Database with provided name does not exist". SQLSTATE=99993`  | 
|  [Return status = 0](#drop-database-sp-return-status-zero)  |  `Return Status = 0`  | 
|  [Dropping database not allowed](#drop-database-sp-not-allowed)  |  `1 ERROR DROP_DATABASE RDSDB 2023-10-10-16.33.03.744122 2023-10-10-16.33.30.143797 - 2023-10-10-16.33.30.098857 Task execution has started. 2023-10-10-16.33.30.143797 Caught exception during executing task id 1, Aborting task. Reason Dropping database created via rds CreateDBInstance api is not allowed. Only database created using rdsadmin.create_database can be dropped`  | 

**El nombre de la base de datos no existe**

El siguiente mensaje de error indica que ha pasado un nombre de base de datos incorrecto en el procedimiento almacenado `rdsadmin.drop_database`.

```
SQL0438N Application raised error or warning with diagnostic text: "Cannot
drop database. Database with provided name does not exist". SQLSTATE=99993
```

Vuelva a llamar al procedimiento almacenado `rdsadmin.drop_database` con un nombre de base de datos correcto. Para confirmar que se ha descartado la base de datos, llame a la función [rdsadmin.list\$1databases](db2-user-defined-functions.md#db2-udf-list-databases) definida por el usuario y compruebe que la nueva base de datos descartada no aparezca en la lista.

**Estado de devolución = 0**

El siguiente mensaje de error indica que no se ha podido completar el procedimiento almacenado. 

```
Return Status = 0
```

Una vez recibido `Return Status = 0`, llame a la función [rdsadmin.get\$1task\$1status](db2-user-defined-functions.md#db2-udf-get-task-status) definida por el usuario. 

**No se permite borrar la base de datos**

El siguiente mensaje de error indica que creó la base de datos mediante la consola de Amazon RDS o mediante la AWS CLI. Solo puede utilizar el procedimiento almacenado `rdsadmin.drop_database` si ha creado la base de datos llamando al procedimiento almacenado [rdsadmin.create\$1database](db2-sp-managing-databases.md#db2-sp-create-database).

```
1 ERROR DROP_DATABASE RDSDB 2023-10-10-16.33.03.744122 2023-10-10-16.33.30.143797 - 2023-10-10-16.33.30.098857 Task execution has started.
2023-10-10-16.33.30.143797 Caught exception during executing task id 1, Aborting task. 
Reason Dropping database created via rds CreateDBInstance api is not allowed. 
Only database created using rdsadmin.create_database can be dropped
```

Para eliminar una base de datos que haya creado mediante la consola de Amazon RDS o la AWS CLI, utilice un cliente para conectarse a la base de datos y, a continuación, ejecute el comando correspondiente.

### Errores de rdsadmin.reactivate\$1database
<a name="db2-troubleshooting-reactivate-database-sp-errors"></a>

El siguiente error puede producirse al llamar al procedimiento almacenado [rdsadmin.reactivate\$1database](db2-sp-managing-databases.md#db2-sp-reactivate-database).


| Error | Mensaje de error | 
| --- | --- | 
|  [Failed to allocate shared memory](#reactivate-database-sp-failed-to-allocate-shared-memory)  |  `SQL1643C The database manager failed to allocate shared memory because the database manager instance memory limit has been reached.`  | 
|  [Unable to reactivate because of running processes](#reactivate-database-sp-unable-to-reactivate-processes)  |  `The database can’t be reactivated because it's in the process of being created or restored.`  | 

**No se ha podido asignar la memoria compartida**

El siguiente mensaje de error indica que el procedimiento almacenado no ha podido activar la base de datos porque la instancia de base de datos no tiene suficiente memoria.

```
SQL1643C The database manager failed to allocate shared memory because the database manager instance memory limit has been reached.
```

Aumente la memoria de la instancia de base de datos y, a continuación, vuelva a llamar al procedimiento `rdsadmin.activate_database` almacenado. Para obtener información sobre el uso de la memoria y las recomendaciones para las bases de datos, consulte [Varias bases de datos en una instancia de base de datos de Amazon RDS para Db2](db2-multiple-databases.md).

**No se puede reactivar debido a procesos en ejecución**

El siguiente mensaje de error indica que el procedimiento almacenado no ha podido reactivar una base de datos porque el procedimiento almacenado `rdsadmin.create_database` o `rdsadmin.restore_database` se está ejecutando.

```
The database can’t be reactivated because it's in the process of being created or restored.
```

Espere unos minutos y vuelva a llamar al procedimiento almacenado `rdsadmin.reactivate_database`.

### Errores de rdsadmin.restore\$1database
<a name="db2-troubleshooting-restore-database-sp-errors"></a>

Los siguientes errores pueden producirse al llamar al procedimiento almacenado [rdsadmin.restore\$1database](db2-sp-managing-databases.md#db2-sp-restore-database).


| Error | Mensaje de error | 
| --- | --- | 
|  [Insufficient disk space](#restore-database-sp-insufficient-disk-space)  |  `Aborting task. Reason Restoring your database failed because of insufficient disk space. Increase the storage for your DB instance and rerun the rdsadmin.restore_database stored procedure.`  | 
|  [Internal error](#restore-database-sp-internal-error)  |  `Caught exception during executing task id 104, Aborting task. Reason Internal Error`  | 
|  [Non-fenced routines not allowed](#restore-database-sp-non-fenced-routines)  |  `Caught exception during executing task id 2, Aborting task. Reason Non fenced routines are not allowed. Please delete the routines and retry the restore.`  | 
| [Tablespaces not restored](#restore-database-sp-tablespaces-not-restored) |  `Reason SQL0970N The system attempted to write to a read-only file. Reason SQL2563W The Restore process has completed successfully. However one or more table spaces from the backup were not restored.`  | 

**Espacio en disco insuficiente**

El siguiente mensaje de error indica que la instancia de base de datos no tiene suficiente espacio en disco para restaurar la base de datos:

```
Aborting task. Reason Restoring your database failed because of insufficient disk space. Increase the storage for your DB instance and rerun the rdsadmin.restore_database stored procedure.
```

El espacio libre en la instancia de base de datos debe ser más del doble que el tamaño de la imagen de copia de seguridad. Si la imagen de copia de seguridad está comprimida, el espacio libre en la instancia de base de datos debe ser más del triple que el tamaño de la imagen de copia de seguridad. Para obtener más información, consulte [Aumento de la capacidad de almacenamiento de la instancia de base de datos](USER_PIOPS.ModifyingExisting.md).

Aumente el espacio en disco y, a continuación, vuelva a ejecutar el procedimiento `rdsadmin.restore_database` almacenado. Para confirmar que se ha restaurado la base de datos, llame a la función [rdsadmin.list\$1databases](db2-user-defined-functions.md#db2-udf-list-databases) definida por el usuario y compruebe que la base de datos restaurada aparezca en la lista.

**Error interno**

El siguiente mensaje de error indica que el procedimiento almacenado ha detectado un error interno: 

```
Caught exception during executing task id 104, Aborting task. Reason Internal Error
```

Contacte con [AWS Support](https://aws.amazon.com/premiumsupport/).

**No se permiten rutinas no restringidas**

El siguiente mensaje de error indica que la base de datos incluye rutinas no restringidas:

```
Caught exception during executing task id 2, Aborting task. Reason Non fenced routines are not allowed. Please delete the routines and retry the restore.
```

RDS para Db2 no admite la creación de rutinas no restringidas. Elimine las rutinas no restringidas de la base de datos de origen y, a continuación, vuelva a llamar a `rdsadmin.restore_database`. Para confirmar que se ha restaurado la base de datos, llame a la función [rdsadmin.list\$1databases](db2-user-defined-functions.md#db2-udf-list-databases) definida por el usuario y compruebe que la base de datos restaurada aparezca en la lista. Para obtener más información, consulte [Rutinas no restringidas](db2-known-issues-limitations.md#db2-known-issues-limitations-non-fenced-routines).

**No se han restaurado los espacios de tablas**

El siguiente mensaje de error indica que RDS para Db2 ha restaurado correctamente la base de datos, pero no ha podido restaurar uno o varios espacios de tabla:

```
Reason SQL0970N The system attempted to write to a read-only file.
Reason SQL2563W The Restore process has completed successfully. However one or more table spaces from the backup were not restored.
```

RDS para Db2 no admite almacenamiento no automático. Convierta el almacenamiento no automático en almacenamiento automático y, a continuación, vuelva a llamar a `rdsadmin.restore_database`. Para obtener más información, consulte la sección [Converting a nonautomatic storage database to use automatic storage](https://www.ibm.com/docs/en/db2/11.5?topic=databases-converting-nonautomatic-storage-database-use-automatic-storage) en la documentación de IBM Db2.

Las bases de datos con almacenamiento de SMS no automático requieren una restauración manual. Si su base de datos tiene almacenamiento de SMS no automático, póngase en contacto con [AWS Support](https://aws.amazon.com/premiumsupport/). 

Para obtener información sobre las migraciones únicas y el almacenamiento no automático, consulte [Espacios de tablas de almacenamiento no automáticos durante la migración](db2-known-issues-limitations.md#db2-known-issues-limitations-non-automatic-storage-tablespaces).

### Errores de rdsadmin.update\$1db\$1param
<a name="db2-troubleshooting-update-db-param-sp-errors"></a>

El siguiente error puede producirse al llamar al procedimiento almacenado [rdsadmin.update\$1db\$1param](db2-sp-managing-databases.md#db2-sp-update-db-param).


| Error | Mensaje de error | 
| --- | --- | 
|  [Parameter not supported or modifiable](#update-db-param-sp-parameter-not-supported-modifiable)  | SQL0438N Application raised error or warning with diagnostic text: "Parameter is either not supported or not modifiable to customers". SQLSTATE=99993 | 

**El parámetro no es compatible ni se puede modificar**

El siguiente mensaje de error indica que intentó modificar un parámetro de configuración de base de datos que no es compatible o no se puede modificar.

```
SQL0438N Application raised error or warning with diagnostic text: "Parameter
is either not supported or not modifiable to customers". SQLSTATE=99993
```

Puede ver qué parámetros se pueden modificar consultando sus grupos de parámetros. Para obtener más información, consulte [Visualización de los valores de parámetros de un grupo de parámetros de base de datos en Amazon RDS](USER_WorkingWithParamGroups.Viewing.md).