Konvertieren von Datenbankschemas mithilfe von AWS SCT - AWS Schema Conversion Tool

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.

Konvertieren von Datenbankschemas mithilfe von AWS SCT

Mit dem AWS Schema Conversion Tool (AWS SCT) können Sie Ihre vorhandenen Datenbankschemata von einer Datenbank-Engine in eine andere konvertieren. Das Konvertieren einer Datenbank mithilfe der AWS SCT Benutzeroberfläche kann ziemlich einfach sein, aber es gibt mehrere Dinge zu beachten, bevor Sie die Konvertierung durchführen.

Sie können zum Beispiel Folgendes verwendenAWS SCT:

  • Sie können AWS SCT es verwenden, um ein vorhandenes lokales Datenbankschema in eine Amazon RDS-DB-Instance zu kopieren, auf der dieselbe Engine ausgeführt wird. Mit dieser Funktion können Sie potenzielle Kosteneinsparungen kalkulieren, die beim Wechsel in die Cloud und einer Änderung des Lizenztyps möglich sind.

  • In einigen Fällen können Datenbankfunktionen nicht in gleichwertige Amazon RDS-Funktionen umgewandelt werden. Wenn Sie eine Datenbank auf der Amazon Elastic Compute Cloud (Amazon EC2) -Plattform hosten und selbst verwalten, können Sie diese Funktionen emulieren, indem Sie sie durch Dienste ersetzenAWS.

  • AWS SCTautomatisiert einen Großteil des Prozesses der Konvertierung Ihres OLTP-Datenbankschemas (Online Transaction Processing) in eine Amazon Relational Database Service (Amazon RDS) MySQL-DB-Instance, einen Amazon Aurora-DB-Cluster oder eine PostgreSQL-DB-Instance. Die Quell- und Zieldatenbank-Engines enthalten viele verschiedene Funktionen und Fähigkeiten und AWS SCT versuchen, wo immer möglich, ein gleichwertiges Schema in Ihrer Amazon RDS-DB-Instance zu erstellen. Falls keine direkte Konvertierung möglich ist, stellt AWS SCT eine Liste mit möglichen Aktionen für Sie zusammen.

AWS SCTunterstützt die folgenden OLTP-Konvertierungen (Online Transaction Processing).

Quelldatenbank Zieldatenbank

IBM Db2 für z/OS (Version 12)

Amazon Aurora MySQL-kompatible Ausgabe, Amazon Aurora PostgreSQL-kompatible Ausgabe, MySQL, PostgreSQL

IBM Db2 LUW (Versionen 9.1, 9.5, 9.7, 10.5, 11.1 und 11.5)

Aurora MySQL, Aurora PostgreSQL, MariaDB, MySQL, PostgreSQL

Microsoft Azure SQL-Datenbank

Aurora MySQL, Aurora PostgreSQL, MySQL, PostgreSQL

Microsoft SQL Server (Version 2008 R2 und höher)

Aurora MySQL, Aurora PostgreSQL, Babelfish für Aurora PostgreSQL, MariaDB, Microsoft SQL Server, MySQL, PostgreSQL

MySQL (Version 5.5 und höher)

Aurora PostgreSQL, MySQL, PostgreSQL

Sie können Schema und Daten von MySQL zu einem Aurora MySQL-DB-Cluster migrieren, ohne es zu verwendenAWS SCT. Weitere Informationen finden Sie unter Migrieren von Daten zu einem Amazon Aurora-DB-Cluster.

Oracle (Version 10.2 und höher)

Aurora MySQL, Aurora PostgreSQL, MariaDB, MySQL, Oracle, PostgreSQL

PostgreSQL (Version 9.1 und höher)

Aurora MySQL, Aurora PostgreSQL, MySQL, PostgreSQL

SAP ASE (12,5, 15,0, 15,5, 15,7 und 16,0)

Aurora MySQL, Aurora PostgreSQL, MariaDB, MySQL, PostgreSQL

Hinweise zur Konvertierung eines Data Warehouse-Schemas finden Sie unterKonvertierung von Data Warehouse-Schemas in Amazon Redshift mithilfe von AWS SCT.

