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

Gilt für:SQL Server unter 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 die Datenbank-Engine aktualisieren, lesen Sie Folgendes:

Planungsprüfliste zur Vorbereitung des Upgrades

Lesen Sie vor dem Datenbank-Engine-Upgrade die folgende Prüfliste und die dazugehörigen Artikel. Diese Artikel gelten für alle Upgrades, unabhängig von der Upgrademethode, und helfen Ihnen dabei, die am besten geeignete Upgrademethode zu bestimmen: Rolling Upgrade, Upgrade per Neuinstallation oder In-Place-Upgrade. Beispielsweise können Sie unter Umständen kein direktes Upgrade oder kein rollierendes Upgrade durchführen, wenn Sie das Betriebssystem aktualisieren, ein Upgrade von SQL Server 2005 (9.x) durchführen oder ein Upgrade von einer 32-Bit-Version von SQL Server ausführen. Eine Entscheidungsstruktur finden Sie unter Choose a Datenbank-Engine upgrade method.

  • Hardware- und Softwareanforderungen: Überprüfen Sie die Hardware- und Softwareanforderungen für die Installation von SQL Server. Bei der Planung von Upgrades sollte auch das Upgraden von Hardware und Betriebssystem in Betracht gezogen werden. Neuere Hardware ist schneller und kann den Lizenzierungsaufwand durch eine geringere Zahl von Prozessoren oder durch die Konsolidierung von Datenbanken und Servern verringern. 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.

    • Clientanbieter: Obwohl ein Upgrade kein gleichzeitiges Update des Anbieters für alle 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 Features von SQL Server 2016 (13.x) entweder einen aktualisierten Anbieter für jeden Client oder einen Anbieter, der zusätzliche Funktionen bereitstellt:

    • Immer verschlüsselt

    • Stretch-Datenbank

      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.

    • Mit einem Always On-Verfügbarkeitsgruppenlistener verbinden

    • 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. Das Upgrade kann z. B. die Konsolidierung mehrerer SQL Server-Instanzen in eine einzelne, neue SQL Server-Instanz bedeuten oder die Virtualisierung der 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. Bevor Sie eine Edition von SQL Server auf eine andere Edition upgraden, sollten Sie überprüfen, ob die derzeit verwendete Funktionalität in der Edition, auf die Sie upgraden, unterstützt wird.

    Ausführliche Informationen finden Sie unter Unterstützte Versions- und Editionsupgrades (SQL Server 2022).

    Hinweis

    Wenn Sie SQL Server von einer früheren Version von SQL Server Enterprise Edition upgraden, 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 Berechnungsgrenzen der Kapazität nach Edition von SQL Server.

  • Abwärtskompatibilität: Lesen Sie den Artikel zur Abwärtskompatibilität der Datenbank-Engine von SQL Server, 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 Nicht mehr unterstützte Datenbankmodulfunktionen in SQL Server.

  • SQL Server-Migrationskomponente: Verwenden Sie die SQL Server-Migrationskomponente in SQL Server Management Studio , um Probleme zu diagnostizieren, die entweder den Upgradeprozess blockieren oder änderungen an vorhandenen Skripts oder Anwendungen aufgrund einer unterbrechungsbedingten Änderung erfordern.

  • 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 "Überprüfen von Parametern für die Systemkonfigurationsprüfung".

  • Aktualisieren von speicheroptimierten Tabellen: Wenn Sie eine Instanz von SQL Server 2014 (12.x) mit speicheroptimierten Tabellen auf SQL Server 2016 (13.x) und höhere Versionen upgraden, benötigt der Upgradeprozess zusätzliche Zeit, um die speicheroptimierten Tabellen in das neue Format auf dem Datenträger zu konvertieren. Während dieses Vorgangs ist die Datenbank offline. Die benötigte Zeit hängt von der Größe der speicheroptimierten Tabellen und der Geschwindigkeit des E/A-Subsystems ab. Das Upgrade erfordert für direkte und Neuinstallations-Upgrades drei unterschiedlich umfangreiche Datenvorgänge (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 im neuen Datenträgerformat 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 auf dem Datenträger ausreichend Speicherplatz vorhanden ist, um die vorhandene Datenbank zu speichern, zuzüglich zusätzlichen Speicherplatzes in Höhe der aktuellen Größe der Container in der Dateigruppe MEMORY_OPTIMIZED_DATA der Datenbank, um ein In-Place-Upgrade durchzuführen oder eine SQL Server 2014 (12.x)-Datenbank an eine Instanz mit SQL Server 2016 (13.x) oder höher anzufügen. Verwenden Sie die folgende Abfrage, um den derzeit für die Dateigruppe MEMORY_OPTIMIZED_DATA benötigten Speicherplatz sowie den für ein erfolgreiches Upgrade erforderlichen freien Speicherplatz zu ermitteln:

    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:

  • Wählen Sie die Upgrademethode aus: Siehe "Datenbankmodul-Upgrademethode auswählen".

  • 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 Dienstprogramm kann mithilfe mehrerer Computer Trace-Daten erneut abspielen, um eine geschäftskritische Arbeitslast zu simulieren. 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 unter Umständen durch das Upgrade verursacht werden. Weitere Informationen finden Sie unter SQL Server Distributed Replay Übersicht und Administrationstool-Befehlszeilenoptionen (Distributed Replay Utility).