Planen und Testen des Upgradeplans für die Datenbank-Engine

Gilt für:SQL Server – nur Windows

Für eine erfolgreiches Upgrade von SQL Server ist unabhängig von der Herangehensweise eine angemessene Planung erforderlich.

Anmerkungen zu dieser Version und bekannte Upgradeprobleme

Bevor Sie auf Datenbank-Engine aktualisieren, sollten Sie sich folgende Artikel anschauen:

Planungsprüfliste zur Vorbereitung des Upgrades

Lesen Sie vor dem Datenbank-Engine-Upgrade die folgende Prüfliste und die dazugehörigen Artikel. Der Inhalt dieser Artikel gilt unabhängig von der Upgrademethode für alle Upgrades und hilft Ihnen dabei, die am besten geeignete Upgrademethode zu bestimmen: Paralleles Upgrade, Upgrade durch Neuinstallation oder direktes Upgrade. So kann es beispielsweise geschehen, dass Sie kein direktes oder paralleles Upgrade durchführen können, wenn Sie das Betriebssystem, SQL Server 2005 oder eine 32-Bit-Version von SQL Server upgraden. Eine Entscheidungsstruktur finden Sie unter Choose a Database Engine Upgrade Method.

  • Hardware- und Softwareanforderungen: Lesen Sie das Thema zu den Hardware- und Softwareanforderungen für die Installation von SQL Server. Diese Anforderungen finden Sie unter: Hardware- und Softwareanforderungen für die Installation von SQL Server. Es gehört zu jedem Upgradeplanungszyklus, ein Upgrade des Betriebssystems und der Hardware in Betracht zu ziehen, da neuere Hardware schneller ist und den Lizenzbedarf aufgrund der geringeren Anzahl von Prozessoren oder aufgrund der Datenbank- und Serverkonsolidierung reduzieren kann. Diese Art von Hardware- und Softwareänderungen wirken sich darauf aus, welche Upgrademethode Sie wählen.

  • Aktuelle Umgebung: Überprüfen Sie die aktuelle Umgebung, um die verwendeten SQL Server-Komponenten und die mit Ihrer Umgebung verbundenen Clients zu verstehen.

    • Client-Anbieter: Obwohl ein Upgrade kein gleichzeitiges Update des Anbieters für alle Ihre Clients erfordert, steht es Ihnen frei, dies zu tun. Wenn Sie ein Upgrade von SQL Server 2014 (12.x) oder älter durchführen, erfordern die folgenden SQL Server 2016 (13.x)-Features entweder einen aktualisierten Anbieter für jeden Client oder einen Anbieter, der zusätzliche Funktionen bereitstellt:

    • „Immer verschlüsselt“ (Datenbank-Engine)

    • Stretch Database

      Wichtig

      Stretch Database ist in SQL Server 2022 (16.x) und der Azure SQL-Datenbank veraltet. Diese Funktion wird in einer zukünftigen Version der Datenbank-Engine entfernt. Nutzen Sie diese Funktionen bei Neuentwicklungen nicht mehr, und planen Sie die Änderung von Anwendungen, die diese Funktion zurzeit verwenden.

    • Verfügbarkeitsgruppenlistener, Clientkonnektivität und Anwendungsfailover (SQL Server)

    • TLS-Sicherheitsupdate

  • Komponenten von Drittanbietern: Ermitteln Sie die Kompatibilität von Drittanbieterkomponenten, z.B. für eine integrierte Sicherung.

  • Zielumgebung: Stellen Sie sicher, dass Ihre Zielumgebung die Hardware- und Softwareanforderungen erfüllt und die Anforderungen des ursprünglichen Systems unterstützen kann. Ihr Upgrade kann z.B. die Konsolidierung mehrerer SQL Server-Instanzen in eine einzelne, neue SQL Server -Instanz bedeuten oder die Virtualisierung Ihrer SQL Server -Umgebung zu einer privaten oder öffentlichen Cloud.

  • Edition: Ermitteln Sie die entsprechende Edition von SQL Server für das Upgrade, und bestimmen Sie die gültigen Upgradepfade für das Upgrade. Ausführliche Informationen finden Sie unter Supported Version and Edition Upgrades. Bevor Sie eine Edition von SQL Server auf eine andere Edition aktualisieren, sollten Sie überprüfen, ob die derzeit verwendete Funktionalität in der Edition, die Ziel des Upgrades ist, unterstützt wird.

    Hinweis

    Wenn Sie SQL Server von einer früheren Version von SQL Server Enterprise Edition aktualisieren, wählen Sie zwischen „Enterprise Edition: Core-basierte Lizenzierung“ und „Enterprise Edition“ aus. Diese Enterprise Editionen unterscheiden sich nur im Hinblick auf den Lizenzierungsmodus. Weitere Informationen finden Sie unter Compute Capacity Limits by Edition of SQL Server.

  • Abwärtskompatibilität: Lesen Sie den Artikel zur Abwärtskompatibilität der SQL Server-Datenbank-Engine, um sich über Änderungen im Verhalten zwischen SQL Server und der SQL Server-Version zu informieren, für die Sie das Upgrade durchführen. Siehe SQL Server Database Engine Backward Compatibility.

  • Datenmigrations-Assistent: Führen Sie den Datenmigrations-Assistent aus, um bei der Diagnose von Problemen zu helfen, die den Upgradeprozess blockieren oder aufgrund einer erheblichen Änderung auch Änderungen an vorhandenen Skripts oder Anwendungen erfordern.

    Sie können den Datenmigrations-Assistent hier herunterladen.

  • Systemkonfigurationsprüfung: Führen Sie die SQL Server-Systemkonfigurationsprüfung (System Configuration Checker, SCC) aus, um zu ermitteln, ob das SQL Server-Setupprogramm Blockierungsprobleme entdeckt, bevor Sie das Upgrade planen. Weitere Informationen finden Sie unter Check Parameters for the System Configuration Checker.

  • Aktualisieren von speicheroptimierten Tabellen: Wenn Sie eine SQL Server 2014-Datenbankinstanz mit speicheroptimierten Tabellen auf SQL Server 2016 aktualisieren, benötigt der Upgradeprozess zusätzliche Zeit, um die speicheroptimierten Tabellen in das neue Format auf dem Datenträger zu konvertieren (die Datenbank ist währenddessen offline). Die Zeitspanne hängt von der Größe der speicheroptimierten Tabellen und der Geschwindigkeit des E/A-Subsystems ab. Das Upgrade erfordert für direkte und neue Installationsupgrades drei Vorgänge hinsichtlich der Datengrößen (Schritt 1 ist für parallele Upgrades nicht notwendig, die Schritte 2 und 3 indes schon):

    1. Führen Sie die Datenbankwiederherstellung mithilfe des alten Datenträgerformats aus (dabei werden alle speicheroptimierten Tabellen vom Datenträger in den Speicher geladen).

    2. Serialisieren Sie die Daten auf dem Datenträger im neuen Format auf dem Datenträger

    3. Führen Sie die Datenbankwiederherstellung mithilfe des neuen Formats aus (dabei werden alle speicheroptimierten Tabellen vom Datenträger in den Speicher geladen).

      Außerdem schlägt die Wiederherstellung fehl, wenn während dem Prozess nicht genügend Speicherplatz auf dem Datenträger verfügbar ist. Stellen Sie sicher, dass ausreichend Speicherplatz auf dem Datenträger verfügbar ist, um die vorhandene Datenbank und die Container in der Dateigruppe MEMORY_OPTIMIZED_DATA zu speichern, um ein direktes Upgrade auszuführen oder eine SQL Server 2014-Datenbank an eine SQL Server 2016-Instanz anzufügen. Verwenden Sie die folgende Abfrage, um den Speicherplatz zu ermitteln, der derzeit für die Dateigruppe MEMORY_OPTIMIZED_DATA erforderlich ist, und infolgedessen auch den Speicherplatz, der erforderlich ist, damit das Upgrade erfolgreich abgeschlossen wird:

    SELECT CAST(SUM(size) AS FLOAT) * 8 / 1024 / 1024 AS [size in GB]
    FROM sys.database_files
    WHERE data_space_id IN
    (
        SELECT data_space_id
        FROM sys.filegroups
        WHERE type = N'FX'
    );
    