Um Ihr Datenbankschema in Amazon RDS zu konvertieren, gehen Sie wie folgt vor:

Erstellen von Migrationsregeln in AWS SCT

Bevor Sie Ihr Schema mit konvertierenAWS SCT, können Sie Migrationsregeln einrichten. Migrationsregeln in AWS SCT können Transformationen wie das Ändern des Datentyps von Spalten, das Verschieben von Objekten von einem Schema in ein anderes und das Ändern der Namen von Objekten durchführen. Nehmen wir zum Beispiel an, dass Sie in Ihrem Quellschema eine Reihe von Tabellen benannt habentest_TABLE_NAME. Sie können eine Regel einrichten, die das Präfix in test_ das Präfix demo_ im Zielschema ändert.

Anmerkung

Sie können Migrationsregeln nur für verschiedene Quell- und Zieldatenbank-Engines erstellen.

Sie können Migrationsregeln erstellen, die die folgenden Aufgaben ausführen:

  • Präfix hinzufügen, entfernen oder ersetzen

  • Suffix hinzufügen, entfernen oder ersetzen

  • Spaltensortierung ändern

  • Ändern des Datentyps

  • Ändern Sie die Länge der string Datentypen char varcharnvarchar,, und

  • Verschieben von Objekten

  • Umbenennen von Objekten

Sie können Migrationsregeln für die folgenden Objekte erstellen:

  • Datenbank

  • Schema

  • Tabelle

  • Spalte

Migrationsregeln erstellen

Sie können Migrationsregeln erstellen und die Regeln als Teil Ihres Projekts speichern. Verwenden Sie bei geöffnetem Projekt das folgende Verfahren, um Migrationsregeln zu erstellen.

Um Migrationsregeln zu erstellen
  1. Wählen Sie im Menü Ansicht die Option Mapping-Ansicht aus.

  2. Wählen Sie unter Serverzuordnungen ein Paar aus Quell- und Zielservern aus.

  3. Wählen Sie Neue Migrationsregel aus. Das Dialogfeld Transformationsregeln wird angezeigt.

  4. Wählen Sie Add new rule aus. Der Liste der Regeln wird eine neue Zeile hinzugefügt.

  5. Konfiguriere deine Regel:

    1. Geben Sie unter Name einen Namen für Ihre Regel ein.

    2. Wählen Sie für For den Objekttyp aus, für den die Regel gelten soll.

    3. Geben Sie einen Filter ein, der auf Objekte angewendet werden soll, bevor Sie die Migrationsregel anwenden. Die WHERE-Klausel wird mithilfe einer vergleichbaren Klausel ausgewertet. Sie können den exakten Namen eingeben und ein Objekt auswählen oder Sie können ein Muster angeben und damit mehrere Objekte auswählen.

      Die verfügbaren Felder für die Klausel where sind je nach Objekttyp unterschiedlich. Wenn als Objekttyp "Schema" ausgewählt wurde, ist nur das Feld für den Schemanamen verfügbar.

    4. Wählen Sie unter Aktionen den Typ der Migrationsregel aus, den Sie erstellen möchten.

    5. Geben Sie je nach Regeltyp einen oder zwei zusätzliche Werte ein. Um beispielsweise ein Objekt umzubenennen, geben Sie den neuen Namen des Objekts ein. Um ein Präfix zu ersetzen, geben Sie das alte Präfix und das neue Präfix ein.

      Für die Datentypen char, varchar, nvarchar und string können Sie die Datentyplänge mithilfe des Multiplikationsoperators ändern. Beispielsweise wandelt der %*4 Wert den varchar(10) Datentyp um invarchar(40).

  6. Nachdem Sie Ihre Migrationsregel konfiguriert haben, wählen Sie Speichern, um Ihre Regel zu speichern. Zum Verwerfen Ihrer Änderungen können Sie auf Cancel klicken.

    Das Dialogfeld mit den Transformationsregeln
  7. Wenn Sie mit dem Hinzufügen, Bearbeiten und Löschen der Regeln fertig sind, klicken Sie auf Save All, um alle Änderungen zu speichern.

  8. Wählen Sie Schließen, um das Dialogfeld mit den Transformationsregeln zu schließen.

