

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 AWS DMS 將 Db2 資料庫從 Amazon EC2 遷移至 Aurora MySQL 相容
<a name="migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms"></a>

*Pinesh Singal，Amazon Web Services*

## 總結
<a name="migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms-summary"></a>

將 [IBM Db2 for LUW 資料庫](https://www.ibm.com/docs/en/db2/11.5?topic=federation)遷移至 [Amazon Elastic Compute Cloud (Amazon EC2)](https://docs.aws.amazon.com/ec2/) 之後，請考慮移至 Amazon Web Services (AWS) 雲端原生資料庫來重新架構資料庫。此模式涵蓋將 [Amazon](https://docs.aws.amazon.com/ec2/) EC[Db2](https://www.ibm.com/docs/en/db2/11.5)2 遷移至 AWS 上的 [Amazon Aurora MySQL 相容版本](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.AuroraMySQL.html)資料庫。 EC2  

模式說明線上遷移策略，對於具有大量交易的多 TB Db2 來源資料庫，停機時間最短。 

此模式使用 [AWS Schema Conversion Tool (AWS SCT)](https://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_Welcome.html) 將 Db2 資料庫結構描述轉換為 Aurora MySQL 相容結構描述。然後， 模式會使用 [AWS Database Migration Service (AWS DMS)](https://docs.aws.amazon.com/dms/latest/userguide/Welcome.html) 將資料從 Db2 資料庫遷移至 Aurora MySQL 相容資料庫。非由 AWS SCT 轉換的程式碼需要手動轉換。

## 先決條件和限制
<a name="migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms-prereqs"></a>

**先決條件**
+ 具有虛擬私有雲端 (VPC) 的作用中 AWS 帳戶
+ AWS SCT
+ AWS DMS

**產品版本**
+ AWS SCT 最新版本
+ 適用於 Linux 的 Db2 11.1.4.4 版及更新版本

## Architecture
<a name="migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms-architecture"></a>

**來源技術堆疊**
+ 安裝在 EC2 執行個體上的 DB2/Linux x86-64 位元 EC2  

**目標技術堆疊**
+ Amazon Aurora MySQL 相容版本資料庫執行個體

**來源和目標架構**

下圖顯示來源 Db2 與目標 Aurora MySQL 相容資料庫之間的資料遷移架構。AWS 雲端上的架構包含虛擬私有雲端 (VPC) （虛擬私有雲端）、可用區域、Db2 執行個體和 AWS DMS 複寫執行個體的公有子網路，以及 Aurora MySQL 相容資料庫的私有子網路。

![來源 Db2 與目標 Aurora MySQL 相容資料庫之間的資料遷移架構。](http://docs.aws.amazon.com/zh_tw/prescriptive-guidance/latest/patterns/images/pattern-img/5abfccc4-148c-4794-8d80-e3c122679125/images/f30664f8-2d6a-4448-8d5c-cff3988a52c7.png)


## 工具
<a name="migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms-tools"></a>

**AWS 服務**
+ [Amazon Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html) 是全受管關聯式資料庫引擎，專為雲端而建置，並與 MySQL 和 PostgreSQL 相容。
+ [AWS Database Migration Service (AWS DMS)](https://docs.aws.amazon.com/dms/latest/userguide/Welcome.html) 可協助您將資料存放區遷移至 AWS 雲端，或在雲端和內部部署設定的組合之間遷移。
+ [Amazon Elastic Compute Cloud (Amazon EC2)](https://docs.aws.amazon.com/ec2/) 在 AWS 雲端中提供可擴展的運算容量。您可以視需要啟動任意數量的虛擬伺服器，，並快速進行擴展或縮減。
+ [AWS Schema Conversion Tool (AWS SCT)](https://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_Welcome.html) 會自動將來源資料庫結構描述和大部分自訂程式碼轉換為與目標資料庫相容的格式，以支援異質資料庫遷移。AWS SCT 支援 LUW 9.1、9.5、9.7、10.1、10.5、11.1 和 11.5 版的來源 IBM Db2。

## 最佳實務
<a name="migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms-best-practices"></a>

如需最佳實務，請參閱 [ AWS Database Migration Service 的最佳實務](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_BestPractices.html)。

## 史詩
<a name="migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms-epics"></a>

### 設定來源 IBM Db2 資料庫
<a name="configure-the-source-ibm-db2-database"></a>


| 任務 | Description | 所需的技能 | 
| --- | --- | --- | 
| 在 Amazon EC2 上建立 IBM Db2 資料庫。 Amazon EC2 | 您可以使用來自 AWS Marketplace 的 Amazon Machine Image (AMI)，或在 EC2Db2 執行個體上安裝 Db2 軟體，在 EC2 執行個體上建立 IBM Db2 資料庫。 EC2 <br />透過選取與內部部署資料庫類似的 AMI for IBM Db2 （例如 [IBM Db2 v11.5.7 RHEL 7.9](https://aws.amazon.com/marketplace/pp/prodview-aclrjj4hq2ols?sr=0-1&ref_=beagle&applicationId=AWS-EC2-Console)) 來啟動 EC2 執行個體。 | DBA、一般 AWS | 
| 設定安全群組。 | 分別使用連接埠 22 和 50000 設定 SSH （安全殼層） 和 TCP 的 VPC 安全群組傳入規則。 | 一般 AWS | 
| 建立資料庫執行個體。 | 建立新的執行個體 （使用者） 和資料庫 （結構描述），或使用預設`db2inst1`執行個體和範例資料庫。[See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/prescriptive-guidance/latest/patterns/migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms.html) | DBA | 
| 確認 Db2 資料庫執行個體可用。 | 若要確認 Db2 資料庫執行個體已啟動並執行，請使用 `Db2pd -`命令。 | DBA | 

### 設定目標 Aurora MySQL 相容資料庫
<a name="configure-the-target-aurora-mysql-compatible-database"></a>


| 任務 | Description | 所需的技能 | 
| --- | --- | --- | 
| 建立 Aurora MySQL 相容資料庫。 | 從 AWS RDS 服務建立具有 MySQL 相容性資料庫的 Amazon Aurora[See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/prescriptive-guidance/latest/patterns/migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms.html) | DBA、一般 AWS | 
| 設定安全群組。 | 設定 SSH 和 TCP 連線的 VPC 安全群組傳入規則。 | 一般 AWS | 
| 確認 Aurora 資料庫可用。 | 若要確保 Aurora MySQL 相容資料庫已啟動並執行，請執行下列動作：[See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/prescriptive-guidance/latest/patterns/migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms.html) | DBA | 

### 設定和執行 AWS SCT
<a name="configure-and-run-aws-sct"></a>


| 任務 | Description | 所需的技能 | 
| --- | --- | --- | 
| 安裝 AWS SCT。 | 下載並安裝最新版本的 [AWS SCT](https://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_Installing.html) （最新版本 1.0.628)。 | 一般 AWS | 
| 設定 AWS SCT。 | [See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/prescriptive-guidance/latest/patterns/migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms.html) | 一般 AWS | 
| 建立 AWS SCT 專案。 | 建立 AWS SCT 專案和報告，使用 Db2 for LUW 做為來源資料庫引擎，並使用 Aurora MySQL 相容於目標資料庫引擎。<br />若要識別連線至 Db2 for LUW 資料庫所需的權限，請參閱[使用 Db2 LUW 做為 AWS SCT 的來源](https://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_Source.DB2LUW.html)。 | 一般 AWS | 
| 驗證物件。 | 選擇**載入結構描述**，驗證物件。更新目標資料庫上任何不正確的物件：[See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/prescriptive-guidance/latest/patterns/migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms.html) | DBA、一般 AWS | 

### 設定和執行 AWS DMS
<a name="configure-and-run-aws-dms"></a>


| 任務 | Description | 所需的技能 | 
| --- | --- | --- | 
| 建立複寫執行個體。 | 登入 AWS 管理主控台，導覽至 AWS DMS 服務，並使用您為來源和目標資料庫設定的 VPC 安全群組的有效設定來建立複寫執行個體。 | 一般 AWS | 
| 建立端點。 | 建立 Db2 資料庫的來源端點，並為 Aurora MySQL 相容資料庫建立目標端點：[See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/prescriptive-guidance/latest/patterns/migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms.html) | 一般 AWS | 
| 建立遷移任務。 | 為完全載入和 CDC 或資料驗證建立單一遷移任務或多個遷移任務：[See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/prescriptive-guidance/latest/patterns/migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms.html) | 一般 AWS | 
| 規劃生產執行。 | 與應用程式擁有者等利益相關者確認停機時間，以在生產系統中執行 AWS DMS。 | 遷移潛在客戶 | 
| 執行遷移任務。 | [See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/prescriptive-guidance/latest/patterns/migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms.html) | 一般 AWS | 
| 驗證資料。 | 檢閱來源 Db2 和目標 MySQL 資料庫中的遷移任務結果和資料：[See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/prescriptive-guidance/latest/patterns/migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms.html) | DBA | 
| 停止遷移任務。 | 成功完成資料驗證後，停止驗證遷移任務。 | 一般 AWS | 

## 疑難排解
<a name="migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms-troubleshooting"></a>


| 問題 | 解決方案 | 
| --- | --- | 
| AWS SCT 來源和目標測試連線失敗。 | 設定 JDBC 驅動程式版本和 VPC 安全群組傳入規則，以接受傳入流量。 | 
| Db2 來源端點測試執行失敗。 | 設定額外的連線設定 `CurrentLSN=<scan>;`。 | 
| AWSDMS 任務無法連線至 Db2 來源，並傳回下列錯誤。<br />`database is recoverable if either or both of the database configuration parameters LOGARCHMETH1 and LOGARCHMETH2 are set to ON` | 若要避免錯誤，請執行下列命令：[See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/prescriptive-guidance/latest/patterns/migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms.html) | 

## 相關資源
<a name="migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms-resources"></a>

**Amazon EC2**
+ [Amazon EC2](https://aws.amazon.com/ec2/)
+ [Amazon EC2 使用者指南](https://docs.aws.amazon.com/ec2/)

**資料庫**
+ [IBM Db2 資料庫](https://www.ibm.com/products/db2-database)
+ [Amazon Aurora](https://aws.amazon.com/rds/aurora/)
+ [使用 Amazon Aurora MySQL](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.AuroraMySQL.html)

**AWS SCT**
+ [AWS DMS 結構描述轉換](https://aws.amazon.com/dms/schema-conversion-tool/)
+ [AWS Schema Conversion Tool使用者指南](https://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_Welcome.html)
+ [使用 AWS SCT 使用者介面](https://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_UserInterface.html)
+ [使用 IBM Db2 LUW 做為 AWS SCT 的來源](https://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_Source.DB2LUW.html)

**AWS DMS**
+ [AWS Database Migration Service](https://aws.amazon.com/dms/)
+ [AWS Database Migration Service 使用者指南](https://docs.aws.amazon.com/dms/latest/userguide/Welcome.html)
+ [資料遷移的來源](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.html)
+ [資料遷移的目標](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.html)
+ [AWS Database Migration Service 和 AWS Schema Conversion Tool 現在支援 IBM Db2 LUW 作為來源](https://aws.amazon.com/blogs/database/aws-database-migration-service-and-aws-schema-conversion-tool-now-support-ibm-db2-as-a-source/) （部落格文章）
+ [將執行關聯式資料庫的應用程式遷移至 AWS](https://d1.awsstatic.com/whitepapers/Migration/migrating-applications-to-aws.pdf)