

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# ConnConnecting 到 IBM DB2 for Linux、UNIX 和 Windows 数据库使用 AWS Schema Conversion Tool
<a name="CHAP_Source.DB2LUW"></a>

您可以使用 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 用作源的权限
<a name="CHAP_Source.DB2LUW.Permissions"></a>

下面列出了连接到 Db2 LUW 数据库、检查可用权限和读取源的架构元数据所需的权限：
+ 建立连接所需的权限：
  + CONNECT ON DATABASE
+ 运行 SQL 语句所需的权限：
  + 在包名为空时执行。 SYSSH200
+ 获取实例级别信息所需的权限：
  + EXECUTE ON FUNCTION SYSPROC.ENV\$1GET\$1INST\$1INFO
  + SELECT ON SYSIBMADM.ENV\$1INST\$1INFO
  + SELECT ON SYSIBMADM.ENV\$1SYS\$1INFO
+ 检查通过角色、组和机构授予的权限所需的权限：
  + EXECUTE ON FUNCTION SYSPROC.AUTH\$1LIST\$1AUTHORITIES\$1FOR\$1AUTHID
  + EXECUTE ON FUNCTION SYSPROC.AUTH\$1LIST\$1GROUPS\$1FOR\$1AUTHID
  + EXECUTE ON FUNCTION SYSPROC.AUTH\$1LIST\$1ROLES\$1FOR\$1AUTHID
  + 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
  + 在 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
<a name="CHAP_Source.DB2LUW.Connecting"></a>

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

**连接到 Db2 LUW 源数据库**

1. 在中 AWS Schema Conversion Tool，选择**添加来源**。

1. 选择 **Db2 LUW**，然后选择**下一步**。

   此时显示**添加源**对话框。

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

1. 使用来自的数据库凭据 AWS Secrets Manager 或手动输入：
   + 要使用 Secrets Manager 中的数据库凭证，请按照以下说明进行操作：

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

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

     有关使用 Secrets Manager 中的数据库凭证的信息，请参阅[AWS Secrets Manager 在中配置 AWS Schema Conversion Tool](CHAP_UserInterface.SecretsManager.md)。
   + 要手动输入 IBM Db2 LUW 源数据库连接信息，请按照以下说明进行操作：  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/SchemaConversionTool/latest/userguide/CHAP_Source.DB2LUW.html)

1. 选择 “**测试连接**” 以验证是否 AWS SCT 可以连接到您的源数据库。

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