Sie können das Umschaltsymbol verwenden, um eine Migrationsregel zu deaktivieren, ohne sie zu löschen. Sie können das Kopiersymbol verwenden, um eine bestehende Migrationsregel zu duplizieren. Sie können das Stiftsymbol verwenden, um eine bestehende Migrationsregel zu bearbeiten. Sie können das Löschsymbol verwenden, um eine bestehende Migrationsregel zu löschen. Um alle Änderungen zu speichern, die Sie an Ihren Migrationsregeln vornehmen, wählen Sie Alle speichern.

Migrationsregeln exportieren

Wenn Sie Ihre Daten AWS DMS früher von Ihrer Quelldatenbank in Ihre Zieldatenbank migrieren, können Sie Informationen zu Ihren Migrationsregeln angebenAWS DMS. Weitere Informationen zu Aufgaben finden Sie unter Arbeiten mit AWS Database Migration Service Replikationsaufgaben.

Um Migrationsregeln zu exportieren
  1. Wählen Sie in der AWS Schema Conversion Tool im Menü Ansicht die Option Mapping-Ansicht.

  2. Wählen Sie unter Migrationsregeln eine Migrationsregel aus und klicken Sie dann auf Migrationsregel ändern.

  3. Wählen Sie Skript exportieren für AWS DMS.

  4. Navigieren Sie zum gewünschten Speicherort des Skripts und klicken Sie auf Save. Ihre Migrationsregeln werden als JSON-Skript gespeichert, das von verwendet werden kannAWS DMS.

Konvertierung Ihres Schemas mithilfe von AWS SCT

Nachdem Sie Ihr Projekt sowohl mit Ihrer Quelldatenbank als auch mit Ihrer Amazon RDS-DB-Zielinstanz verbunden haben, zeigt Ihr AWS Schema Conversion Tool Projekt das Schema aus Ihrer Quelldatenbank im linken Bereich an. Das Schema wird in einer Strukturansicht dargestellt und jeder Knoten wird per Lazy Loading abgerufen. Wenn Sie einen Knoten in der Strukturansicht auswählen, fordert AWS SCT die Schemainformationen zu diesem Zeitpunkt aus der Quelldatenbank an.

Sie können Schemaelemente in der Quelldatenbank auswählen und dann das Schema in ein entsprechendes Schema für die DB-Engine der DB-Ziel-Instance konvertieren. Sie können beliebige Schemaelemente aus der Quelldatenbank für die Konvertierung auswählen. Falls das zu konvertierende Schemaelement von einem übergeordneten Element abhängig ist, generiert AWS SCT auch dafür ein entsprechendes Schema. Nehmen wir zum Beispiel an, Sie wählen eine Tabelle für die Konvertierung aus. Wenn ja, AWS SCT generiert das Schema für die Tabelle und die Datenbank, in der sich die Tabelle befindet.

Konvertieren des Schemas

Um ein Schema aus Ihrer Quelldatenbank zu konvertieren, aktivieren Sie das Kontrollkästchen für den Namen des zu konvertierenden Schemas. Wählen Sie als Nächstes dieses Schema im linken Bereich Ihres Projekts aus. AWS SCThebt den Schemanamen blau hervor. Öffnen Sie das Kontextmenü (Rechtsklick) für das Schema und wählen Sie Schema konvertieren, wie im Folgenden gezeigt.

Konvertieren des Schemas

Nachdem Sie das Schema von der Quelldatenbank konvertiert haben, können Sie aus dem linken Projektbereich Schemaelemente auswählen und das konvertierte Schema im mittleren Projektbereich anzeigen. Im mittleren Bereich werden unten die Eigenschaften des konvertierten Schemas und der SQL-Befehl zum Erstellen desselben wie folgt angezeigt:

Auswählen des Quellschemaelements

Nachdem das Schema konvertiert ist, können Sie das Projekt speichern. Die Schemainformationen von der Quelldatenbank werden zusammen mit dem Projekt gespeichert. Dank dieser Funktionalität können Sie offline ohne Verbindung zur Quelldatenbank arbeiten. AWS SCT stellt eine Verbindung zur Quelldatenbank her, um das Schema in Ihrem Projekt zu aktualisieren, wenn Sie Refresh from Database (Aktualisieren von Datenbank) für Ihre Quelldatenbank wählen. Weitere Informationen finden Sie unter Aktualisierung und Aktualisierung Ihres konvertierten Schemas in AWS SCT.

