Migrationsleitfaden: SQL Server zu SQL Server auf Azure Virtual Machines

Gilt für:SQL Server auf Azure-VM

In diesem Leitfaden wird behandelt, wie Sie Ihre Benutzerdatenbanken ermitteln, bewerten und von SQL Server zu einer SQL Server-Instanz in Azure Virtual Machines migrieren, indem Sie Tools und Techniken basierend auf Ihren Anforderungen verwenden.

Sie können SQL Server-Instanzen migrieren, die lokal oder auf folgenden Plattformen ausgeführt werden:

  • SQL Server auf virtuellen Computern (VMs)
  • Amazon Web Services (AWS) EC2
  • Amazon Relational Database Service (AWS RDS)
  • Compute Engine (Google Cloud Platform – GCP)

Informationen zu anderen Migrationsstrategien finden Sie in der Übersicht zur Migration von SQL Server-VMs. Weitere Migrationsleitfäden finden Sie in den Leitfäden zur Azure-Datenbankmigration.

Diagram that shows a migration process flow.

Voraussetzungen

Für die Migration zu SQL Server auf Azure-VMs benötigen Sie die folgenden Ressourcen:

Vor der Migration

Bevor Sie mit der Migration beginnen, müssen Sie die Topologie Ihrer SQL-Umgebung ermitteln und die Umsetzbarkeit der gewünschten Migrationsstrategie bewerten.

Entdecken

Azure Migrate bewertet die Umsetzbarkeit der Migration auf lokalen Computern, führt eine leistungsbasierte Größenanpassung durch und erstellt eine Kostenschätzungen für die Ausführung in lokalen Umgebungen. Zur Planung der Migration können Sie Azure Migrate einsetzen, um vorhandene Datenquellen und Details zu den Features zu ermitteln, die Ihre SQL Server-Instanzen verwenden. Bei diesem Prozess wird das Netzwerk gescannt, um alle SQL Server-Instanzen Ihrer Organisation sowie die verwendeten Versionen und Features zu ermitteln.

Wichtig

Berücksichtigen Sie die Leistungsrichtlinien für SQL Server auf Azure-VMs, wenn Sie eine Azure-Ziel-VM für Ihre SQL Server-Instanz auswählen.

Weitere Informationen zu Ermittlungstools finden Sie unter Dienste und Tools für Datenmigrationsszenarien.

Bewerten

Bei der Migration von lokalem SQL Server zu SQL Server in Azure Virtual Machines ist es unwahrscheinlich, dass Kompatibilitäts- oder Funktionsparitätsprobleme auftreten, wenn die Quell- und Zielversionen von SQL Server identisch sind. Wenn Sie Ihre SQL Server-Version nicht upgraden, können Sie diesen Schritt überspringen und mit dem Abschnitt Migrieren fortfahren.

Vor der Migration ist es immer noch eine bewährte Methode, eine Bewertung Ihrer SQL Server-Datenbanken durchzuführen, um Migrationsblocker (falls vorhanden) zu identifizieren. Die Azure SQL-Migrationserweiterung für Azure Data Studio erledigt dies vor der Migration.

Hinweis

Wenn Sie den gesamten SQL Server-Datenbestand im großen Stil in VMware bewerten, verwenden Sie Azure Migrate, um Azure SQL-Bereitstellungsempfehlungen, Zielgrößen und monatliche Schätzungen zu erhalten.

Bewerten von Benutzerdatenbanken

Die Azure SQL-Migrationserweiterung für Azure Data Studio bietet eine nahtlose, assistentenbasierte Umgebung, in der Sie Ihre lokalen SQL Server-Datenbanken bewerten, Azure-Empfehlungen erhalten und die Datenbanken zu SQL Server in Azure Virtual Machines migrieren können. Neben dem Hervorheben von Migrationsblockern oder Warnungen enthält die Erweiterung auch eine Option für Azure-Empfehlungen, um die Leistungsdaten Ihrer Datenbanken zu erfassen und eine geeignete Größe von SQL Server in Azure Virtual Machines zu empfehlen, um die Leistungsanforderungen Ihrer Workload zu erfüllen (zum günstigsten Preis).

Weitere Informationen zu Azure-Empfehlungen finden Sie unter Abrufen der richtigen Azure-Größenempfehlung für Ihre lokale SQL Server-Datenbanken.

Wichtig

Um Datenbanken mithilfe der Azure SQL-Migrationserweiterung zu bewerten, stellen Sie sicher, dass die Anmeldungen, die zum Herstellen der Verbindung mit der SQL Server-Quellinstanz verwendet werden, Mitglieder der sysadmin-Serverrolle sind oder über die Berechtigung „Server steuern“ verfügen.

