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 Setupumgebung für die Schemakonvertierung generiert automatisch Anweisungen und Skripts, sobald der Konvertierungsworkflow abgeschlossen ist. Verwenden Sie diese Dateien, um konvertierte Schemas in Azure Database for PostgreSQL bereitzustellen. Durch das Generieren der Dateien werden die Schemas nicht an Ihrem Ziel bereitgestellt. Sie überprüfen diese und führen das generierte PowerShell- oder Bash-Skript in Ihrer Bereitstellungsumgebung aus.
Anweisungen zum Öffnen der Setupdateien aus einer abgeschlossenen Konvertierung finden Sie unter Vorbereiten der Bereitstellung mit der Setup Experience im Lernprogramm.
Überprüfen Sie die generierten Dateien
Das Setupverzeichnis hängt davon ab, wie viele Oracle-Schemas Sie für die Konvertierung auswählen. Verwenden Sie den entsprechenden Pfad relativ zum Arbeitsbereichsstamm:
| Oracle-Schemaauswahl | Installationsverzeichnis |
|---|---|
| 1 Schema ausgewählt | .github\postgres-migrations\<migration-project>\artifacts\oracle\<schema-name>\setup |
| Mehrere Schemata ausgewählt | .github\postgres-migrations\<migration-project>\artifacts\oracle\_migration\setup |
Ersetzen Sie <migration-project> durch den Namen des Migrationsprojektordners, z. B. Mig001. Wenn Sie ein Schema auswählen, ersetzen Sie <schema-name> durch den Namen des ausgewählten Oracle-Schemaordners, z. B. HR. Wenn Sie mehrere Schemas auswählen, _migration ist der tatsächliche Ordnername und kein Platzhalter.
Der Speicherort spiegelt die ausgewählten Oracle-Schemas wider, nicht die Anzahl der Im Paket enthaltenen PostgreSQL-Schemas. Überprüfen Sie setup_instructions.md für den Bereitstellungsbereich des Pakets.
| Datei oder Verzeichnis | Purpose |
|---|---|
setup_instructions.md |
Bereitstellungsspezifische Voraussetzungen, Befehle, optionale Parameter und Anleitungen zur Problembehandlung. |
setup.ps1 |
Bereitstellungs-Runner für Windows PowerShell. |
setup.sh |
Bereitstellungs-Runner für Bash unter Linux oder macOS. |
sql |
Unterstützung von Bereitschaftsprüfungen, Erweiterungsskripten, Überprüfungsabfragen und Manifesten, die von den Runnern verwendet werden. |
reports und logs |
Ausgaben, die beim Ausführen der Setupskripte geschrieben werden. |
Behalten Sie das Setupverzeichnis innerhalb des vollständigen Migrationsprojekts bei. Die Läufer verweisen auf das deploy.sql der Konvertierungssitzung im gleichgeordneten convert-Verzeichnis. Das Kopieren des Setupverzeichnisses reicht nicht aus.
Überprüfen Sie die generierten Anweisungen und die Bereitstellungs-SQL, bevor Sie sie ausführen. Vergewissern Sie sich, dass SQL die Objektkorrekturen enthält, die Sie implementieren möchten. Wenn Sie das Projekt in eine andere Umgebung übertragen, behalten Sie die Verzeichnisstruktur bei, und befolgen Sie die Datenverarbeitungsanforderungen Ihrer Organisation. Entfernen Sie Anmeldeinformationen und andere Geheimnisse aus Dateien, die Sie freigeben.
Ziel vorbereiten
Verwenden Sie die Anforderungen in Ihrem generierten setup_instructions.md, anstatt Anforderungen aus einer anderen Konvertierung zu kopieren:
- Server- und Clientversionen. Bereiten Sie einen Azure Database for PostgreSQL flexiblen Server mit der erforderlichen PostgreSQL-Version vor. Die
psqlHauptversion des Clients muss mit der Konvertierungsserver-Hauptversion übereinstimmen, die im generierten Setuppaket aufgezeichnet wurde. Installieren Sie diesen Client auf dem Computer, auf dem Setup ausgeführt wird, und machen Sie ihn aufPATHverfügbar. Setup kann eine Datenbank auf Ihrem Server erstellen, stellt aber den Azure Server nicht bereit. - Zugriff auf Shell und Dateien. Verwenden Sie PowerShell 5.1 oder höher auf Windows oder Bash unter Linux oder macOS. Der Runner benötigt Schreibzugriff auf seine Verzeichnisse
logsundreports. - Netzwerkzugriff. Zulassen, dass der Setupcomputer eine Verbindung mit dem Azure Database for PostgreSQL Zielserver und dem PostgreSQL-Port herstellen kann.
- Erweiterungen. Überprüfen Sie die erforderlichen Erweiterungen, und fügen Sie der Zulassungsliste des Azure Database for PostgreSQL Zielservers vor der Bereitstellung unterstützte Erweiterungen hinzu. Siehe "Erweiterungen zulassen" in Azure Database for PostgreSQL.
- Berechtigungen. Verwenden Sie ein Konto mit den in den generierten Anweisungen angegebenen Datenbank-, Schema-, Objekterstellungs- und Erweiterungsinstallationsberechtigungen. Für den Modus „Neue Datenbank“ ist auch die Berechtigung zum Erstellen der Datenbank erforderlich.
- Authentifizierung. Verwenden Sie die ausgeblendete Kennwortaufforderung des Skripts, eine PostgreSQL-Kennwortdatei oder den genehmigten Geheimverwaltungsprozess Ihrer Organisation. Speichern Sie keine Kennwörter in Bereitstellungsskripten.
Stellen Sie sicher, dass der Client verfügbar ist:
psql --version
Die generierten Anweisungen spiegeln die Konvertierungsumgebung wider, einschließlich ihrer PostgreSQL-Version und Erweiterungsanforderungen. Überprüfen Sie alle Unterschiede zwischen den Zielumgebungen vor der Bereitstellung.
Datenbankmodus auswählen
Beide Runner unterstützen diese Modi:
| Modus | Behavior |
|---|---|
| Neue Datenbank | Der Standardmodus. Erstellt beim Bereitstellen eine Datenbank auf dem Azure Database for PostgreSQL Zielserver. Der angeforderte Datenbankname darf nicht bereits vorhanden sein. |
| Vorhandene Datenbank | Verwendet die angegebene Datenbank. Wenn die Zielschemas Objekte enthalten, erfordert das Setup eine explizite Bestätigung, bevor Sie fortfahren. |
Bei einer interaktiven Ausführung fordert das Skript zur Eingabe fehlender Host-, Benutzer- und Datenbankwerte auf. Überprüfen Sie vor der Bestätigung das angezeigte Ziel, den Datenbankmodus, die Schemata und den Vorgang.
Überprüfen der Bereitschaft ohne Bereitstellung
Öffnen Sie ein Terminal im generierten Setupverzeichnis. Wählen Sie den Befehl für Ihr Betriebssystem und den vorgesehenen Datenbankmodus aus:
| Datenbankmodus | Windows PowerShell | Linux oder macOS |
|---|---|---|
| Neue Datenbank | .\setup.ps1 -ValidateOnly |
bash setup.sh --validate-only |
| Vorhandene Datenbank | .\setup.ps1 -DatabaseMode existing -ValidateOnly |
bash setup.sh --database-mode existing --validate-only |
Der Modus „Nur überprüfen“ stellt eine Verbindung mit dem Server her und legt lokale Berichte und Protokolle ab. Die Zieldatenbank wird nicht erstellt, Erweiterungen installiert oder konvertierte Objekte bereitgestellt.
Die Bereitschaftsprüfungen umfassen Konnektivität, PostgreSQL-Version, Datenbankcodierung und Gebietsschemaeinstellungen, Berechtigungen, Zielschemabelegung und Erweiterungsverfügbarkeit. Überprüfen Sie Warnungen sowie blockierende Fehler.
Im Modus "Neue Datenbank" verwendet die Überprüfung die Wartungsdatenbank, da die Zieldatenbank noch nicht vorhanden ist. Prüfungen, für die die Zieldatenbank erforderlich ist, werden als übersprungen markiert. Ein erfolgreicher Validierungslauf ist keine Bestätigung dafür, dass diese übersprungenen Prüfungen bestanden wurden.
Wenn die Überprüfung erfolgreich abgeschlossen ist, sehen Sie sich validation_report_<timestamp>.md im Verzeichnis reports an. Beheben Sie gemeldete Probleme vor der Bereitstellung. Wenn die Überprüfung frühzeitig beendet wird, überprüfen Sie zuerst die Konsolenausgabe, und überprüfen Sie dann jedes Protokoll oder einen Bericht, der erstellt wurde.
Konvertierte Schemas bereitstellen
Verwenden Sie denselben Ziel- und Datenbankmodus, den Sie überprüft haben. Führen Sie im Setupverzeichnis den entsprechenden Befehl ohne --validate-only (PowerShell) oder -ValidateOnly (Bash) aus:
| Datenbankmodus | Windows PowerShell | Linux oder macOS |
|---|---|---|
| Neue Datenbank | .\setup.ps1 |
bash setup.sh |
| Vorhandene Datenbank | .\setup.ps1 -DatabaseMode existing |
bash setup.sh --database-mode existing |
Der Runner bereitet die Datenbank vor, überprüft die Bereitschaft, installiert erforderliche unterstützte Erweiterungen, führt die konvertierte Bereitstellungs-SQL aus und überprüft die resultierenden Objekte und Erweiterungen.
Überprüfen Sie die Bereitstellungs-SQL, bevor Sie ein nicht leeres Ziel genehmigen, da vorhandene Objekte geändert werden können.
Important
Beide Datenbankmodi können nach einem Fehler Änderungen zurücklassen. Im Modus "Neue Datenbank" erstellt Setup die Datenbank vor den Zielbereitschaftsprüfungen, sodass eine fehlerhafte Überprüfung dazu führen kann, dass diese Datenbank bestehen bleibt. Die Bereitstellungs-SQL kann auch Änderungen in separaten Transaktionen anwenden. Überprüfen Sie den Zielstatus, bevor Sie es erneut versuchen; gehen Sie nicht davon aus, dass eine fehlgeschlagene Bereitstellung frühere Änderungen zurückgesetzt hat.
Verwenden Sie setup_instructions.md für optionale Port-, TLS-, Gebietsschema- und Automatisierungsparameter. Geben Sie für eine nicht interaktive Ausführung vorab die Host-, Benutzer-, Datenbank- und Authentifizierungsdetails an. Ein nicht leeres vorhandenes Ziel erfordert auch eine explizite Bestätigung über -AllowNonEmptyExisting unter Windows oder --allow-nonempty-existing unter Linux oder macOS.
Bereitstellungsergebnisse überprüfen
Lesen Sie die Bereitstellungsergebnisse, bevor Sie mit der Daten- oder Anwendungsüberprüfung fortfahren. Ein Konvertierungsstatus allein bestätigt die Bereitstellung für dieses Ziel nicht.
| Verzeichnis | Output | Was zu überprüfen ist |
|---|---|---|
reports |
deployment_report_<timestamp>.md |
Bereitgestellte und nicht bereitgestellte Summen, Erweiterungsergebnisse, Ergebnisse nach Objekttyp und Gründe, warum Objekte nicht bereitgestellt wurden. |
reports |
verification_<timestamp>.csv |
Detaillierte Ergebnisse der Objektüberprüfung. |
reports |
extensions_<timestamp>.csv |
Detaillierte Erweiterungsergebnisse. |
reports |
preflight_<timestamp>.csv |
Bereitschaftsüberprüfungsergebnisse. |
logs |
setup_<timestamp>.log |
Ausführungsmeldungen und Fehler. |
Validierungsläufe nur zur Überprüfung erzeugen einen Überprüfungsbericht anstelle eines Bereitstellungsberichts. Ein frühzeitiger Fehler, z. B. ein Dateizugriffs- oder Shellversionsproblem, kann nur die Konsolenausgabe verlassen.
Verwenden Sie den Ausgangscode des Läufers zusammen mit den folgenden Ausgaben:
| Exitcode | Dies bedeutet |
|---|---|
0 |
Der angeforderte Vorgang war erfolgreich. Die Überprüfung der Bereitschaft ist nur für die Überprüfung ohne Bereitstellung erfolgreich. |
1 |
Eingabe-, Client- oder Benutzerabbruchfehler. |
2 |
Fehler bei Setuppaket/Konfiguration, Verbindung, Datenbank, Bereitschaftsprüfung oder Erweiterungsinstallation. |
3 |
Bereitstellung, Überprüfung, Berichterstellung oder unerwarteter Läuferfehler. |
4 |
Bei der Überprüfung wurden Objekte oder Erweiterungen identifiziert, die nicht bereitgestellt wurden. |
Setzen Sie die Automatisierung nur für Exitcode 0fort. Überprüfen Sie bei jedem anderen Code die verfügbaren Ausgaben, und beheben Sie die gemeldeten Probleme, bevor Sie fortfahren.
Überprüfen des bereitgestellten Schemas
Erfolgreiche Einrichtung stellt keine verhaltensbezogene Äquivalenz mit Oracle oder Produktionsbereitschaft her. Testen Sie unabhängig die Datenverarbeitung, Abhängigkeiten, Geschäftslogik und Anwendungsverhalten in der Zielumgebung.
Überprüfen Sie alle Objekte oder Erweiterungen, die nicht bereitgestellt wurden, und schließen Sie die Korrektur ab. Wenden Sie separat verwaltete Sicherheitskonfiguration an, und widerrufen Sie temporäre Setupberechtigungen, wenn sie nicht mehr erforderlich sind.