Sie können einen Bewertungsbericht zur Datenbankmigration erstellen, in dem die nicht automatisch konvertierbaren Elemente aufgeführt werden. Mit diesem Bewertungsbericht können Sie die Schemaelemente ermitteln und auflösen, die nicht automatisch konvertiert werden können. Weitere Informationen finden Sie unter Erstellung von Berichten zur Migrationsbewertung mitAWS SCT.

Wenn AWS SCT ein konvertiertes Schema generiert, wird dieses nicht sofort in die DB-Ziel-Instance übernommen. Stattdessen wird das konvertierte Schema lokal gespeichert, bis Sie es für die DB-Ziel-Instance übernehmen. Weitere Informationen finden Sie unter Ihr konvertiertes Schema anwenden.

Konvertiertes Schema bearbeiten

Sie können ein konvertiertes Schema bearbeiten und die Änderungen als Teil des Projekts speichern.

So bearbeiten Sie ein konvertiertes Schema
  1. Wählen Sie im linken Projektbereich, in dem das Schema von der Quelldatenbank angezeigt wird, das Schemaelement aus, für das Sie das konvertierte Schema ändern möchten.

  2. Wählen Sie unten im mittleren Bereich, in dem das konvertierte Schema für das ausgewählte Element angezeigt wird, die Registerkarte SQL aus.

  3. Nehmen Sie im Text, der unter der Registerkarte SQL angezeigt wird, die erforderlichen Änderungen am Schema vor. Das Schema wird automatisch für das Projekt gespeichert, wenn Sie es aktualisieren.

    Aktualisieren des Schemas von der DB-Ziel-Instance

Die Änderungen, die Sie am konvertierten Schema vorgenommen haben, werden für das Projekt gespeichert, wenn Sie es aktualisieren. Wenn Sie ein Schemaelement aus der Quelldatenbank neu konvertieren, aber das zuvor konvertierte Schema für dieses Element bereits aktualisiert hatten, werden die erfolgten Aktualisierungen durch das auf Basis der Quelldatenbank neu konvertierte Schemaelement ersetzt.

Löschen eines konvertierten Schemas

Bis Sie das Schema für die DB-Ziel-Instance übernehmen, speichert AWS SCT das konvertierte Schema nur lokal in Ihrem Projekt. Sie können das geplante Schema aus Ihrem Projekt löschen, indem Sie den Baumstrukturknoten für Ihre DB-Instance auswählen und dann Aus Datenbank aktualisieren wählen. Da kein Schema in Ihre Ziel-DB-Instance geschrieben wurde, werden bei der Aktualisierung aus der Datenbank die geplanten Schemaelemente in Ihrem AWS SCT Projekt entfernt, sodass sie dem entsprechen, was in Ihrer Quell-DB-Instance vorhanden ist.

Bearbeitung manueller Konvertierungen in AWS SCT

Der Bewertungsbericht enthält eine Liste von Elementen, die nicht automatisch in die Datenbank-Engine Ihrer Amazon RDS-DB-Zielinstanz konvertiert werden können. Für jedes nicht konvertierbare Element wird auf der Registerkarte Action Items ein Aktionselement angegeben.

Sie können wie folgt auf die Aktionselemente im Bewertungsbericht reagieren:

  • Sie ändern das Schema der Quelldatenbank.

  • Sie ändern das Schema der Zieldatenbank.

Ändern Ihres Quellschemas

Für einige Elemente ist es möglicherweise einfacher, das Datenbankschema in Ihrer Quelldatenbank in ein Schema zu ändern, das automatisch konvertiert werden kann. Vergewissern Sie sich zunächst, dass die neuen Änderungen mit der Anwendungsarchitektur kompatibel sind, und aktualisieren Sie dann das Schema der Quelldatenbank. Aktualisieren Sie abschließend das Projekt mit den neuen Schemainformationen. Anschließend können Sie das aktualisierte Schema konvertieren und den Bewertungsbericht zur Datenbankmigration erneut erstellen. Für die im Quellschema geänderten Elemente werden keine Aktionselemente mehr angezeigt.