Verwenden Sie bei einem Versionsupgrade den Datenmigrations-Assistenten, um lokale SQL Server-Instanzen zu bewerten, wenn Sie ein Upgrade auf eine Instanz von SQL Server in Azure Virtual Machines mit einer höheren Version durchführen, um die Lücken zwischen den Quell- und Zielversionen zu verstehen.

Bewerten der Anwendungen

In der Regel greift eine Anwendungsschicht auf Benutzerdatenbanken zu, um Daten zu speichern und zu ändern. Datenmigrations-Assistent kann die Datenzugriffsschicht einer Anwendung auf zwei Arten bewerten:

Verwenden Sie während der Bewertung von Benutzerdatenbanken Datenmigrations-Assistent, um erfasste Ablaufverfolgungsdateien oder die Toolkit-Dateien für die Datenzugriffsmigration zu importieren.

Skalierbare Bewertungen

Wenn Sie mehrere Server haben, die Azure-Bereitschaftsbewertung erfordern, können Sie den Prozess mithilfe von Skripts mit einer der folgenden Optionen automatisieren. Weitere Informationen zur Verwendung von Skripts finden Sie unter Migrieren von Datenbanken im großen Stil mithilfe von Automatisierung.

Wenn Sie zusammenfassende Berichte für große Bestände benötigen, können DMA-Bewertungen auch in Azure Migrate konsolidiert werden.

Upgrade von Datenbanken mit dem Datenmigrations-Assistenten

Für das Upgradeszenario haben Sie möglicherweise eine Reihe von Empfehlungen, um sicherzustellen, dass Ihre Benutzerdatenbanken nach dem Upgrade ordnungsgemäße Leistung erbringen und funktionieren. Datenmigrations-Assistent liefert Details zu den betroffenen Objekten und Ressourcen zur Behebung der einzelnen Probleme. Stellen Sie sicher, dass Sie alle wichtigen Änderungen und Verhaltensänderungen beheben, bevor Sie das Produktionsupgrade starten.

Hinsichtlich veralteter Features können Sie sich dafür entscheiden, Ihre Benutzerdatenbanken im ursprünglichen Kompatibilitätsmodus auszuführen, um diese Änderungen zu vermeiden und die Migration zu beschleunigen. Sie können die Datenbankkompatibilität jedoch nicht upgraden, bis die Probleme mit veralteten Elementen behoben wurden.

Achtung

Nicht alle SQL Server-Versionen unterstützen sämtliche Kompatibilitätsmodi. Vergewissern Sie sich, dass die SQL Server-Zielversion den ausgewählten Datenbank-Kompatibilitätsgrad unterstützt. SQL Server 2019 unterstützt beispielsweise keine Datenbanken mit dem Kompatibilitätsgrad 90 (entspricht SQL Server 2005). Für diese Datenbanken müsste mindestens ein Upgrade auf Kompatibilitätsgrad 100 durchgeführt werden.

Migrieren

Nachdem Sie die Schritte der Prämigrationsphase abgeschlossen haben, sind Sie bereit für die Migration der Benutzerdatenbanken und Komponenten. Migrieren Sie Ihre Datenbanken mithilfe Ihrer bevorzugten Migrationsmethode.

In den folgenden Abschnitten finden Sie Optionen für die Durchführung einer Migration nach Reihenfolge:

Migrieren von Datenbanken mit der Azure SQL-Migrationserweiterung für Azure Data Studio (minimale Ausfallzeit)

Um eine Migration mit minimaler Ausfallzeit unter Verwendung von Azure Data Studio durchzuführen, befolgen Sie die folgenden allgemeinen Schritte. Eine detailliertes Schritt-für-Schritt-Tutorial finden Sie unter Migration von SQL Server zu SQL Server in Azure Virtual Machine online mit Azure Data Studio:

  1. Laden Sie Azure Data Studio und die Azure SQL-Migrationserweiterung herunter, und installieren Sie diese Komponenten.
  2. Starten Sie den 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 Ihre SQL Server-Zielinstanz auf dem Azure-Computer aus Ihrem Abonnement aus.
  5. Wählen Sie den Speicherort Ihrer Datenbanksicherungen aus. Ihre Datenbanksicherungen können sich entweder in einer lokalen Netzwerkfreigabe oder in einem Azure Blob Storage-Container befinden.
  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.
  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.
  9. Schließen Sie die Übernahme ab.
    1. Beenden Sie alle eingehenden Transaktionen in der Quelldatenbank.
    2. Nehmen Sie Änderungen an der Anwendungskonfiguration vor, um auf die Zieldatenbank in SQL Server auf Azure Virtual Machines zu verweisen.
    3. Nehmen Sie ggf. Sicherungen des Protokollfragments für die Quelldatenbank am angegebenen Sicherungsspeicherort vor.
    4. Stellen Sie sicher, dass alle Datenbanksicherungen auf der Seite mit den Überwachungsdetails den Status Wiederhergestellt aufweisen.
    5. Wählen Sie auf der Seite mit den Überwachungsdetails die Option Übernahme abschließen aus.

