Migration von Db2-Daten über Amazon S3 zu Amazon RDS for Db2 - Amazon Relational Database Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Migration von Db2-Daten über Amazon S3 zu Amazon RDS for Db2

Bei diesem Migrationsansatz speichern Sie zunächst Daten aus einer einzelnen Tabelle in einer Datendatei, die Sie in einem Amazon S3 S3-Bucket platzieren. Anschließend verwenden Sie den LOADBefehl, um die Daten aus dieser Datendatei in eine Tabelle in Ihrer Amazon RDS for Db2-Datenbank zu laden. Weitere Informationen zur Verwendung von Amazon S3 finden Sie unterIntegrieren einer Amazon RDS for Db2-DB-Instance mit Amazon S3.

Speichern Ihrer Daten auf Amazon S3

Um Daten aus einer einzelnen Tabelle in Amazon S3 zu speichern, verwenden Sie ein Datenbank-Hilfsprogramm, um die Daten aus Ihrem Datenbankmanagementsystem (DBMS) in eine CSV Datei zu extrahieren. Laden Sie dann die Datendatei auf Amazon S3 hoch.

Zum Speichern von Datendateien auf Amazon S3 benötigen Sie die folgenden AWS Komponenten:

Laden Sie Ihre Daten in RDS Db2-Tabellen

Nachdem Sie Ihre Datendateien in Amazon S3 gespeichert haben, können Sie die Daten aus diesen Dateien in einzelne Tabellen auf Ihrer RDS for Db2-DB-Instance laden.

Um Ihre Db2-Tabellendaten in Ihre RDS für Db2 DB-Datenbanktabelle zu laden
  1. Stellen Sie mit dem Master-Benutzernamen und dem Master-Passwort für Ihre DB2-DB-Instance eine Connect RDS zur rdsadmin Datenbank her. Ersetzen Sie im folgenden Beispiel master_username and master_password durch Ihre eigenen Informationen.

    db2 connect to rdsadmin user master_username using master_password
  2. Katalogisieren Sie einen Alias für den Speicherzugriff, der auf den Amazon S3 S3-Bucket verweist, in dem Ihre gespeicherten Dateien gespeichert sind. Notieren Sie sich den Namen dieses Alias zur Verwendung im nächsten Schritt. Sie müssen diesen Schritt nur einmal ausführen, wenn Sie mehrere Tabellen aus Datendateien laden möchten, die im selben Amazon S3 S3-Bucket gespeichert sind.

    Das folgende Beispiel katalogisiert einen Alias mit dem Namen my_s3_alias das gewährt einem Benutzer mit dem Namen jorge_souza Zugriff auf einen Bucket mit dem Namen amzn-s3-demo-bucket.

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

    Weitere Hinweise zu dieser gespeicherten Prozedur finden Sie unterrdsadmin.catalog_storage_access.

  3. Führen Sie den LOAD Befehl mit dem Speicherzugriffsalias aus, der auf Ihren Amazon S3 S3-Bucket verweist.

    Anmerkung

    Wenn der LOAD Befehl einen Fehler zurückgibt, müssen Sie möglicherweise einen VPC Gateway-Endpunkt für Amazon S3 erstellen und ausgehende Regeln zur Sicherheitsgruppe hinzufügen. Weitere Informationen finden Sie unter Datei-I/O-Fehler.

    Im folgenden Beispiel werden Daten aus einer Datendatei mit dem Namen geladen my_s3_datafile.csv in eine Tabelle mit dem Namen my_db2_table. Das Beispiel geht davon aus, dass sich die Datendatei in dem Amazon S3 S3-Bucket befindet, den der Alias benannt hat my_s3_alias zeigt auf.

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

    Das folgende Beispiel wird LOBs aus einer Datendatei mit dem Namen geladen my_table1_export.ixf in eine Tabelle mit dem Namen my_db2_table. Das Beispiel geht davon aus, dass sich die Datendatei in dem Amazon S3 S3-Bucket befindet, den der Alias benannt hat my_s3_alias zeigt auf.

    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')"

    Wiederholen Sie diesen Schritt für jede Datendatei im Amazon S3 S3-Bucket, die Sie in eine Tabelle in Ihrer RDS for Db2-DB-Instance laden möchten.

    Weitere Informationen zu dem LOAD Befehl finden Sie unter LOADBefehl.