Der Vorteil dieses Verfahrens besteht darin, dass das aktualisierte Schema immer verfügbar ist, wenn Sie von der Quelldatenbank aktualisieren.

Ihr Zielschema ändern

Bei einigen Elementen ist es einfacher, das konvertierte Schema für die Zieldatenbank zu übernehmen und anschließend für die Elemente, die nicht automatisch konvertiert werden konnten, entsprechende Schemaelemente manuell zur Zieldatenbank hinzuzufügen. Durch Übernehmen des jeweiligen Schemas können Sie automatisch konvertierbare Schemata in die DB-Ziel-Instance schreiben. Weitere Informationen finden Sie unter Speichern und Anwenden Ihres konvertierten Schemas in AWS SCT.

Das Schema, das in die DB-Ziel-Instance geschrieben wird, enthält nur automatisch konvertierbare Elemente. Nachdem Sie das Schema für die DB-Ziel-Instance übernommen haben, können Sie manuell ein (mit der Quelldatenbank) gleichwertiges Schema in der DB-Ziel-Instance erstellen. Die im Bewertungsbericht zur Datenbankmigration angegebenen Aktionselemente enthalten Vorschläge zum Erstellen eines gleichwertigen Schemas.

Warnung

Wenn Sie ein Schema manuell in der DB-Ziel-Instance erstellen, sollten Sie eine Kopie davon speichern. Falls Sie das konvertierte Schema vom Projekt erneut in die DB-Ziel-Instance übernehmen, werden Ihre manuellen Änderungen überschrieben.

In einigen Fällen ist es nicht möglich, ein gleichwertiges Schema in der DB-Ziel-Instance zu erstellen. Möglicherweise muss das Design der Anwendung und der Datenbank in Teilen überarbeitet werden, damit Sie die von der DB-Engine bereitgestellte Funktionalität für Ihre DB-Ziel-Instance nutzen können. In anderen Fällen kann das Schema, das nicht automatisch konvertiert werden kann, ignoriert werden.

Aktualisierung und Aktualisierung Ihres konvertierten Schemas in AWS SCT

Sie können sowohl das Quell- als auch das Zielschema im AWS Schema Conversion Tool-Projekt aktualisieren.

  • Quelle — Wenn Sie das Schema für Ihre Quelldatenbank aktualisieren, AWS SCT ersetzen Sie das Schema in Ihrem Projekt durch das neueste Schema aus Ihrer Quelldatenbank. Mit dieser Funktion können Sie das Projekt aktualisieren, wenn das Schema der Quelldatenbank geändert wurde.

  • Ziel — Wenn Sie das Schema für Ihre Amazon RDS-Ziel-DB-Instance aktualisieren, AWS SCT ersetzen Sie das Schema in Ihrem Projekt durch das neueste Schema Ihrer Ziel-DB-Instance. Falls kein Schema für die DB-Ziel-Instance übernommen wurde, löscht AWS SCT das konvertierte Schema aus dem Projekt. Anschließend können Sie das Schema von der Quelldatenbank für eine neue DB-Ziel-Instance konvertieren.

Sie aktualisieren das Schema in Ihrem AWS SCT Projekt, indem Sie Aus Datenbank aktualisieren wählen.

Anmerkung

Wenn Sie Ihr Schema aktualisieren, werden Metadaten nur dann AWS SCT geladen, wenn sie benötigt werden. Um das gesamte Schema Ihrer Datenbank vollständig zu laden, öffnen Sie das Kontextmenü (Rechtsklick) für Ihr Schema und wählen Sie Schema laden. Sie können diese Option beispielsweise verwenden, um alle Metadaten für Ihre Datenbank auf einmal zu laden und dann offline zu arbeiten.

Speichern und Anwenden Ihres konvertierten Schemas in AWS SCT