Sichern und Wiederherstellen

Befolgen Sie diese Schritte, wen Sie eine gewöhnliche Migration mit Sicherung und Wiederherstellung durchführen möchten:

  1. Richten Sie die Konnektivität von SQL Server auf Azure-VMs Ihren Anforderungen entsprechend ein. Weitere Informationen finden Sie unter Verbinden mit SQL Server-Instanzen auf virtuellen Azure-Maschinen (Ressourcen-Manager).
  2. Halten Sie alle Anwendungen an, die für die Migration vorgesehene Datenbanken verwenden.
  3. Sorgen Sie mit dem Einzelbenutzermodus dafür, dass Benutzerdatenbanken inaktiv sind.
  4. Führen Sie eine vollständige Datenbanksicherung an einem lokalen Speicherort durch.
  5. Kopieren Sie Ihre lokalen Sicherungsdateien auf Ihre VM, indem Sie einen Remotedesktop, Azure Data Explorer oder das Befehlszeilentool AzCopy verwenden. (Es werden mehr als 2 TB Sicherungen empfohlen.)
  6. Stellen Sie die vollständigen Datenbanksicherungen in SQL Server auf der Azure-VM wieder her.

Trennen und Anfügen über eine URL

Trennen Sie Ihre Datenbank und Protokolldateien, und übertragen Sie diese in Azure Blob Storage. Fügen Sie anschließend die Datenbank über die URL auf Ihrem virtuellen Azure-Computer an. Verwenden Sie diese Methode, wenn sich die physischen Datenbankdateien in Blob Storage befinden sollen, was bei sehr großen Datenbanken nützlich ist. Verwenden Sie die folgenden allgemeinen Schritte zum Migrieren einer Benutzerdatenbank anhand dieser manuellen Methode:

  1. Trennen Sie die Datenbankdateien von der lokalen Datenbankinstanz.
  2. Kopieren Sie die getrennten Datenbankdateien in Azure Blob Storage mit dem Befehlszeilenprogramm AZCopy.
  3. Fügen Sie die Datenbankdateien über die Azure-URL der SQL Server-Instanz in der Azure-VM an.

Konvertieren in eine VM, Hochladen auf eine URL und Bereitstellen als neue VM

Verwenden Sie diese Methode, um alle System- und Benutzerdatenbanken in einer lokalen SQL Server-Instanz zu einem virtuellen Computer zu migrieren. Verwenden Sie die folgenden allgemeinen Schritte, um eine vollständige SQL Server-Instanz mit dieser manuellen Methode zu migrieren:

  1. Konvertieren Sie physische oder virtuelle Computer in Hyper-V-VHDs.
  2. Laden Sie VHD-Dateien mithilfe des Cmdlets Add-AzureVHDin den Azure-Speicher hoch.
  3. Stellen Sie einen neuen virtuellen Computer mithilfe der hochgeladenen VHD bereit.

Hinweis

Um eine gesamte Anwendung zu migrieren, sollten Sie die Verwendung von Azure Site Recovery erwägen.

Protokollversand

Der Protokollversand repliziert Transaktionsprotokolldateien von lokalen Speicherorten auf eine Instanz von SQL Server auf einer Azure-VM. Durch diese Option entsteht nur eine minimale Downtime während des Failovers, und es wird ein geringerer Konfigurationsaufwand bei der Einrichtung einer Always On-Verfügbarkeitsgruppe benötigt.

Weitere Informationen finden Sie unter Protokollversandtabellen und gespeicherte Prozeduren.

Versenden einer Festplatte

Mithilfe der Methode Windows Import-Export-Dienst können Sie große Mengen von Dateidaten in Azure Blob Storage übertragen, beispielsweise, wenn das Hochladen über das Netzwerk zu kostenintensiv oder nicht machbar ist. Mit diesem Dienst versenden Sie Festplatten mit den Daten an ein Azure-Rechenzentrum, in dem die Daten in Ihr Speicherkonto hochgeladen werden.

Migrieren von Objekten außerhalb von Benutzerdatenbanken

