Copia de metadatos de bases de datos de Db2 a Amazon RDS para Db2 con db2look - Amazon Relational Database Service

Copia de metadatos de bases de datos de Db2 a Amazon RDS para Db2 con db2look

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 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_name por el nombre de su base de datos Db2.

    db2look -d database_name -e -l -a -f -wlm -cor -createdb -printdbcfg -o db2look.sql
  2. 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_ip_address 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
    2. Catalogue la base de datos. En el siguiente ejemplo, sustituya source_database_name y source_database_alias 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
    3. Asocie a la base de datos de origen. En el siguiente ejemplo, sustituya source_database_alias, user_id y user_password 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
  3. 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_ip_address 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
    2. Catalogue la base de datos. En el siguiente ejemplo, sustituya rds_database_name y rds_database_alias 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
    3. 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
  4. 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.

    2. 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_username y master_password por su propia información.

      db2 connect to rdsadmin user master_username using master_password
    3. Cree un grupo de búferes mediante una llamada a rdsadmin.create_bufferpool. Para obtener más información, consulte rdsadmin.create_bufferpool.

      db2 "call rdsadmin.create_bufferpool( 'database_name', 'buffer_pool_name', buffer_pool_size, 'immediate', 'automatic', page_size, number_block_pages, block_size)"
    4. Cree un espacio de tablas llamando a rdsadmin.create_tablespace. Para obtener más información, consulte rdsadmin.create_tablespace.

      db2 "call rdsadmin.create_tablespace( 'database_name', 'tablespace_name', 'buffer_pool_name', tablespace_initial_size, tablespace_increase_size, 'tablespace_type')"
    5. Repita los pasos c o d para cada grupo de búferes o espacio de tabla adicional que quiera agregar.

    6. Termine la conexión.

      db2 terminate
  5. 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_database_name, master_username y master_password por su propia información.

      db2 connect to rds_database_name user master_username using master_password
    2. Ejecute el archivo db2look.sql.

      db2 -tvf db2look.sql
    3. Termine la conexión.

      db2 terminate