Conexión a la instancia de base de datos de Amazon RDS para Db2 con IBM Db2 CLP - Amazon Relational Database Service

Conexión a la instancia de base de datos de Amazon RDS para Db2 con IBM Db2 CLP

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 en el servicio de soporte de IBM.

Terminologí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.

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 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 en la documentación de IBM Db2.

Instalación del cliente

Después de downloading the package for Linux, 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.

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

  3. Ejecute clientInstallDir/instance/db2icrt -s client instance_name. Sustituya instance_name 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

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

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.

  2. Catalogue su instancia de base de datos de RDS para Db2. En el siguiente ejemplo, sustituya node_name, dns_name 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.

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

    En el siguiente ejemplo, sustituya database_alias, node_name y database_name 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
  4. Conexión a su base de datos de RDS para Db2. En el siguiente ejemplo, sustituya rds_database_alias, master_username y master_password 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
  5. 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

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

  2. Conexión al servidor Db2. En el ejemplo siguiente, sustituya database_name por el nombre de su servidor Db2. Sustituya master_username y master_password por su información. Este usuario tiene autoridad DBADM.

    db2 connect to database_name user master_username using master_password
  3. 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.

    2. 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 en la documentación de IBM Db2.

  4. 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 en el servicio de soporte de IBM.