使用 AWS Schema Conversion Tool 连接到适用于 Linux、UNIX 和 Windows 的 IBM DB2 数据库 - AWS Schema Conversion Tool

使用 AWS Schema Conversion Tool 连接到适用于 Linux、UNIX 和 Windows 的 IBM DB2 数据库

您可以使用 AWS SCT 将架构、SQL 语言中的代码对象以及适用于 Linux、Unix 和 Windows 的 IBM Db2(Db2 LUW)中的应用程序代码转换为以下目标。

  • Amazon RDS for MySQL

  • Amazon Aurora MySQL 兼容版

  • Amazon RDS for PostgreSQL

  • Amazon Aurora PostgreSQL 兼容版

  • Amazon RDS for MariaDB

AWS SCT 支持源 Db2 LUW 9.1、9.5、9.7、10.1、10.5、11.1 和 11.5 版。

将 Db2 LUW 用作源的权限

下面列出了连接到 Db2 LUW 数据库、检查可用权限和读取源的架构元数据所需的权限:

  • 建立连接所需的权限:

    • CONNECT ON DATABASE

  • 运行 SQL 语句所需的权限:

    • EXECUTE ON PACKAGE NULLID.SYSSH200

  • 获取实例级别信息所需的权限:

    • EXECUTE ON FUNCTION SYSPROC.ENV_GET_INST_INFO

    • SELECT ON SYSIBMADM.ENV_INST_INFO

    • SELECT ON SYSIBMADM.ENV_SYS_INFO

  • 检查通过角色、组和机构授予的权限所需的权限:

    • EXECUTE ON FUNCTION SYSPROC.AUTH_LIST_AUTHORITIES_FOR_AUTHID

    • EXECUTE ON FUNCTION SYSPROC.AUTH_LIST_GROUPS_FOR_AUTHID

    • EXECUTE ON FUNCTION SYSPROC.AUTH_LIST_ROLES_FOR_AUTHID

    • SELECT ON SYSIBMADM.PRIVILEGES

  • 系统目录和表上所需的权限:

    • SELECT ON SYSCAT.ATTRIBUTES

    • SELECT ON SYSCAT.CHECKS

    • SELECT ON SYSCAT.COLIDENTATTRIBUTES

    • SELECT ON SYSCAT.COLUMNS

    • SELECT ON SYSCAT.DATAPARTITIONEXPRESSION

    • SELECT ON SYSCAT.DATAPARTITIONS

    • SELECT ON SYSCAT.DATATYPEDEP

    • SELECT ON SYSCAT.DATATYPES

    • SELECT ON SYSCAT.HIERARCHIES

    • SELECT ON SYSCAT.INDEXCOLUSE

    • SELECT ON SYSCAT.INDEXES

    • SELECT ON SYSCAT.INDEXPARTITIONS

    • SELECT ON SYSCAT.KEYCOLUSE

    • SELECT ON SYSCAT.MODULEOBJECTS

    • SELECT ON SYSCAT.MODULES

    • SELECT ON SYSCAT.NICKNAMES

    • SELECT ON SYSCAT.PERIODS

    • SELECT ON SYSCAT.REFERENCES

    • SELECT ON SYSCAT.ROUTINEPARMS

    • SELECT ON SYSCAT.ROUTINES

    • SELECT ON SYSCAT.ROWFIELDS

    • SELECT ON SYSCAT.SCHEMATA

    • SELECT ON SYSCAT.SEQUENCES

    • SELECT ON SYSCAT.TABCONST

    • SELECT ON SYSCAT.TABLES

    • SELECT ON SYSCAT.TRIGGERS

    • SELECT ON SYSCAT.VARIABLEDEP

    • SELECT ON SYSCAT.VARIABLES

    • SELECT ON SYSCAT.VIEWS

    • SELECT ON SYSIBM.SYSDUMMY1

  • 要运行 SQL 语句,用户账户需要使用至少一个在数据库中启用的工作负载的权限。如果没有为用户分配任何工作负载,请确保用户可以访问默认用户工作负载:

    • USAGE ON WORKLOAD SYSDEFAULTUSERWORKLOAD

