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.
Migrieren Sie mithilfe von Materialized Views und AWS DMS von Oracle 8i oder 9i zu Amazon RDS for PostgreSQL
Erstellt von Kumar Babu P G (AWS) und Pragnesh Patel (AWS)
Übersicht
Dieses Muster beschreibt, wie eine lokale ältere Oracle 8i- oder 9i-Datenbank zu Amazon Relational Database Service (Amazon RDS) for PostgreSQL oder Amazon Aurora PostgreSQL-Compatible Edition migriert wird.
AWS Database Migration Service (AWS DMS) unterstützt Oracle 8i oder 9i nicht als Quelle. Daher verwendet dieses Muster eine zwischengeschaltete Oracle-Datenbankinstanz, die mit AWS DMS kompatibel ist, wie Oracle 10g oder 11g. Es verwendet auch die Funktion Materialized Views, um Daten von der Oracle 8i/9i-Quellinstanz zur Oracle 10g/11g-Zwischeninstanz zu migrieren.
Das AWS Schema Conversion Tool (AWS SCT) konvertiert das Datenbankschema, und AWS DMS migriert die Daten in die PostgreSQL-Zieldatenbank.
Dieses Muster hilft Benutzern, die von älteren Oracle-Datenbanken mit minimaler Datenbankausfallzeit migrieren möchten. In dieser Implementierung wäre die Ausfallzeit auf den Zeitraum begrenzt, der benötigt wird, um alle Fremdschlüssel, Trigger und Sequenzen in der Zieldatenbank zu erstellen oder zu validieren.
Das Muster verwendet Amazon Elastic Compute Cloud (Amazon EC2) -Instances mit einer installierten Oracle 10g/11g-Datenbank, um AWS DMS beim Streamen der Daten zu unterstützen. Sie können die Streaming-Replikation von der lokalen Oracle-Datenbank zur Oracle-Zwischeninstanz vorübergehend unterbrechen, damit AWS DMS die Datenvalidierung catch oder ein anderes Datenvalidierungstool verwenden kann. Die PostgreSQL-DB-Instance und die Oracle-Zwischendatenbank verfügen über dieselben Daten, wenn AWS DMS die Migration der aktuellen Änderungen abgeschlossen hat.
Voraussetzungen und Einschränkungen
Voraussetzungen
Ein aktives AWS-Konto
Eine Oracle 8i- oder 9i-Quelldatenbank in einem lokalen Rechenzentrum
AWS Direct Connect, konfiguriert zwischen dem lokalen Rechenzentrum und AWS
Java Database Connectivity (JDBC) -Treiber für AWS SCT-Connectors, die entweder auf einem lokalen Computer oder auf der EC2 Instance installiert sind, auf der AWS SCT installiert ist
Vertrautheit mit der Verwendung einer Oracle-Datenbank als AWS-DMS-Quelle
Vertrautheit mit der Verwendung einer PostgreSQL-Datenbank als AWS-DMS-Ziel
Einschränkungen
Die maximale Datenbankgröße beträgt 64 TB
Produktversionen
Oracle 8i oder 9i für die Quelldatenbank
Oracle 10g oder 11g für die Zwischendatenbank
PostgreSQL 10.17 oder höher
Architektur
Quelltechnologie-Stack
Oracle 8i- oder 9i-Datenbank
Zieltechnologie-Stack
Amazon RDS for PostgreSQL oder Aurora PostgreSQL-kompatibel
Zielarchitektur

