Freigeben über


Migrationsleitfaden: SQL Server zu Azure SQL-Datenbank

Gilt für: SQL Server Azure SQL-Datenbank

In diesem Leitfaden erfahren Sie, wie Sie Ihre SQL Server-Instanz zu Azure SQL-Datenbank migrieren.

Führen Sie die Schritte zur Vorbereitung der Migration aus, bevor Sie fortfahren.

Migrieren

Nachdem Sie die Schritte der Prämigrationsphase abgeschlossen haben, können Sie sich der Schema- und Datenmigration widmen.

Migrieren Sie Ihre Daten mithilfe der gewählten Migrationsmethode.

Migrieren mit der Azure SQL-Migrationserweiterung für Azure Data Studio

Um eine Offlinemigration unter Verwendung von Azure Data Studio durchzuführen, befolgen Sie die folgenden allgemeinen Schritte. Ein ausführliches Schritt-für-Schritt-Tutorial finden Sie unter Tutorial: Migration von SQL Server zu Azure SQL-Datenbank (offline).

  1. Laden Sie Azure Data Studio und die Azure SQL-Migrationserweiterung herunter, und installieren Sie diese Komponenten.
  2. Starten Sie den Migrations-Assistenten zum Migrieren zu Azure SQL in der Erweiterung in Azure Data Studio.
  3. Wählen Sie Datenbanken für die Bewertung aus, und zeigen Sie die Migrationsbereitschaft oder Probleme (falls vorhanden) an. Erfassen Sie außerdem Leistungsdaten, und erhalten Sie Azure-Empfehlungen für die richtige Größe.
  4. Wählen Sie Ihr Azure-Konto und die Azure SQL-Datenbank-Zielinstanz aus Ihrem Abonnement aus.
  5. Wählen Sie die Liste der zu migrierenden Tabellen aus.
  6. Erstellen Sie eine neue Azure Database Migration Service-Instanz mithilfe des Assistenten in Azure Data Studio. Wenn Sie zuvor eine Azure Database Migration Service-Instanz mit Azure Data Studio erstellt haben, können Sie diese wiederverwenden, wenn gewünscht.
  7. Optional: Wenn sich Ihre Sicherungen in einer lokalen Netzwerkfreigabe befinden, laden Sie die selbstgehostete Integration Runtime auf einen Computer herunter, der eine Verbindung mit der SQL Server-Quellinstanz und dem Speicherort mit den Sicherungsdateien herstellen kann.
  8. Starten Sie die Datenbankmigration, und überwachen Sie den Fortschritt in Azure Data Studio. Sie können den Fortschritt auch unter der Azure Database Migration Service-Ressource im Azure-Portal überwachen.

Datensynchronisierung und Übernahme

Wenn Migrationsoptionen angewendet werden, die Datenänderungen kontinuierlich von der Quelle zum Ziel replizieren und/oder synchronisieren, werden die Quelldaten und das Quellschema ggf. geändert und weichen vom Ziel ab. Sorgen Sie während der Datensynchronisierung dafür, dass alle Änderungen an der Quelle erfasst und während des Migrationsprozesses auf das Ziel angewendet werden.

Nachdem Sie sich vergewissert haben, dass die Daten in der Quelle und im Ziel identisch sind, können Sie die Migration per Cutover von der Quell- zur Zielumgebung durchführen. Sie sollten den Übernahmeprozess mit den Geschäfts- und Anwendungsteams planen, um Unterbrechungen so geringfügig wie möglich zu halten und die Geschäftskontinuität nicht zu beeinträchtigen.

Wichtig

Ausführliche Informationen zu den konkreten Schritte beim Durchführen eines Cutover im Rahmen von Migrationen mittels DMS finden Sie im Tutorial: Migrieren von SQL Server zu Azure SQL-Datenbank mithilfe von DMS (klassisch).

Migrieren mithilfe der Transaktionsreplikation

Wenn Sie es sich nicht leisten können, Ihre SQL Server-Datenbank während der Migration aus der Produktion herauszunehmen, können Sie die SQL Server-Transaktionsreplikation als Migrationslösung verwenden. Die Verwendung dieser Methode setzt voraus, dass die Quelldatenbank die Anforderungen für die Transaktionsreplikation erfüllt und mit Azure SQL-Datenbank kompatibel ist. Weitere Informationen zur SQL-Replikation mit Verfügbarkeitsgruppen finden Sie unter Konfigurieren der Replikation mit Always On-Verfügbarkeitsgruppen.