要运行查询,您需要创建具有页面大小 8K、16K 和 32K 的系统临时表空间(如果它们不存在)。要创建临时表空间,请运行以下脚本。

CREATE BUFFERPOOL BP8K IMMEDIATE ALL DBPARTITIONNUMS SIZE AUTOMATIC NUMBLOCKPAGES 0 PAGESIZE 8K; CREATE SYSTEM TEMPORARY TABLESPACE TS_SYS_TEMP_8K PAGESIZE 8192 BUFFERPOOL BP8K; CREATE BUFFERPOOL BP16K IMMEDIATE ALL DBPARTITIONNUMS SIZE AUTOMATIC NUMBLOCKPAGES 0 PAGESIZE 16K; CREATE SYSTEM TEMPORARY TABLESPACE TS_SYS_TEMP_BP16K PAGESIZE 16384 BUFFERPOOL BP16K; CREATE BUFFERPOOL BP32K IMMEDIATE ALL DBPARTITIONNUMS SIZE AUTOMATIC NUMBLOCKPAGES 0 PAGESIZE 32K; CREATE SYSTEM TEMPORARY TABLESPACE TS_SYS_TEMP_BP32K PAGESIZE 32768 BUFFERPOOL BP32K;

连接到作为源的 Db2 LUW

使用 AWS Schema Conversion Tool 按照以下过程连接到 Db2 LUW 源数据库。

连接到 Db2 LUW 源数据库
  1. 在 AWS Schema Conversion Tool 中,选择添加源

  2. 选择 Db2 LUW,然后选择下一步

    此时显示添加源对话框。

  3. 对于连接名称,输入数据库的名称。AWS SCT 会在左侧面板的树中显示此名称。

  4. 使用来自 AWS Secrets Manager 的数据库凭证或手动输入:

    • 要使用 Secrets Manager 中的数据库凭证,请按照以下说明进行操作:

      1. 对于 AWS 密钥,输入密钥名称。

      2. 选择填充可使用 Secrets Manager 中的数据库凭证自动填写数据库连接对话框中的所有值。

      有关使用 Secrets Manager 中的数据库凭证的信息,请参阅 在 AWS Schema Conversion Tool 中配置 AWS Secrets Manager

    • 要手动输入 IBM Db2 LUW 源数据库连接信息,请按照以下说明进行操作:

      参数 操作
      服务器名称

      输入源数据库服务器的域名系统(DNS)名称或 IP 地址。

      服务器端口

      输入用于连接到源数据库服务器的端口。

      数据库

      输入 Db2 LUW 数据库的名称。

      用户名密码

      输入数据库凭证,以便连接到源数据库服务器。

      仅当您选择连接到项目中的数据库时,AWS SCT 才使用密码连接到源数据库。为了避免泄露源数据库的密码,AWS SCT 不会默认存储该密码。如果您关闭了 AWS SCT 项目并重新打开它,系统会根据需要提示您输入用于连接到源数据库的密码。

      使用 SSL

      如果要使用安全套接字层 (SSL) 连接到数据库,请选择此选项。在 SSL 选项卡上提供以下其他信息(如适用):

      • 信任存储:包含证书的信任存储的位置。要使此位置出现在此处,请务必将其添加到全局设置中。

      存储密码

      AWS SCT 将创建一个安全文件库,用于存储 SSL 证书和数据库密码。启用此选项,可存储数据库密码,且无需输入密码可快速连接到数据库。

      Db2 LUW 驱动程序路径

      输入用于连接到源数据库的驱动程序的路径。有关更多信息,请参阅 为 AWS Schema Conversion Tool 安装 JDBC 驱动程序

      如果您将驱动程序路径存储在全局项目设置中,则驱动程序路径不会显示在连接对话框中。有关更多信息,请参阅 在全局设置中存储驱动程序路径

  5. 选择测试连接以验证 AWS SCT 是否可以连接到源数据库。

  6. 选择连接以连接到源数据库。