Wenn Sie SQL Server 2008 oder SQL Server 2008 R2 ausführen, was bedeutet 9. Juli 2019 bedeuten für dich? Da beide Versionen von SQL Server gemeinsam das Ende ihres Support-Lebenszyklus erreichen, können Sie keine kritischen Sicherheitsupdates mehr erhalten. Dies kann zu schwerwiegenden Sicherheits- und Compliance-Problemen für Ihr Unternehmen führen.
Als diese Versionen von SQL Server veröffentlicht wurden, wurden sie mit 10 Jahren Support geliefert; 5 Jahre Mainstream Support und 5 Jahre Extended Support. Wenn Ihr Unternehmen immer noch SQL Server 2008/2008 R2 in Produktion hat, wie plant Ihr Unternehmen, das Risiko anzugehen? Für Organisationen, die stark reguliert sind, ist dies ein großes Problem.
Sie müssen auswählen, wie Sie migrieren und wohin Sie migrieren möchten, und dann sicherstellen, dass Sie unterwegs nicht auf Hindernisse stoßen.
Migrationsbewertungstools
Wenn Sie ein Upgrade von SQL Server 2008/2008 R2 planen, hat Microsoft das Testen und Validieren Ihrer Umgebung erheblich vereinfacht. Es gibt zahlreiche Tools, die bei Migrationsbewertungen helfen und sogar Migrationsaufgaben erledigen können, und sie sind alle leicht unterschiedlich. Zu diesen Tools gehören:
- Datenmigrationsassistent
- Microsoft Assessment and Planning Toolkit
- Azure Database Migration Service
- Assistent zum Experimentieren mit Datenbanken
Der Datenmigrationsassistent hilft Ihnen beim Upgrade auf eine moderne Datenplattform. Dazu werden Kompatibilitätsprobleme erkannt, die sich auf die Funktionalität der neueren Version von SQL Server auswirken können, und Empfehlungen für Leistungs- und Zuverlässigkeitsverbesserungen für die neue Umgebung abgegeben. Ihre Quelle kann SQL Server 2005+ mit einem Ziel von SQL 2012+ und Azure SQL Database sein.
Das Microsoft Assessment and Planning Toolkit gibt es seit vielen Jahren und wird oft als MAP-Tool bezeichnet. Es eignet sich hervorragend für eine Bestandsaufnahme Ihrer aktuellen Umgebung, um herauszufinden, wo SQL Server (und andere Anwendungen) vorhanden sind.
Der Azure Database Migration Service integriert einige Funktionen bestehender Tools und Dienste, um Kunden eine umfassende Lösung für die Migration zu Azure bereitzustellen. Das Tool generiert Bewertungsberichte mit Empfehlungen, die Sie durch alle Änderungen führen, die vor der Durchführung einer Migration erforderlich sind. Dieser Dienst erfordert derzeit ein VPN oder Express Route.
Schließlich ist der Database Experimentation Assistant eine neue A/B-Testlösung für SQL Server-Upgrades und ein Tool, mit dem Sie sich vertraut machen sollten. Es nutzt Distributed Replay, um eine Workload zu erfassen und auf einem Ziel-SQL-Server wiederzugeben. Dies kann verwendet werden, um Hardwareänderungen oder Versionsunterschiede von SQL Server zu testen. Sie können Workloads von SQL Server 2005 und höher erfassen.
Migrationsoptionen
Lokales Upgrade: Eine der einfachsten Migrationsmethoden ist das Upgrade auf eine neuere Version von SQL Server. In diesem Fall haben Sie SQL Server 2012, 2014, 2016 oder 2017 zur Auswahl. Ich ermutige Kunden, auf die neueste Version zu aktualisieren, die sie können. SQL Server 2012 ist bereits aus dem Mainstream-Support und SQL Server 2014 aus dem Mainstream-Support am 9. Juli 2019. Ein Upgrade kann für Unternehmen aufgrund der damit verbundenen Planung und Tests sehr zeitaufwändig und kostspielig sein, daher kann der Umstieg auf die neueste Version sehr zeitaufwändig und kostspielig sein Erhöhen Sie die Zeit bis zum nächsten Upgrade. Es gibt auch zahlreiche Leistungs- und Funktionsverbesserungen in SQL Server 2016 und 2017, die eine Migration zu SQL Server 2012 oder 2014 derzeit zu einer sehr schlechten Wahl machen.
Ein gängiger Ansatz für lokale Upgrades besteht darin, neue zu erstellen und zu migrieren, unabhängig von einer physischen oder virtuellen Umgebung. Indem Sie neue erstellen, können Sie Ihre Datenbanken wiederherstellen und zahlreiche Test- und Validierungsrunden durchführen, um sicherzustellen, dass alles wie erwartet funktioniert, bevor Sie die Produktion verschieben.
Aktualisieren und migrieren Sie zu einer Azure-VM: Für Unternehmen, die in die Cloud migrieren möchten, ist Azure Infrastructure as a Service (IaaS) eine hervorragende Option. Das Ausführen von SQL Server auf einer Azure-VM ist ähnlich wie das lokale Ausführen. Sie geben die Größe der VM (Anzahl der vCPUs und Arbeitsspeicher) an und konfigurieren Ihren Speicher für Ihre E/A- und Größenanforderungen. Sie sind weiterhin für die Unterstützung des Betriebssystems und von SQL Server für die Konfiguration und das Patchen verantwortlich. Azure IaaS bietet Ihnen die Möglichkeit, Ihre Workloads einfach zu skalieren, indem Sie die Größe Ihres virtuellen Computers nach oben oder unten skalieren, wenn sich Ihre Workloadanforderungen ändern, sowie die Vorteile der Azure Active Directory-Integration, der Bedrohungserkennung und vieler anderer Azure-Vorteile nutzen.
Zur Azure SQL-Datenbank migrieren: Eine weitere Option, die Sie haben, ist die Migration zu Azure SQL-Datenbank. Azure SQL Database kann als Database as a Service betrachtet werden und ist Teil von Microsofts Platform as a Service (PaaS). Die Funktionalität von Azure SQL-Datenbank ist datenbankbezogen, was bedeutet, dass bestimmte Dinge wie datenbankübergreifende Abfragen, SQL Server-Agent, Datenbank-E-Mail und mehr nicht verfügbar sind. Viele Kunden mit Anwendungen, die eine einzelne Datenbank verwenden, konnten jedoch mit minimalem Aufwand zu Azure SQL-Datenbank migrieren. Mithilfe des Datenmigrations-Assistenten können Sie schnell die Kompatibilität mit Azure SQL-Datenbank testen. Mit Azure SQL-Datenbank können Sie Ihre Datenbanken individuell nach DTU (Database Transaction Units) oder virtuellen Kernen skalieren oder Datenbanken in einem Pool für elastische Datenbanken gruppieren. Mit Azure SQL-Datenbank können Sie Ihre Ressourcen mit minimalem Aufwand und Ausfallzeiten nach oben und unten skalieren.
Zur verwalteten Azure SQL-Instanz migrieren: Eine neue Option (ab 2018) ist die Migration auf Azure SQL Managed Instance. Dies ist ein neues Produkt, das derzeit allgemein ab dem 1. Oktober für die General-Purpose-Stufe verfügbar ist. Managed Instance wurde mithilfe des Programmiermodells auf Instanzebene erstellt. Dies bedeutet, dass Funktionen, die wir von der Vollversion von SQL Server gewohnt sind, unterstützt werden. Das Ziel von Managed Instance ist eine 100-prozentige Oberflächenkompatibilität mit lokalen Umgebungen. Alle Datenbanken in der Instanz befinden sich auf demselben Server, sodass datenbankübergreifende Abfragen unterstützt werden, ebenso wie Datenbank-E-Mail, SQL Server-Agent, Service Broker und vieles mehr. Es gibt zwei Preisstufen; General Purpose, das einen nicht lesbaren Secondary für HA enthält, und Business Critical, das zwei nicht lesbare Secondaries und einen lesbaren Secondary hat. Managed Instance ist Teil des PaaS-Angebots von Microsoft, sodass Sie alle integrierten Features und Funktionen von PaaS erhalten.
Unverändert zu Azure Virtual Machines wechseln: Microsoft bietet drei Jahre lang kostenlose erweiterte Sicherheitsupdates an, wenn Sie Ihre SQL 2008/SQL 2008 R2-Instanzen auf eine Azure-VM verschieben. Das Ziel besteht darin, Ihnen etwas mehr Zeit für ein Upgrade auf eine neuere Version von SQL Server zu geben, wenn Sie dazu bereit sind.
Pay to Stay: Dies ist keine Migrationsoption, aber Sie haben die Möglichkeit, erweiterte Sicherheitsupdates für bis zu drei Jahre zu erwerben. Es gibt Einschränkungen bei dieser Option. Sie müssen über aktive Software Assurance für diese Instanzen oder Abonnementlizenzen im Rahmen eines Enterprise Agreement verfügen. Wenn dies auf Sie zutrifft, können Sie mit dieser Option mehr Zeit für die Planung und Migration von SQL Server 2008/2008 R2 gewinnen.
Best Practices für die Migration
Bei der Durchführung einer Migration oder eines Upgrades müssen Sie bestimmte Dinge beachten. Erstens braucht man Baselines und ich kann das nicht genug betonen. Jedes Mal, wenn Sie eine Umgebungsänderung vornehmen, müssen Sie messen können, wie sich diese Änderung auf die Umgebung auswirkt. Die Kenntnis der wichtigsten Leistungsmetriken für Ihre Umgebung kann Ihnen bei der Fehlerbehebung bei wahrgenommenen Auswirkungen helfen. Sie können diese Metriken mithilfe von Perfmon und DMVs manuell erfassen oder in eine Leistungsüberwachungsplattform investieren. Ich habe in einem früheren Beitrag ausführlicher über beide Techniken geschrieben, und zwar jetzt Sie können eine erweiterte, 45-tägige Evaluierung von SentryOne erhalten . Wenn Sie Basismetriken für Dinge wie CPU-Auslastung, Speicherverbrauch, Festplattenmetriken und mehr haben, können Sie schnell wissen, ob die Dinge nach einem Upgrade oder einer Migration besser oder schlechter aussehen.
Beachten Sie auch Ihre Konfigurationsoptionen innerhalb Ihrer Instanz. Oft wurde ich gebeten, mir eine SQL Server-Instanz nach einem Upgrade oder einer Migration anzusehen, und festgestellt, dass die meisten Standardeinstellungen verwendet werden. Wenn das alte System noch verfügbar ist, kann ich es abfragen und die vorherigen nicht standardmäßigen Werte abrufen, die vorhanden waren, und diese auf die neue Umgebung anwenden, um sie wieder in eine bekannte Konfiguration zu bringen. Es ist immer gut, sys.configurations auf Ihrem Produktionsserver zu überprüfen, um ähnliche Änderungen in Ihrer neuen Umgebung in Betracht zu ziehen (Kostenschwelle für Parallelität, maximaler Grad an Parallelität, Optimierung für Ad-hoc-Workloads und mehr). Beachten Sie, dass ich „erwägen“ geschrieben habe. Wenn Ihre Kernanzahl oder Ihr Arbeitsspeicher auf dem neuen Server anders sind, müssen Sie die Einstellungen unter Berücksichtigung der Größe des neuen Servers konfigurieren.
Was ist Ihr Rückzugsplan, wenn etwas schief geht? Hast du vernünftige Backups, auf die du zurückgreifen kannst? In den meisten Fällen ziehen Sie bei einem Upgrade oder einer Migration auf eine neue VM oder einen neuen physischen Server um. Ihr Failback kann darin bestehen, zum alten Server zurückzukehren. Wenn sich Daten in der neuen Version von SQL Server geändert haben, ist Ihr Failback viel komplizierter. Sie können eine SQL Server-Datenbanksicherung nicht von einer neueren Version von SQL Server auf eine ältere Version wiederherstellen.
Schlussfolgerung
Wenn Sie noch SQL Server 2008 oder SQL Server 2008 R2 verwenden, stehen Ihnen einige Optionen zur Verfügung, um nach dem 9. Juli 2019 konform zu bleiben. Um auf SQL Server 2008 oder SQL Server 2008 R2 zu bleiben, können Sie erweiterte Sicherheitsupdates erwerben oder wechseln Sie zu einem virtuellen Azure-Computer, wenn Sie sich qualifizieren. Wenn Sie ein Upgrade durchführen können, können Sie zu einer unterstützten Version von SQL Server lokal oder auf einer Azure-VM migrieren oder eine Migration zu einer verwalteten Lösung wie Azure SQL-Datenbank oder Azure SQL Managed Instance in Erwägung ziehen.