Zur Verwendung dieser Lösung können Sie Ihre Azure SQL-Datenbank-Instanz als Abonnent der SQL Server-Instanz konfigurieren, die Sie migrieren möchten. Der Verteiler der Transaktionsreplikation synchronisiert die Daten aus der zu synchronisierenden Datenbank (Verlegerdatenbank), während weiterhin neue Transaktionen erfolgen.

Bei der Transaktionsreplikation werden alle Änderungen an Daten oder Schema in Ihrer Azure SQL-Datenbank-Instanz angezeigt. Wenn die Synchronisierung abgeschlossen ist, und Sie zur Migration bereit sind, ändern Sie die Verbindungszeichenfolge Ihrer Anwendungen so, dass sie auf Ihre Datenbank verweist. Sobald die Transaktionsreplikation alle verbleibenden Änderungen an Ihrer Quelldatenbank abgearbeitet hat und alle Anwendungen auf Azure SQL-Datenbank verweisen, können Sie die Transaktionsreplikation deinstallieren. Ihre Azure SQL-Datenbank-Instanz ist jetzt Ihr Produktionssystem.

Tipp

Mit der Transaktionsreplikation können Sie auch einen Teil Ihrer Quelldatenbank migrieren. Die Veröffentlichung, die Sie zu Azure SQL-Datenbank replizieren, kann auf eine Teilmenge der Tabellen in der replizierten Datenbank beschränkt werden. Für jede replizierte Tabelle können Sie die Daten auf eine Teilmenge der Zeilen bzw. eine Teilmenge der Spalten beschränken.

Transaktionsreplikationsworkflow

Wichtig

Verwenden Sie die neueste Version von SQL Server Management Studio, damit Ihr System mit den Updates von Azure und SQL-Datenbank synchronisiert bleibt. Ältere Versionen von SQL Server Management Studio können SQL-Datenbank nicht als Abonnenten einrichten. Hier können Sie die aktuelle Version von SQL Server Management Studio herunterladen.

Schritt Methode
Einrichten der Verteilung SQL Server Management Studio | Transact-SQL
Erstellen der Veröffentlichung SQL Server Management Studio | Transact-SQL
Erstellen des Abonnements SQL Server Management Studio | Transact-SQL

Einige Tipps und Informationen zu den Unterschieden, die beim Migrieren zu SQL-Datenbank zu beachten sind

  • Verwendung eines lokalen Verteilers
    • Dadurch wird die Leistung des Servers beeinträchtigt.
    • Falls die Leistungsbeeinträchtigung nicht akzeptabel ist, können Sie einen anderen Server verwenden. Dies erhöht jedoch die Komplexität der Verwaltung und Administration.
  • Achten Sie bei der Wahl eines Momentaufnahmeordners darauf, dass der Ordner groß genug ist, um darin eine BCP-Datei jeder zu replizierenden Tabelle zu speichern.
  • Bei der Momentaufnahmenerstellung werden die betreffenden Tabellen bis zum Abschluss des Vorgangs gesperrt. Planen Sie die Momentaufnahme daher entsprechend.
  • In Azure SQL-Datenbank werden nur Pushabonnements unterstützt. Sie können nur Abonnenten aus der Quelldatenbank hinzufügen.

Empfehlungen zur Migration

Zum Beschleunigen der Migration zu Azure SQL-Datenbank sollten Sie die folgenden Empfehlungen beachten:

Ressourcenkonflikte Empfehlung
Quelle (in der Regel lokal) Die primären Engpässe bei der Migration von der Quelle sind die E/A-Leistung und die Latenz der Datendatei, die sorgfältig überwacht werden müssen. Basierend auf der E/A-Leistung und der Latenz der Datendatei und abhängig davon, ob es sich um eine VM oder einen physischen Server handelt, müssen Sie sich an eine*n Speicheradministrator*in wenden, um Optionen zur Behebung der Engpässe untersuchen.
Ziel (Azure SQL-Datenbank) Die größten Einschränkungsfaktoren sind die Protokollgenerierungsrate und die Latenz für die Datenbank-Protokolldatei. Bei Azure SQL-Datenbank können Sie maximal eine Protokollgenerierungsrate von 96 MB/s erzielen. Um die Migration zu beschleunigen, können Sie die Azure SQL-Zieldatenbank auf „Unternehmenskritisch“ (Gen5 mit 8 virtuellen Kernen) hochskalieren, um die maximale Protokollgenerierungsrate von 96 MB/s zu erzielen und außerdem die Latenz für Protokolldateien zu verringern. Die Dienstebene Hyperscale bietet unabhängig vom ausgewählten Servicelevel eine Protokollrate von 100 MB/s.
Network Die benötigte Netzwerkbandbreite ist gleich der maximalen Protokollerfassungsrate von 96 MB/s (768 MBit/s). Abhängig von der Netzwerkkonnektivität zwischen Ihrem lokalen Rechenzentrum und Azure müssen Sie überprüfen, ob die Bandbreite Ihres Netzwerks (in der Regel Azure ExpressRoute) die maximale Protokollerfassungsrate unterstützen kann.