Entwickeln und Testen des Upgradeplans

Die beste Herangehensweise ist, das Upgrade wie jedes andere IT-Projekt zu behandeln. Organisieren Sie ein Upgrade-Team, das die für das Upgrade erforderlichen Qualifikationen für die Datenbankverwaltung, das Netzwerk sowie das Extrahieren, Transformieren und Laden (ETL) besitzt. Das Team muss:

  • Die Upgrademethode auswählen: Weitere Informationen finden Sie unter Auswählen einer Upgrademethode für die Datenbank-Engine.

  • Einen Wiederherstellungsplan entwickeln: Mit diesem Plan können Sie Ihre ursprüngliche Umgebung wiederherstellen, wenn Sie sie zurücksetzen müssen.

  • Akzeptanzkriterien bestimmen: Überprüfen Sie, ob das Upgrade erfolgreich war, bevor Sie Benutzer auf die aktualisierte Umgebung umstellen.

  • Den Upgradeplan testen: Verwenden Sie Microsoft SQL Server Distributed Replay Utility, um die Leistung mit der tatsächlichen Arbeitsauslastung zu testen. Dieses Hilfsprogramm kann Ablaufverfolgungsdaten mithilfe mehrerer Computer wiedergeben, indem es eine für die Unternehmung maßgebliche Arbeitsauslastung simuliert. Durch Ausführen einer Wiedergabe auf einem Testserver vor und nach einem SQL Server-Upgrade können Sie Leistungsunterschiede messen und nach Inkompatibilitäten der Anwendung suchen, die möglicherweise durch das Upgrade verursacht werden. Weitere Informationen finden Sie unter SQL Server Distributed Replay und unter Befehlszeilenoptionen für das Verwaltungstool (Distributed Replay Utility).

Nächste Schritte