

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

# 從 Amazon RDS for Db2 的 Linux 遷移至 Linux
<a name="db2-one-time-migration-linux"></a>

使用此遷移方法，您可以將自我管理的 Db2 資料庫備份到 Amazon S3 儲存貯體。然後，您可以使用 Amazon RDS 預存程序將 Db2 資料庫還原至 Amazon RDS for Db2 資料庫執行個體。如需使用 Amazon S3 的詳細資訊，請參閱 [整合 Amazon RDS for Db2 資料庫執行個體和 Amazon S3](db2-s3-integration.md)。

RDS for Db2 的備份和還原遵循 IBM Db2 支援的升級路徑和限制。如需詳細資訊，請參閱 IBM Db2 文件中的 [Db2 伺服器的支援升級路徑](https://www.ibm.com/docs/en/db2/11.5?topic=servers-supported-upgrade-paths-db2)和 [Db2 伺服器的升級限制](https://www.ibm.com/docs/en/db2/11.5?topic=servers-upgrade-restrictions)。

**Topics**
+ [使用原生還原的限制和建議](#db2-linux-migration-limitations)
+ [將您的資料庫備份至 Amazon S3](#db2-linux-backing-up-database)
+ [建立預設自動儲存群組](#db2-linux-creating-auto-storage-group)
+ [還原您的 Db2 資料庫](#db2-linux-restoring-db2-database)

## 使用原生還原的限制和建議
<a name="db2-linux-migration-limitations"></a>

下列限制和建議適用於使用原生還原：
+ Amazon RDS 僅支援遷移符合受支援 RDS for Db2 版本的內部部署 Db2 版本。如需有關支援版本的詳細資訊，請參閱 [Amazon RDS Db2 執行個體的升級管理](Db2.Concepts.VersionMgmt.Supported.md)。
+ Amazon RDS 僅支援原生還原的離線和線上備份。Amazon RDS 不支援增量或 Delta 備份。
+ 您無法從與 RDS for Db2 資料庫執行個體所在區域 AWS 區域 不同的 中的 Amazon S3 儲存貯體還原。
+ Amazon S3 將上傳至 Amazon S3 儲存貯體的檔案大小限制為 5 TB。如果資料庫備份檔案超過 5 TB，請將備份檔案分割為較小的檔案。
+ Amazon RDS 不支援非連接 外部常式、增量還原或 Delta 還原。
+ 您無法從加密的來源資料庫還原，但可以還原至加密的 Amazon RDS 資料庫執行個體。

還原程序會根據您的組態而有所不同。

如果您將 `USE_STREAMING_RESTORE`設定為 `TRUE`，Amazon RDS 會在還原期間直接從 S3 儲存貯體串流備份。串流可大幅降低儲存需求。您只需要佈建等於或大於備份大小或原始資料庫大小的儲存空間，以較大者為準。

如果您將 `USE_STREAMING_RESTORE`設定為 `FALSE`，Amazon RDS 會先將備份下載到您的 RDS for Db2 資料庫執行個體，然後擷取備份。擷取需要額外的儲存空間。您必須佈建等於或大於備份大小加原始資料庫大小總和的儲存空間。

還原資料庫的大小上限等於支援的最大資料庫大小減去還原程序期間暫時儲存所需的任何空間。

## 將您的資料庫備份至 Amazon S3
<a name="db2-linux-backing-up-database"></a>

若要在 Amazon S3 上備份資料庫，您需要下列 AWS 元件：
+ *存放備份檔案的 Amazon S3 儲存貯體*：上傳您要遷移至 Amazon RDS 的任何備份檔案。建議您針對可處理停機時間的遷移使用離線備份。如果您已經有 S3 儲存貯體，則可直接使用。如果您沒有 S3 儲存貯體，請參閱《Amazon S3 使用者指南》**中的[建立儲存貯體](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html)。
**注意**  
如果您的資料庫很大，需要很長的時間才能轉移到 S3 儲存貯體，您可以訂購 AWS Snow Family 裝置並要求 AWS 執行備份。將檔案複製到裝置並將其傳回給 Snow Family 團隊後，團隊會將備份映像傳輸至 S3 儲存貯體。如需詳細資訊，請參閱 [AWS Snow Family 文件](https://docs.aws.amazon.com/snowball/)。
+ *存取 S3 儲存貯體的 IAM 角色*：如果您已有 IAM 角色，則可以使用該角色。如果您沒有角色，請參閱 [步驟 2：建立 IAM 角色並附加您的 IAM 政策](db2-s3-integration.md#db2-creating-iam-role)。
+ *將信任關係和許可連接至 IAM 角色的 IAM 政策*：如需詳細資訊，請參閱 [步驟 1：建立 IAM 政策](db2-s3-integration.md#db2-creating-iam-policy)。
+ *新增至 RDS for Db2 資料庫執行個體的 IAM 角色*：如需詳細資訊，請參閱 [步驟 3：將您的 IAM 角色新增至 RDS for Db2 資料庫執行個體](db2-s3-integration.md#db2-adding-iam-role)。

## 建立預設自動儲存群組
<a name="db2-linux-creating-auto-storage-group"></a>

您的來源資料庫必須具有預設的自動儲存群組。如果您的資料庫沒有預設的自動儲存群組，則必須建立一個。

**建立預設自動儲存群組**

1. 連接到您的來源資料庫。在下列範例中，將 *source\$1database* 取代為您資料庫的名稱。

   ```
   db2 connect to source_database 
   ```

1. 建立自動儲存群組，並將其設定為預設值。在下列範例中，將 *storage\$1path* 取代為儲存群組所在的絕對路徑。

   ```
   db2 "create stogroup IBMSTOGROUP ON storage_path set as default"
   ```

1. 終止後端程序。

   ```
   db2 terminate
   ```

1. 停用資料庫並停止所有資料庫服務。在下列範例中，將 *source\$1database* 取代為您建立儲存群組的資料庫之名稱。

   ```
   db2 deactivate db source_database
   ```

1. 備份資料庫。在下列範例中，將 *source\$1database* 取代為您建立儲存群組的資料庫之名稱。將 *file\$1system\$1path* 取代為您要備份資料庫的絕對路徑。

   ```
   db2 backup database source_database to file_system_path 
   ```

## 還原您的 Db2 資料庫
<a name="db2-linux-restoring-db2-database"></a>

在 Amazon S3 上備份資料庫並建立自動儲存群組之後，您即可將 Db2 資料庫還原至 RDS for Db2 資料庫執行個體。

**將 Db2 資料庫從 Amazon S3 儲存貯體還原至 RDS for Db2 資料庫執行個體**

1. 連線至 RDS for Db2 資料庫執行個體。如需詳細資訊，請參閱[連線至您的 Db2 資料庫執行個體](USER_ConnectToDb2DBInstance.md)。

1. （選用） 若要確保您的資料庫已設定最佳設定，請呼叫 來檢查下列參數的值[rdsadmin.show\$1configuration](db2-sp-managing-databases.md#db2-sp-show-configuration)：
   + `RESTORE_DATABASE_NUM_BUFFERS`
   + `RESTORE_DATABASE_PARALLELISM`
   + `RESTORE_DATABASE_NUM_MULTI_PATHS`
   + `USE_STREAMING_RESTORE`

   視需要使用 [rdsadmin.set\$1configuration](db2-sp-managing-databases.md#db2-sp-set-configuration) 修改這些值。在還原具有大量資料的資料庫時，正確設定這些參數可大幅改善效能。對於大多數遷移案例，我們建議`USE_STREAMING_RESTORE`將 設定為 ，`TRUE`因為它可以減少儲存需求並提高還原速度。

1. 呼叫 `rdsadmin.restore_database` 來還原資料庫。如需詳細資訊，請參閱[rdsadmin.restore\$1database](db2-sp-managing-databases.md#db2-sp-restore-database)。