Wenn der SQL Server Àlter ist als das Notebook
Du weiĂt, was ich meine:
SQL Server 2008 R2 â lĂ€uft ja noch.
SQL Server 2012 â âreicht unsâ.
Aber: Kein Support. Keine Sicherheit. Keine Features.
Und irgendwann auch kein Zugriff mehr, weil ODBC-Treiber, Office oder Windows nicht mehr mitspielen.
SpÀtestens wenn ich eine Migration plane, wird klar, wie viel Risiko da eigentlich steckt.
Warum Du aktualisieren solltest
- Kein Support mehr ab SQL 2016 Standard SP2
- Keine Sicherheitspatches â DSGVO-Risiko
- Keine neuen Features â kein Query Store, kein ADR, kein UTF-8
- Kein aktuelles .NET, kein TLS 1.2+
- Kein Azure-Backup, kein modernes Monitoring
Wenn Du das nĂ€chste Mal auf das Eventlog guckst und âSchreibzugriff auf TempDB fehlgeschlagenâ liest, weiĂt Du, was ich meine.
Meine Migrationsstrategie
Ich arbeite pragmatisch.
Kein Big Bang.
Sondern planbare Schritte.
- Zielversion festlegen (meist LTS-Version wie 2019 oder 2022)
- Alt-System per Reporting-Funktionen bewerten
- KompatibilitĂ€tsprobleme prĂŒfen
- Testmigration auf Dev-Server
- Abnahme durch Anwender
- Umstellung am StĂŒck oder gestaffelt
Schritt 1: Welche Version lĂ€uft ĂŒberhaupt?
SELECT
SERVERPROPERTY('ProductVersion') AS Version,
SERVERPROPERTY('ProductLevel') AS SP,
SERVERPROPERTY('Edition') AS Edition,
SERVERPROPERTY('EngineEdition') AS Engine;
Damit weiĂt Du, wo Du stehst â und was alles fehlt.
Schritt 2: KompatibilitĂ€tslevel prĂŒfen
SELECT
name,
compatibility_level
FROM sys.databases;
KompatibilitÀtslevel unter 110 (SQL 2012) ist ein Warnsignal.
Schritt 3: Altlasten identifizieren
SELECT
OBJECT_NAME(object_id) AS Objekt,
definition
FROM sys.sql_modules
WHERE definition LIKE '%sp_addmessage%'
OR definition LIKE '%sp_addextendedproc%'
OR definition LIKE '%RAISERROR % 16%';
Damit findest Du unsaubere Fehlerbehandlung, alte Systemprozeduren, feste Fehlernummern.
Auch wichtig: veraltete Datentypen (text, ntext, image) umstellen.
Schritt 4: Auf KompatibilitÀt testen
Nutze das Data Migration Assistant (DMA) von Microsoft.
Der scannt Dein System und zeigt, was im Zielsystem Probleme macht.
Beispiel: Alte CLR-Projekte oder eigene Fulltext-Indizes auf deprecated Features.
Schritt 5: Testmigration und Parallelbetrieb
Restore der DB auf neuer Instanz:
RESTORE DATABASE MeineDB
FROM DISK = 'E:\Backup\MeineDB_FULL.bak'
WITH MOVE 'MeineDB_Data' TO 'D:\Daten\MeineDB.mdf',
MOVE 'MeineDB_Log' TO 'D:\Log\MeineDB.ldf',
STATS = 10;
Dann Zugriff testen.
Berichte prĂŒfen.
LanglÀufer vergleichen.
Falls nötig: KompatibilitÀtslevel anpassen.
ALTER DATABASE MeineDB
SET COMPATIBILITY_LEVEL = 150; -- fĂŒr SQL 2019
Schritt 6: Umstellung vorbereiten
- Nachttermin
- Zugriff stoppen (z.âŻB. per Firewall oder DNS)
- Finales Backup
- Restore auf neues System
- DNS oder Verbindungspfad umstellen
- Alte Instanz read-only sichern
Und: Monitoring aktivieren.
Tabelle: Alt vs. Neu â konkret
Feature | SQL Server 2008 R2 | SQL Server 2022 |
---|---|---|
Support | abgelaufen | Mainstream |
TLS 1.2 | nur mit Patch | Standard |
Query Store | nicht vorhanden | Standard |
Graph DB / JSON | nein | ja |
Temporal Tables | nein | ja |
DTC AlwaysOn | nein | ja |
UTF-8 UnterstĂŒtzung | nein | ja |
Backup to Azure | nein | ja |
Mein Setup fĂŒr stabile Migrationen
Bereich | Umsetzung |
---|---|
VorabprĂŒfung | DMA-Scan + Versionsvergleich |
Testmigration | Restore in Testumgebung + Benutzerabnahme |
Downtimeplanung | max. 2â4 Stunden, je nach DB-GröĂe |
RĂŒckfalloption | Alt-Instanz read-only behalten |
Monitoring | Query Store + Mail bei Fehler 823, 824 |
Ein SQL Server ist kein Wein. Der wird nicht besser mit der Zeit.
Wer auf 2008 R2 bleibt, spart keine Lizenz â sondern lĂ€dt Risiken ein.
Machâs richtig. Machâs planbar.
Dann lĂ€uftâs auch auf moderner Hardware â
und Du bist raus aus der Support-Hölle.
No responses yet