Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die PostgreSQL-Erweiterung für Visual Studio Code bietet einen geführten Workflow für Oracle-Schema- und Anwendungskonvertierung. Der Assistent führt Sie durch die Verbindung mit Oracle, auswählen von Schemas, Überprüfen der Ermittlung, Auswählen einer PostgreSQL-Scratch-Datenbank und Konfigurieren Microsoft Foundry. Überprüfen Sie nach der Konvertierung den HTML-Bericht und den Conversion Objekt-Explorer und bereiten Sie dann die Bereitstellung mit der Setup Experience vor. Planen Sie die Migration von Zeilendaten separat.
Important
Der Migrationsworkflow von Oracle zu PostgreSQL ist nur in Visual Studio Code verfügbar.
Zusammenpassen von Schema- und Anwendungskonvertierung
Die Erweiterung wandelt eine Oracle-Workload in zwei Durchläufen um. Die Schemakonvertierung wird zuerst ausgeführt und erzeugt die Data Definition Language (DDL) für Ihre Datenbankobjekte. Die Anwendungskonvertierung wird anschließend ausgeführt und aktualisiert den Code, der diese Objekte aufruft.
Schemakonvertierung
Die Schemakonvertierung liest das Oracle-Datenwörterbuch für die ausgewählten Schemas und verwendet Ihre Microsoft Foundry-Bereitstellung zum Generieren von PostgreSQL DDL. Das Tool versucht die Kompilierung in der Scratch-Datenbank und verwendet die verfügbaren statischen Prüfungen, um Probleme zu identifizieren. Diese Prüfungen belegen weder ein entsprechendes Laufzeitverhalten noch Produktionsbereitschaft. Ein Lauf erzeugt:
- PostgreSQL-Dateien
.sqlauf Objektebene, organisiert nach Oracle-Schema und Objekttyp. - Ein HTML-Konvertierungsbericht mit Erkennungs-, Extraktions- und Konvertierungsergebnissen, Konvertierungsraten und Notizen auf Objektebene.
- Objektzuordnungen und Notizen, die Sie in Conversion Objekt-Explorer prüfen können, einschließlich Objekten, die manuelle Änderungen benötigen.
- Einrichtungsanweisungen und Skripte für einen separaten Deploymentvorgang.
- Hinweise zur Codierung, die die Oracle-Muster beschreiben, die im Schema gefunden wurden und wie sie PostgreSQL zugeordnet werden.
Anwendungskonvertierung
Die Anwendungskonvertierung zielt auf den Oracle-spezifischen Code ab, der die Datenbank umgibt: SQL-Skripts, gespeicherte Prozeduraufrufe, Ladesteuerungsdateien, Shellskripts und Java Dateien. Es übernimmt die Codierungsnotizen aus der Schemakonvertierung als Eingabe, sodass der konvertierte Anwendungscode mit den Objektnamen, Typen und aufrufenden Konventionen, die tatsächlich erzeugt wurden, mit der Schemakonvertierung zusammenführt.
Sie können datenbankbezogenen Anwendungscode innerhalb dieser Erweiterung konvertieren oder die Arbeit an die GitHub App Copilot modernization extension für einen vollständigen Modernisierungsdurchlauf übergeben.
Sequenzieren Sie die beiden Durchläufe
Führen Sie zuerst die Schemakonvertierung aus. Die Anwendungskonvertierung verwendet die Codierungsnotizen und konvertierten Objektnamen aus der Schemakonvertierung. Überprüfen Sie das Schema, und beheben Sie die erforderlichen Änderungen, bevor Sie Anwendungscode konvertieren. Wenn Sie später eine PostgreSQL-Definition bearbeiten, überprüfen Sie die Anwendungsaufrufer erneut. Das erneute Ausführen einer abgeschlossenen Schemakonvertierung wird nicht unterstützt.
Voraussetzungen
Bevor Sie beginnen, stellen Sie sicher, dass Sie folgendes haben:
- Visual Studio Code installiert.
- Die PostgreSQL-Erweiterung installiert.
- Zugriff auf eine Oracle-Quelldatenbank mit Berechtigungen zum Lesen von Schemametadaten und Wörterbuchansichten. Zeilendatenzugriff ist nicht erforderlich.
- Ein flexibler Azure Database for PostgreSQL-Server mit einer leeren oder dedizierten, nicht verwendeten Scratch-Datenbank, die nichts enthält, das Sie beibehalten müssen. Der Verbindungsbenutzer muss in der Lage sein, übereinstimmende Schemas zu löschen und neu zu erstellen und Validierungsobjekte zu erstellen. Die Schemakonvertierung unterstützt Azure HorizonDB nicht als Scratch-Datenbank.
- Eine Microsoft Foundry-Ressource mit einem
gpt-5.2bereitgestellten Modell und einer Quote von mehr als 1.000.000 Token pro Minute (TPM). Sie benötigen die Endpunkt-URL und entweder einen API-Schlüssel oder ein Microsoft Entra ID Konto mit Zugriff.
Informationen zu Betriebssystem-, Versions-, Berechtigungs- und Konnektivitätsanforderungen finden Sie in den Voraussetzungen für die Schemakonvertierung.
Überprüfen, ob das Migrationsfeature aktiviert ist
Die pgsql.enableMigrations Einstellung steuert die Migrations-Ansicht und alle Migrationsbefehle. Diese Einstellung ist standardmäßig aktiviert.
Wenn die Migrationsansicht nicht in der Randleiste angezeigt wird, öffnen Sie Visual Studio Code Einstellungen (STRG+, unter Windows/Linux, Cmd+, unter macOS), und stellen Sie sicher, dass pgsql.enableMigrations sie auf festgelegt trueist.
Erstellen eines Migrationsprojekts
Der Migrationsprojekt-Assistent sammelt Ihre Quelle, Ihren Ermittlungsbereich, die Scratch-Datenbankverbindung und die KI-Konfiguration, bevor der Projektarbeitsbereich erstellt wird.
Schritt 1: Project Setup
Öffnen Sie die Migrationsansicht in der Randleiste.
Starten Sie ein neues Projekt auf eine der folgenden Weisen:
- Wenn der Arbeitsbereich noch kein Migrationsprojekt enthält, wählen Sie in der Ansicht die Option + Migrationsprojekt erstellen aus.
- Wählen Sie die + Schaltfläche in der Symbolleiste der Ansicht aus.
- Klicken Sie im Explorer mit der rechten Maustaste auf einen Arbeitsbereichsordner, und wählen Sie Open Migration Project aus.
Die Seite „Neues Oracle-zu-Azure Database for PostgreSQL-Migrationsprojekt“ wird geöffnet, auf der aufgeführt ist, was Sie benötigen:
- Verbindungsdetails für die Quelldatenbank
- Namen der zu konvertierenden Schemas
- Endpunkt-URL und Schlüssel für eine Microsoft Foundry-Ressource
- Verbindungsname für eine vorhandene Azure Database for PostgreSQL Instanz
Geben Sie einen Namen in das Feld "Project Name" ein.
Wählen Sie "Weiter" aus: Oracle-Verbindung.
Schritt 2: Herstellen einer Verbindung mit Oracle
Die Seite „Mit Oracle verbinden“ erfasst Ihre Anmeldeinformationen für die Oracle-Quelldatenbank und ermöglicht Ihnen, Schemas zu laden.
Füllen Sie die Oracle-Verbindungsfelder aus:
Feld Beschreibung Oracle Hostname Hostname oder IP-Adresse des Oracle-Datenbankservers. Oracle Port Listener-Port (Standardwert: 1521).Oracle SID oder Dienstname Oracle SID- oder Dienstname für die Datenbankinstanz. Oracle-Benutzername Datenbankbenutzer mit Zugriff auf Schemametadaten und Wörterbuchansichten. Oracle-Kennwort Kennwort für den Oracle-Benutzer. Wählen Sie "Schemas laden " aus, um eine Verbindung herzustellen und die Liste der verfügbaren Schemas abzurufen.
Wählen Sie in der Dropdownliste " Schemas " ein oder mehrere Schemas aus, die migriert werden sollen.
Wählen Sie Weiter: Discovery aus.
Schritt 3: Discovery überprüfen
Discovery überprüft die Quellberechtigungen und erfasst die ausgewählten Schemas vor der DDL-Extraktion.
- Überprüfen Sie die Berechtigungen und beheben Sie fehlenden Zugriff auf die Quelle.
- Überprüfen Sie „Ermittelt“, „Zu extrahieren“, „Ausgeschlossen“ und „Ungültige Objekte“ zusammen mit Objekttypdetails und Ausschlussgründen.
- Überprüfen Sie die Schemaabhängigkeiten. Abhängige Schemas führt referenzierte Schemas auf, die Sie nicht ausgewählt haben; das Auflisten einer Abhängigkeit schließt dieses Schema nicht in den Konvertierungsbereich ein.
- Bestätigen Sie den Quellumfang. Wenn Sie die Auswahl ändern, aktualisieren Sie Discovery, bevor Sie fortfahren.
- Bestätigen Sie den überprüften Umfang, und wählen Sie "Weiter: PostgreSQL Connection" aus.
Den vollständigen Discovery-Bildschirm und die vollständige Anleitung finden Sie unter Discovery-Ergebnisse im Tutorial überprüfen.
Schritt 4: Wählen Sie eine Azure Database for PostgreSQL-Scratchdatenbank aus
Die Seite „Azure Database for PostgreSQL Scratch-Datenbank auswählen“ wählt die Datenbank aus, die zum Überprüfen konvertierter DDL verwendet wird.
Warning
Bei der Konvertierung werden Schemas, die den ausgewählten Oracle-Schemas entsprechen, mithilfe von DROP SCHEMA ... CASCADE gelöscht und dann neu erstellt. Diese Aktion löscht vorhandene Objekte und Daten in diesen Schemas und kann abhängige Objekte in anderen Schemas entfernen. Verwenden Sie eine leere Scratch-Datenbank oder eine dedizierte, nicht verwendete Scratch-Datenbank, die keine Objekte oder Daten enthält, die Sie beibehalten müssen.
- Wählen Sie in der Dropdownliste "PostgreSQL Connection " ein vorhandenes Verbindungsprofil aus. Wenn die benötigte Verbindung nicht aufgeführt ist, wählen Sie "Profile aktualisieren " aus, um verfügbare Profile neu zu laden, oder erstellen Sie zuerst in der Verbindungs- und Identitätsansicht eine neue Verbindung.
- Wählen Sie in der Dropdownliste der PostgreSQL-Datenbank die Zieldatenbank aus. Wählen Sie "Datenbanken laden " aus, wenn die Liste leer ist.
- Wählen Sie "Erweiterungen überprüfen " aus, um die empfohlenen Erweiterungen zu überprüfen. Wenn welche fehlen, fügen Sie die Erweiterungen, die Ihre Konvertierung benötigt, zur Zulassungsliste des Servers hinzu und installieren Sie sie. Die gelbe Warnung blockiert keine Fortsetzung, aber abhängige Objekte erfordern möglicherweise manuelle Änderungen.
- Wählen Sie die Bestätigung aus, dass übereinstimmende Scratch-Schemas gelöscht und während der Konvertierung neu erstellt werden.
- Wählen Sie Weiter: Microsoft Foundry-Modellkonfiguration aus.
Schritt 5: Konfigurieren des Microsoft Foundry-Modells
Auf der Seite "Microsoft Foundry Model auswählen" wird die Microsoft Foundry-Bereitstellung konfiguriert, die die Schema- und Codekonvertierung unterstützt.
Füllen Sie die Sprachmodellfelder aus:
Feld Beschreibung Modellname gpt-5.2.Microsoft Foundry-Endpunkt URL des Microsoft Foundry-Ressourcenendpunkts (z. B. https://<resource>.openai.azure.com/).Authentifizierungsmethode Wählen Sie API-Schlüssel oder Microsoft Entra ID aus. Microsoft Findry-API-Schlüssel API-Schlüssel für die Microsoft Foundry-Ressource (wird angezeigt, wenn die AuthentifizierungsmethodeAPI-Schlüssel ist). Azure-Konto Microsoft-Konto mit Zugriff auf die Ressource (wird angezeigt, wenn die AuthentifizierungsmethodeMicrosoft Entra ID ist). Mandant Microsoft Entra-Mandant für das Konto (wird angezeigt, wenn die AuthentifizierungsmethodeMicrosoft Entra ID ist). Bereitstellungsname Name des bereitgestellten Modells in Ihrer Microsoft Foundry-Ressource. Wählen Sie "Test Microsoft Foundry Connection" aus, um die Verbindung zu überprüfen.
Wählen Sie Migrationsprojekt erstellen aus.
Weisen Sie ein Bereitstellungskontingent zu, das größer als 1.000.000 TPM ist. Siehe Konfigurieren der Microsoft Foundry-Kapazität.
Ausführen der Schemamigration
Nachdem Sie das Projekt erstellt haben, führen Sie die Konvertierung aus, und überprüfen Sie die Ergebnisse im Migrationsprojekt.
Extrahieren und Konvertieren von Schemas
- Wählen Sie "Migrieren" aus, um die Extraktion und Konvertierung zu starten.
- Überwachen Sie den Extraktions- und Konvertierungsfortschritt.
- Wenn das Projekt die Meldung Schemakonvertierung ist abgeschlossen anzeigt, wählen Sie "Konvertierungszusammenfassung überprüfen" aus.
Der HTML-Bericht wird automatisch geöffnet, wenn die Konvertierung abgeschlossen ist. Öffnen Sie ihn erneut, indem Sie den Konvertierungsbericht in der Konvertierungszusammenfassung auswählen. Überprüfen Sie die Erkennungs-, Extraktions- und Konvertierungssummen separat; sie beschreiben verschiedene Phasen.
Konvertierte Objekte überprüfen
Verwenden Sie Conversion Objekt-Explorer, um konvertierte und nicht konvertierte Objekte zu prüfen:
- Öffnen Sie ein Objekt, um seine Oracle- und PostgreSQL-Definitionen zu vergleichen, sofern verfügbar, und lesen Sie die Konvertierungsnotizen.
- Wählen Sie Erklärung oder Korrigieren für Copilot-unterstützte Bearbeitungen an seiner PostgreSQL-Datei aus.
- Wenn das Schema bereits in einer Nichtproduktionsdatenbank bereitgestellt ist, kompilieren Sie Korrekturen dort, indem Sie den aktiven Server und die aktive Datenbank bestätigen, vollständige Anweisungen auswählen und nur diese Auswahl ausführen. Andernfalls bereiten Sie zuerst die im nächsten Abschnitt beschriebene Bereitstellung vor.
- Vergewissern Sie sich, dass die Bereitstellungs-SQL die Korrekturen enthält, die Sie bereitstellen möchten. Durch das Bearbeiten einer Objektdatei bedeutet nicht, dass sich das Datenbankobjekt oder das generierte Bereitstellungsskript geändert hat.
Für Filter, Paketmitglieder und detaillierte Schritte finden Sie unter Conversion Objekt-Explorer.
Vorbereiten der Bereitstellung
Wählen Sie in der Konvertierungszusammenfassung die Setup-Anweisung aus, um die generierten Bereitstellungsanweisungen zu öffnen und das Setupverzeichnis anzuzeigen. Überprüfen Sie das Paket, führen Sie Validierungsprüfungen aus, und führen Sie dann das generierte Bereitstellungsskript für eine separate Nicht-Produktiv-Zieldatenbank aus. Durch das Generieren von Setupdateien wird das Schema nicht bereitgestellt.
Überprüfen Sie Bereitstellungsberichte und validieren Sie das Verhalten von Daten und Anwendungen unabhängig vor der Produktionsverwendung. Voraussetzungen, Datenbankmodi und Befehle finden Sie unter Bereitstellen konvertierter Schemas mit der Setupoberfläche.
Migrieren von Anwendungscode
Konvertieren Sie nach der Schemamigration Oracle-spezifischen Anwendungscode (SQL-Skripts, gespeicherte Prozeduren, Ladesteuerungsdateien, Shellskripts oder Java Dateien) in PostgreSQL-kompatible Entsprechungen. Die Anwendungsmigration ist ein Vorschaufeature.
Auswählen einer Migrationsmethode
Die Erweiterung bietet zwei Pfade für die Migration von Anwendungscode:
- Vollständige App-Modernisierung: Wenn Sie die GitHub-App Copilot Modernisierungserweiterung installieren, wählen Sie Migrieren mithilfe der App-Modernisierung aus, um die Migration mit Codierungsnotizen aus der Schemakonvertierung fortzusetzen. Wählen Sie "Codierungsnotizen anzeigen " aus, um die generierten Anleitungen zu überprüfen, bevor Sie fortfahren.
- Option nur für Datenbank: Um nur datenbankbezogenen Anwendungscode in dieser Erweiterung zu konvertieren, wählen Sie Mit PostgreSQL-Erweiterung migrieren aus.
Konvertieren von Anwendungscode innerhalb der Erweiterung
- Wählen Sie auf der Anwendungsmigrationskarte"Daten migrieren" (oder "Methode auswählen ", wenn die App-Modernisierungserweiterung erkannt wird).
- Wählen Sie auf der Seite "Anwendung konvertieren" die Option "Oracle-Anwendung zum Konvertieren " aus, und wählen Sie den Ordner aus, der Oracle-Anwendungscode enthält.
- Wählen Sie eine PostgreSQL-Verbindung und Eine PostgreSQL-Datenbank für den Konvertierungskontext aus.
- Wählen Sie "Datenbanken laden " aus, wenn die Datenbankliste leer ist.
- Wählen Sie "Anwendung konvertieren" aus, um die Konvertierung zu starten.
Verwenden von Copilot Tools für die Anwendungsmigration
Die Erweiterung registriert zwei Copilot Sprachmodelltools für Migrationsunterstützung:
Oracle Client Code Application Converter (
pgsql_migration_oracle_app): Konvertiert Oracle-Clientanwendungscode in PostgreSQL-Entsprechungen mithilfe von Prompt-Vorlagen und Codierungsanleitungen aus der Schemamigrationsanalyse. Akzeptiert die folgenden Parameter:- Anwendungscodebasisordner (erforderlich): Speicherort des zu konvertierenden Codes.
- Pfad zum Speicherort der Codierungshinweise (optional): Pfad zu den Codierungshinweisen aus der Schemamigration.
- Postgres DB Name (optional): Name der PostgreSQL-Datenbank für den Konvertierungskontext.
- Postgres DB Connection (optional): Verbindungsname für die PostgreSQL-Datenbank.
Zeigen Sie Oracle to Postgres Migration Report (
pgsql_migration_show_report): Zeigt den Migrationsbericht an, der von der Schemakonvertierung generiert wurde. Erfordert den Parameter Pfad zur Berichtsdatei.
Weitere Informationen zur Verwendung von Copilot-Tools finden Sie unter Copilot Integration.
Vergleichen konvertierter Dateien
Überprüfen Sie nach der Konvertierung änderungen nebeneinander mithilfe der integrierten Diff-Befehle.
- Klicken Sie im Explorer mit der rechten Maustaste auf eine konvertierte SQL-Datei unter dem
oracleMigrationsprojekt oderpostgresordner, und wählen Sie "DDL-Migrationsdateipaare vergleichen" aus. - Klicken Sie bei konvertierten Anwendungscodedateien (
.sql,.ctl,.sh,.loadoder.java), mit der rechten Maustaste auf die Datei, und wählen Sie " Anwendungsmigrationsdateipaare vergleichen" aus.
Die parallele Diff-Ansicht zeigt die ursprüngliche Oracle-Quelle zusammen mit der konvertierten PostgreSQL-Ausgabe an, sodass Sie alle Artefakte identifizieren können, die eine manuelle Anpassung erfordern.
Der Befehl "DDL-Migrationsdateipaare vergleichen " erfordert die Struktur folder/oracle|postgres/SCHEMA_NAME/DDL-TYPE/filename.sql , um ein übereinstimmende Paar zu finden. Verwenden Sie für die Ausgabe der Schemakonvertierung den Conversion Objekt-Explorer, um in den Quell-zu-Ziel-Zuordnungen zu navigieren.
Verwalten von Migrationsprojekten
Verwenden Sie die Ansicht "Migrationen " in der Randleiste, um Ihre Projekte zu verwalten:
| Action | Beschreibung |
|---|---|
| Migration Project öffnen | Öffnen Sie ein vorhandenes Migrationsprojekt im Dashboard. |
| Im Explorer anzeigen | Anzeigen des Projektordners in der Explorer-Ansicht. |
| Delete | Entfernen Eines Migrationsprojekts. Sie werden aufgefordert, vor dem Löschen zu bestätigen. |
| Aktualisieren | Laden Sie die Liste der Migrationsprojekte im aktuellen Arbeitsbereich neu. |
Verwandte Inhalte
- Was ist die Schemakonvertierung von Oracle zu Azure Database for PostgreSQL Flexible Server?
- Tutorial: Schemakonvertierung von Oracle zu Azure Database for PostgreSQL – Flexible Server
- Bewährte Methoden für die Schemakonvertierung von Oracle zu Azure Database for PostgreSQL Flexible Server
- Konvertierte Objekte im Konvertierungs-Objekt-Explorer überprüfen
- HTML-Konvertierungsbericht anzeigen
- Konvertierte Schemata mit der Setup Experience bereitstellen
- Einschränkungen bei der Schemakonvertierung von Oracle zu Azure Database for PostgreSQL Flexible Server
- Copilot Integration
- Verbindungen und Identität
- Einstellungsreferenz
- Referenz zu Copilot Tools