Wenn das AWS Schema Conversion Tool ein konvertiertes Schema generiert (wie in Konvertierung Ihres Schemas mithilfe von AWS SCT gezeigt), wird dieses nicht sofort für die DB-Ziel-Instance übernommen. Stattdessen wird das konvertierte Schema lokal im Projekt gespeichert, bis Sie es für die DB-Ziel-Instance übernehmen. Mit dieser Funktion können Sie mit Schemaelementen arbeiten, die sich nicht automatisch in die Zieldatenbank-Engine konvertieren lassen. Weitere Informationen zu Elementen, die nicht automatisch konvertierbar sind, finden Sie unter Erstellung von Berichten zur Migrationsbewertung mitAWS SCT.

Optional können Sie das konvertierte Schema mithilfe des Tools als SQL-Skript in einer Datei speichern, bevor Sie das Schema für die DB-Ziel-Instance übernehmen. Mit diesem Tool können Sie das konvertierte Schema auch direkt für die DB-Ziel-Instance übernehmen.

Speichern Ihres konvertierten Schemas in einer Datei

Sie können das konvertierte Schema als SQL-Skripts in einer Textdatei speichern. Auf diese Weise können Sie die von AWS SCT generierten SQL-Skripts modifizieren, um solche Elemente zu berücksichtigen, die das Tool nicht automatisch konvertieren kann. Anschließend führen Sie die aktualisierten Skripts auf der DB-Ziel-Instance aus und übernehmen das konvertierte Schema in die Zieldatenbank.

Um Ihr konvertiertes Schema als SQL-Skript zu speichern
  1. Wählen Sie Ihr Schema und öffnen Sie das Kontextmenü (Rechtsklick).

  2. Wählen Sie Als SQL speichern.

  3. Geben Sie den Namen der Datei ein und wählen Sie Speichern.

  4. Speichern Sie Ihr konvertiertes Schema mit einer der folgenden Optionen:

    • Einzelne Datei

    • Eine Datei pro Stufe

    • Eine Datei pro Kontoauszug

Um das Format des SQL-Skripts auszuwählen
  1. Wählen Sie im Menü Einstellungen die Option Projekteinstellungen.

  2. Wählen Sie Scripts speichern.

  3. Wählen Sie für Anbieter die Datenbankplattform aus.

  4. Wählen Sie unter SQL-Skripts speichern in aus, wie Sie Ihr Datenbankschema-Skript speichern möchten.

  5. Wählen Sie OK, um die Einstellungen zu speichern.

Ihr konvertiertes Schema anwenden

Wenn Sie bereit sind, Ihr konvertiertes Schema auf Ihre Amazon RDS-DB-Zielinstanz anzuwenden, wählen Sie das Schemaelement im rechten Bereich Ihres Projekts aus. Öffnen Sie das Kontextmenü (rechte Maustaste) für das Schemaelement und wählen Sie Apply to database aus, wie hier gezeigt.

Apply to database (Auf Datenbank anwenden)

Das Schema des Erweiterungspakets

Wenn Sie zum ersten Mal ein konvertiertes Schema für die DB-Ziel-Instance übernehmen, fügt AWS SCT ein weiteres Schema zu Ihrer DB-Ziel-Instance hinzu. Über dieses Schema werden Systemfunktionen der Quelldatenbank implementiert, die zum Schreiben des konvertierten Schemas in die Ziel-DB-Instance benötigt werden. Das Schema wird als Erweiterungspaketschema bezeichnet.

Dieses Erweiterungspaketschema sollten Sie nicht ändern, andernfalls könnten im konvertierten Schema, das auf die DB-Ziel-Instance geschrieben wird, unerwünschte Ergebnisse auftreten. Nachdem das Schema vollständig zur DB-Ziel-Instance migriert wurde und Sie AWS SCT nicht mehr benötigen, können Sie das Erweiterungspaketschema löschen.

Das Erweiterungspaketschema wird wie folgt entsprechend Ihrer Quelldatenbank benannt:

  • IBM Db2 LUW: aws_db2_ext

  • Microsoft SQL Server: aws_sqlserver_ext

  • MySQL: aws_mysql_ext

  • Oracle: aws_oracle_ext

  • PostgreSQL: aws_postgresql_ext

  • SAP-BASIS: aws_sapase_ext

Weitere Informationen finden Sie unter Verwenden Sie die AWS Lambda Funktionen aus dem AWS SCT Erweiterungspaket .