Tools
AWS DMS hilft bei der schnellen und sicheren Migration von Datenbanken. Die Quelldatenbank bleibt während der Migration voll funktionsfähig, wodurch Ausfallzeiten für Anwendungen, die auf die Datenbank angewiesen sind, minimiert werden. AWS DMS kann Ihre Daten zu und von den am häufigsten verwendeten kommerziellen und Open-Source-Datenbanken migrieren.
AWS SCT konvertiert automatisch das Quelldatenbankschema und einen Großteil der Datenbankcodeobjekte, einschließlich Ansichten, gespeicherten Prozeduren und Funktionen, in ein Format, das mit der Zieldatenbank kompatibel ist. Objekte, die nicht automatisch konvertiert werden können, sind deutlich gekennzeichnet, sodass sie manuell konvertiert werden können, um die Migration abzuschließen. AWS SCT kann Ihren Anwendungsquellcode auch nach eingebetteten SQL-Anweisungen scannen und diese im Rahmen eines Datenbankschema-Konvertierungsprojekts konvertieren. Während dieses Prozesses führt AWS SCT eine Cloud-native Code-Optimierung durch, indem es ältere Oracle- und SQL Server-Funktionen in ihre AWS-Entsprechungen konvertiert, um Sie bei der Modernisierung Ihrer Anwendungen und der Migration Ihrer Datenbanken zu unterstützen. Wenn die Schemakonvertierung abgeschlossen ist, kann AWS SCT mithilfe integrierter Datenmigrationsagenten bei der Migration von Daten aus einer Reihe von Data Warehouses nach Amazon Redshift helfen.
Bewährte Methoden
Bewährte Methoden für die Aktualisierung materialisierter Ansichten finden Sie in der folgenden Oracle-Dokumentation:
Epen
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Richten Sie das Netzwerk für die EC2 Instanz ein. | Erstellen Sie die Virtual Private Cloud (VPC), die Subnetze, das Internet-Gateway, die Routing-Tabellen und die Sicherheitsgruppen. | AWS SysAdmin |
Erstellen Sie die EC2 Instanz. | Wählen Sie das Amazon Machine Image (AMI) für die EC2 Instance aus. Wählen Sie die Instanzgröße und konfigurieren Sie die Instanzdetails: die Anzahl der Instanzen (1), die VPC und das Subnetz aus dem vorherigen Schritt, automatische Zuweisung öffentlicher IP-Adressen und andere Optionen. Fügen Sie Speicher hinzu, konfigurieren Sie Sicherheitsgruppen und starten Sie die Instance. Wenn Sie dazu aufgefordert werden, erstellen und speichern Sie ein key pair für den nächsten Schritt. | AWS SysAdmin |
Installieren Sie Oracle auf der EC2 Instanz. | Erwerben Sie die Lizenzen und die erforderlichen Oracle-Binärdateien und installieren Sie Oracle 10g oder 11g auf der Instance. EC2 | DBA |
Konfigurieren Sie das Oracle-Netzwerk. | Ändern oder fügen Sie Einträge hinzu | DBA |
Erstellen Sie materialisierte Ansichten. | Identifizieren Sie die Datenbankobjekte, die in der Oracle 8i/9i-Quelldatenbank repliziert werden sollen, und erstellen Sie dann mithilfe des Datenbank-Links materialisierte Ansichten für alle Objekte. | DBA |
Stellen Sie Skripts bereit, um materialisierte Ansichten in den erforderlichen Intervallen zu aktualisieren. | Entwickeln und implementieren Sie Skripts, um materialisierte Ansichten in den erforderlichen Intervallen auf der Amazon EC2 Oracle 10g/11g-Instance zu aktualisieren. Verwenden Sie die Option „Inkrementelle Aktualisierung“, um Materialized Views zu aktualisieren. | DBA |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Richten Sie AWS SCT ein. | Erstellen Sie einen neuen Bericht und stellen Sie dann eine Verbindung zu Oracle als Quelle und PostgreSQL als Ziel her. Öffnen Sie in den Projekteinstellungen die Registerkarte SQL Scripting. Ändern Sie das Ziel-SQL-Skript in Mehrere Dateien. (AWS SCT unterstützt keine Oracle 8i/9i-Datenbanken, daher müssen Sie den reinen Schema-Dump auf der Oracle 10g/11g-Zwischeninstanz wiederherstellen und ihn als Quelle für AWS SCT verwenden.) | DBA |
Konvertiert das Oracle-Datenbankschema. | Wählen Sie auf der Registerkarte Aktion die Optionen Bericht generieren, Schema konvertieren und dann Als SQL speichern aus. | DBA |
Ändern Sie die SQL-Skripten. | Nehmen Sie Änderungen auf der Grundlage bewährter Methoden vor. Wechseln Sie beispielsweise zu geeigneten Datentypen und entwickeln Sie PostgreSQL-Äquivalente für Oracle-spezifische Funktionen. | DBA, DevDBA |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Erstellen Sie die Amazon RDS-DB-Instance. | Erstellen Sie in der Amazon RDS-Konsole eine neue PostgreSQL-DB-Instance. | AWS SysAdmin, DBA |
Konfigurieren Sie die DB-Instance. | Geben Sie die DB-Engine-Version, die DB-Instance-Klasse, die Multi-AZ-Bereitstellung, den Speichertyp und den zugewiesenen Speicher an. Geben Sie die DB-Instance-ID, einen Master-Benutzernamen und ein Master-Passwort ein. | AWS SysAdmin, DBA |
Konfigurieren Sie Netzwerk und Sicherheit. | Geben Sie die VPC, die Subnetzgruppe, den öffentlichen Zugriff, die Availability Zone-Präferenz und die Sicherheitsgruppen an. | DBA, SysAdmin |
Datenbankoptionen konfigurieren. | Geben Sie den Datenbanknamen, den Port, die Parametergruppe, die Verschlüsselung und den Hauptschlüssel an. | DBA, AWS SysAdmin |
Konfigurieren Sie die Sicherungen. | Geben Sie den Aufbewahrungszeitraum für Backups, das Backup-Fenster, die Startzeit und die Dauer an und ob Tags in Snapshots kopiert werden sollen. | AWS SysAdmin, DBA |
Konfigurieren Sie die Überwachungsoptionen. | Aktivieren oder deaktivieren Sie erweiterte Überwachungs- und Leistungseinblicke. | AWS SysAdmin, DBA |
Konfigurieren Sie die Wartungsoptionen. | Geben Sie das auto Upgrade der Nebenversion, das Wartungsfenster sowie den Starttag, die Uhrzeit und die Dauer an. | AWS SysAdmin, DBA |
Führen Sie die Skripts vor der Migration von AWS SCT aus. | Erstellen Sie auf der Amazon RDS for PostgreSQL PostgreSQL-Zielinstanz das Datenbankschema mithilfe der SQL-Skripts von AWS SCT mit anderen Änderungen. Dazu können die Ausführung mehrerer Skripts gehören, einschließlich Benutzererstellung, Datenbankerstellung, Schemaerstellung, Tabellen, Ansichten, Funktionen und anderer Codeobjekte. | AWS SysAdmin, DBA |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Erstellen Sie eine Replikationsinstanz in AWS DMS. | Füllen Sie die Felder für den Namen, die Instance-Klasse, die VPC (wie für die EC2 Instance), Multi-AZ und den öffentlichen Zugriff aus. Geben Sie im Abschnitt für die erweiterte Konfiguration den zugewiesenen Speicher, die Subnetzgruppe, die Availability Zone, die VPC-Sicherheitsgruppen und den AWS Key Management Service (AWS KMS) -Schlüssel an. | AWS SysAdmin, DBA |
Erstellen Sie den Endpunkt der Quelldatenbank. | Geben Sie den Endpunktnamen, den Typ, die Quell-Engine (Oracle), den Servernamen (den privaten DNS-Namen der EC2 Instanz), den Port, den SSL-Modus, den Benutzernamen, das Passwort, die SID, die VPC (geben Sie die VPC an, die die Replikationsinstanz hat) und die Replikationsinstanz an. Um die Verbindung zu testen, wählen Sie Test ausführen und erstellen Sie dann den Endpunkt. Sie können auch die folgenden erweiterten Einstellungen konfigurieren: maxFileSizeund numberDataTypeSkalieren. | AWS SysAdmin, DBA |
Connect AWS DMS mit Amazon RDS for PostgreSQL. | Erstellen Sie eine Migrationssicherheitsgruppe für Verbindungen zwischen VPCs, falls sich Ihre PostgreSQL-Datenbank in einer anderen VPC befindet. | AWS SysAdmin, DBA |
Erstellen Sie den Zieldatenbank-Endpunkt. | Geben Sie den Endpunktnamen, den Typ, die Quell-Engine (PostgreSQL), den Servernamen (Amazon RDS-Endpunkt), den Port, den SSL-Modus, den Benutzernamen, das Passwort, den Datenbanknamen, die VPC (geben Sie die VPC an, die die Replikationsinstanz hat) und die Replikationsinstanz an. Um die Verbindung zu testen, wählen Sie Test ausführen und erstellen Sie dann den Endpunkt. Sie können auch die folgenden erweiterten Einstellungen konfigurieren: maxFileSizeund numberDataTypeSkalieren. | AWS SysAdmin, DBA |
Erstellen Sie die AWS DMS-Replikationsaufgabe. | Geben Sie den Namen der Aufgabe, die Replikationsinstanz, die Quell- und Zielendpunkte sowie die Replikationsinstanz an. Wählen Sie als Migrationstyp die Option Bestehende Daten migrieren und laufende Änderungen replizieren aus. Deaktivieren Sie das Kontrollkästchen Aufgabe bei Erstellung starten. | AWS SysAdmin, DBA |
Konfigurieren Sie die Einstellungen für die AWS DMS-Replikationsaufgabe. | Wählen Sie für den Modus zur Vorbereitung der Zieltabelle die Option Nichts tun. Beenden Sie die Aufgabe, nachdem der vollständige Ladevorgang abgeschlossen ist (um Primärschlüssel zu erstellen). Geben Sie den eingeschränkten oder vollständigen LOB-Modus an und aktivieren Sie Steuertabellen. Optional können Sie die CommitRateerweiterte Einstellung konfigurieren. | DBA |
Konfigurieren Sie die Tabellenzuordnungen. | Erstellen Sie im Abschnitt Tabellenzuordnungen eine Einschlussregel für alle Tabellen in allen Schemas, die in der Migration enthalten sind, und erstellen Sie dann eine Ausschlussregel. Fügen Sie drei Transformationsregeln hinzu, um die Schema-, Tabellen- und Spaltennamen in Kleinbuchstaben umzuwandeln, und fügen Sie alle anderen Regeln hinzu, die Sie für diese spezielle Migration benötigen. | DBA |
Starte die Aufgabe. | Starten Sie die Replikationsaufgabe. Stellen Sie sicher, dass die Volllast läuft. Führen Sie es | DBA |
Führen Sie die Skripts während der Migration von AWS SCT aus. | Führen Sie in Amazon RDS for PostgreSQL die folgenden Skripts aus: | DBA |
Setzen Sie die Aufgabe fort, um mit der Erfassung von Änderungsdaten (CDC) fortzufahren. | Führen Sie die Ausführung | DBA |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Überprüfen Sie die AWS DMS-Protokolle und Validierungstabellen. | Überprüfen und beheben Sie alle Replikations- oder Validierungsfehler. | DBA |
Beenden Sie die Verwendung der lokalen Oracle-Datenbank und ihrer Abhängigkeiten. | Beenden Sie alle Oracle-Abhängigkeiten, fahren Sie die Listener in der Oracle-Datenbank herunter und führen Sie den Vorgang aus. | DBA |
Führen Sie die Skripts nach der Migration von AWS SCT aus. | Führen Sie in Amazon RDS for PostgreSQL die folgenden Skripts aus:. | DBA |
Führen Sie zusätzliche Schritte von Amazon RDS for PostgreSQL aus. | Erhöhen Sie die Sequenzen bei Bedarf, sodass sie mit Oracle übereinstimmen, führen Sie den Vorgang aus | DBA |
Öffnen Sie die Verbindungen zu Amazon RDS for PostgreSQL. | Entfernen Sie die AWS DMS-Sicherheitsgruppen aus Amazon RDS for PostgreSQL, fügen Sie Produktionssicherheitsgruppen hinzu und verweisen Sie Ihre Anwendungen auf die neue Datenbank. | DBA |
Bereinigen Sie die AWS DMS-Objekte. | Entfernen Sie die Endgeräte, Replikationsaufgaben, Replikationsinstanzen und die EC2 Instanz. | SysAdmin, DBA |