Diese Empfehlungen sind auch für eine ideale Leistung während des Migrationsprozesses hilfreich.

  • Wählen Sie im Rahmen Ihres verfügbaren Budgets die höchste Dienstebene und Computegröße, um die Übertragungsleistung zu maximieren. Nach Abschluss der Migration können Sie zentral herunterskalieren, um Geld zu sparen.
  • Wenn Sie BACPAC-Dateien verwenden, minimieren Sie die Entfernung zwischen Ihrer BACPAC-Datei und dem Zielrechenzentrum.
  • Deaktivieren Sie die automatische Aktualisierung und die automatische Statistikerstellung während der Migration.
  • Partitionieren Sie Tabellen und Indizes.
  • Löschen Sie indizierte Sichten, und erstellen Sie sie nach Abschluss des Vorgangs erneut.
  • Verschieben Sie selten abgefragte Verlaufsdaten in eine andere Datenbank, und migrieren Sie die Verlaufsdaten in eine separate Azure SQL-Datenbank-Instanz. Die Verlaufsdaten können dann mithilfe elastischer Abfragen abgefragt werden.

Nach der Migration

Nach dem erfolgreichen Abschluss der Migrationsphase sind einige weitere Schritte erforderlich, um sicherzustellen, dass alles so reibungslos und effizient wie möglich funktioniert.

Die Postmigrationsphase ist unerlässlich, um Datengenauigkeitsprobleme abzustimmen, die Vollständigkeit zu bestätigen und Leistungsprobleme der Workload zu beheben.

Statistikaktualisierung

Aktualisieren Sie die Statistik mit einem vollständigen Scan nach Abschluss der Migration.

Korrigieren von Anwendungen

Wenn die Daten in die Zielumgebung migriert wurden, müssen alle Anwendungen, die zuvor die Quelle verwendet haben, beginnen das Ziel zu verwenden. Hierfür sind in einigen Fällen Änderungen an den Anwendungen erforderlich.

Durchführen von Tests

Das Testvorgehen für die Datenbankmigration umfasst die folgenden Aktivitäten:

  1. Entwickeln von Validierungstests: Für das Testen der Datenbankmigration müssen Sie SQL-Abfragen verwenden. Sie müssen die Validierungsabfragen erstellen, die für die Quell- und die Zieldatenbank ausgeführt werden sollen. Ihre Validierungsabfragen sollten den von Ihnen definierten Bereich abdecken.
  2. Einrichten der Testumgebung: Die Testumgebung sollte eine Kopie der Quelldatenbank und der Zieldatenbank enthalten. Stellen Sie sicher, dass Sie die Testumgebung isolieren.
  3. Ausführen der Validierungstests: Führen Sie die Validierungstests für die Quelle und das Ziel aus, und analysieren Sie anschließend die Ergebnisse.
  4. Ausführen von Leistungstests: Führen Sie Leistungstests für die Quelle und das Ziel aus, und analysieren und vergleichen Sie anschließend die Ergebnisse.

Verwenden erweiterter Funktionen

Sie sollten unbedingt die erweiterten cloudbasierten Features von Azure SQL-Datenbank nutzen, z. B. die integrierte Hochverfügbarkeit, die Bedrohungserkennung und die Überwachung und Optimierung Ihrer Workloads.

Einige SQL Server-Features sind nur verfügbar, wenn der Datenbank-Kompatibilitätsgrad in den neuesten geändert wurde.

Weitere Informationen finden Sie unter Verwalten von Azure SQL-Datenbank nach der Migration.

Beheben von Kompatibilitätsproblemen bei der Datenbankmigration

Es können verschiedenste Kompatibilitätsprobleme auftreten. Diese hängen von der SQL Server-Version in der Quelldatenbank und der Komplexität der Datenbank ab, die Sie migrieren. Ältere Versionen von SQL Server weisen mehr Kompatibilitätsprobleme auf. Verwenden Sie die folgenden Ressourcen und eine gezielte Internetsuche mithilfe Ihrer bevorzugten Suchmaschine:

Wichtig

Eine verwaltete Azure SQL-Instanz ermöglicht die Migration einer vorhandenen SQL Server-Instanz und deren Datenbanken mit minimalen oder keinen Kompatibilitätsproblemen. Weitere Informationen finden Sie unter Was ist Azure SQL Managed Instance?.