透過 Amazon S3 將 Db2 資料遷移至 Amazon RDS for Db2 - Amazon Relational Database Service

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

透過 Amazon S3 將 Db2 資料遷移至 Amazon RDS for Db2

使用此遷移方法,您首先會將單一資料表中的資料儲存到放置在 Amazon S3 儲存貯體中的資料檔案中。然後,您可以使用 LOAD命令將資料從該資料檔案載入 Amazon RDS for Db2 資料庫中的資料表。如需使用 Amazon S3 的詳細資訊,請參閱 將 Amazon RDS for Db2 資料庫執行個體與 Amazon S3 整合

將資料儲存至 Amazon S3

若要將資料從單一資料表儲存至 Amazon S3,請使用資料庫公用程式,將資料從您的資料庫管理系統 (DBMS) 擷取到CSV檔案中。然後,將資料檔案上傳至 Amazon S3。

若要將資料檔案儲存在 Amazon S3,您需要下列 AWS 元件:

將您的資料載入RDS至 for Db2 資料表

將資料檔案儲存至 Amazon S3 之後,您可以將這些檔案中的資料載入RDS至 for Db2 資料庫執行個體上的個別資料表。

將 Db2 資料表資料載入RDS至 for Db2 資料庫資料庫資料表
  1. 使用RDS適用於 Db2 rdsadmin 資料庫執行個體的主使用者名稱和主密碼連線至資料庫。在下列範例中,取代 master_username 以及 master_password 使用您自己的資訊。

    db2 connect to rdsadmin user master_username using master_password
  2. 為指向儲存檔案之 Amazon S3 儲存貯體的儲存體存取別名編製目錄。請記下此別名的名稱,以便用於下一個步驟。如果您計劃從存放在相同 Amazon S3 儲存貯體中的資料檔案載入多個資料表,只需要執行此步驟一次。

    下列範例為名為 的別名編製目錄 my_s3_alias 授予名為 的使用者 jorge_souza 存取名為 的儲存貯體 amzn-s3-demo-bucket.

    db2 "call rdsadmin.catalog_storage_access(?, 'my_s3_alias', 'amzn-s3-demo-bucket', 'USER', 'jorge_souza')"

    如需此預存程序的詳細資訊,請參閱 rdsadmin.catalog_storage_access

  3. 使用指向 Amazon S3 儲存貯體的儲存體存取別名來執行 LOAD命令。

    注意

    如果LOAD命令傳回錯誤,則您可能需要為 Amazon S3 建立VPC閘道端點,並將傳出規則新增至安全群組。如需詳細資訊,請參閱檔案 I/O 錯誤

    下列範例會從名為 的資料檔案載入資料 my_s3_datafile.csv 至名為 的資料表 my_db2_table。 此範例假設資料檔案位於別名名為 的 Amazon S3 儲存貯體中 my_s3_alias 指向。

    db2 "load from db2remote://my_s3_alias//my_s3_datafile.csv of DEL insert into my_db2_table";

    下列範例LOBs會從名為 的資料檔案載入 my_table1_export.ixf 至名為 的資料表 my_db2_table。 此範例假設資料檔案位於別名名為 的 Amazon S3 儲存貯體中 my_s3_alias 指向。

    db2 "call sysproc.admin_cmd('load from "db2remote://my_s3_alias//my_table1_export.ixf" of ixf lobs from "db2remote://my_s3_alias//" xml from "db2remote://my_s3_alias//" modified by lobsinfile implicitlyhiddeninclude identityoverride generatedoverride periodoverride transactionidoverride messages on server replace into "my_schema"."my_db2_table" nonrecoverable indexing mode incremental allow no access')"

    針對要載入至 RDS for Db2 資料庫執行個體中資料表的 Amazon S3 儲存貯體中的每個資料檔案,重複此步驟。

    如需 LOAD命令的詳細資訊,請參閱LOAD命令