Möglicherweise werden zusätzliche SQL Server-Objekte für den reibungslosen Betrieb Ihrer Benutzerdatenbanken nach der Migration benötigt.

Die folgende Tabelle enthält Komponenten und empfohlene Migrationsmethoden, die vor oder nach der Migration Ihrer Benutzerdatenbanken anwendbar sind:

Feature Komponente Migrationsmethoden
Datenbanken Modell Skript mit SQL Server Management Studio
Die tempdb -Datenbank. Verschieben Sie tempdb auf einen temporären SSD-Datenträger einer Azure-VM, um die bestmögliche Leistung zu erzielen. Wählen Sie eine VM-Größe mit ausreichend lokalem SSD-Speicher für tempdb.
Benutzerdatenbanken mit FileStream Wenden Sie die Sicherungs- und Wiederherstellungsmethode für die Migration an. Datenmigrations-Assistent unterstützt keine Datenbanken mit FileStream.
Security SQL Server- und Windows-Anmeldungen Verwenden Sie Datenmigrations-Assistent, um Benutzeranmeldungen zu migrieren.
SQL Server-Rollen Skript mit SQL Server Management Studio
Kryptografieanbieter Eine Konvertierung wird empfohlen, damit Sie Azure Key Vault verwenden können. Hierfür wird der Ressourcenanbieter Microsoft.SqlVirtualMachine verwendet.
Serverobjekte Sicherungsmedien Ersetzen Sie die Datenbanksicherung durch Azure Backup oder schreiben Sie Sicherungen in Azure Storage (SQL Server 2012 SP1 CU2 und höher). Hierfür wird der Ressourcenanbieter Microsoft.SqlVirtualMachine verwendet.
Verbindungsserver Skript mit SQL Server Management Studio
Servertrigger Skript mit SQL Server Management Studio
Replikation Lokale Veröffentlichungen Skript mit SQL Server Management Studio
Lokale Abonnenten Skript mit SQL Server Management Studio
PolyBase PolyBase Skript mit SQL Server Management Studio
Verwaltung Datenbank-E-Mail Skript mit SQL Server Management Studio
SQL Server-Agent Aufträge Skript mit SQL Server Management Studio
Alerts Skript mit SQL Server Management Studio
Operatoren Skript mit SQL Server Management Studio
Proxys Skript mit SQL Server Management Studio
Betriebssystem Dateien, Dateifreigaben Notieren Sie alle zusätzlichen Dateien oder Dateifreigaben, die von Ihren SQL Server-Instanzen verwendet werden, und replizieren Sie diese auf der Azure-Ziel-VM.

Nach der Migration

Nach erfolgreichem Abschluss der Migrationsphase müssen einige Schritte erledigt werden, um sicherzustellen, dass alles so reibungslos und effizient wie möglich funktioniert.

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.

Wenden Sie alle von Datenmigrations-Assistent empfohlenen Fixes auf Benutzer Datenbanken an. Sie müssen eine Skripterstellung für diese Korrekturen durch Schreiben, um Konsistenz und Automatisierung zu gewährleisten.

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. Erstellen Sie Validierungsabfragen, die für die Quell- und die Zieldatenbanken 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.

Tipp

Verwenden Sie den Assistenten für Datenbankexperimente (DEA), um die Leistung der SQL Server-Zielinstanz zu bewerten.

Optimieren

Die Phase nach der Migration ist entscheidend für den Abgleich von Problemen mit der Datengenauigkeit, die Überprüfung der Vollständigkeit und das Beheben von Leistungsproblemen der Arbeitsauslastung.

Hier finden Sie weitere Informationen zu diesen Problemen und den Behebungsschritten:

Nächste Schritte

Die Verfügbarkeit der mit SQL Server kompatiblen Dienste finden Sie auf der Seite für die globale Azure-Infrastruktur.

Eine Übersicht über die Dienste und Tools von Microsoft und Drittanbietern, mit denen Sie verschiedene Datenbank- und Datenmigrationsszenarien sowie Spezialaufgaben ausführen können, finden Sie unter Dienste und Tools für die Datenmigration.

Hier finden Sie weitere Informationen zu Azure SQL:

Weitere Informationen zum Framework und zum Einführungszyklus von Cloudmigrationen finden Sie unter:

Hier finden Sie Informationen zur Lizenzierung:

Informationen zum Bewerten der Anwendungszugriffsebene finden Sie unter Data Access Migration Toolkit (Vorschauversion).

Informationen zum Ausführen von A/B-Tests auf Datenzugriffsebene finden Sie unter Überblick über den Assistenten für Datenbankexperimente.