Przejdź do treści
Powrót do Centrum Pomocy
SQL Server
Poradniki

SQL Server 2016 do 2022 — migracja krok po kroku (kompletny przewodnik 2026)

SQL Server 2016 był przełomową wersją — wprowadził Always Encrypted, Query Store, In-Memory OLTP i R Services. Jednak jego cykl życia dobiega końca:

10 min czytania·Zaktualizowano dzisiaj

SQL Server 2016 traci rozszerzone wsparcie techniczne Microsoft 14 lipca 2026 roku — po tej dacie nie otrzyma już nawet krytycznych poprawek bezpieczeństwa. Bezpośrednia ścieżka aktualizacji do SQL Server 2022 (16.x) jest w pełni wspierana przez Microsoft — wymaga co najmniej SQL Server 2016 SP3 i odpowiedniej wersji systemu Windows Server. Poniższy przewodnik przeprowadzi Cię przez cały proces migracji: od audytu przedwdrożeniowego, przez wykonanie upgrade'u, aż po testy powdrożeniowe.

W skrócie

  • SQL Server 2016 Extended Support kończy się 14 lipca 2026 — po tej dacie brak poprawek bezpieczeństwa (chyba że wykupisz ESU)
  • Bezpośrednia ścieżka do SQL Server 2022 — wymagane SP3 na instancji źródłowej i Windows Server 2016/2019/2022
  • Trzy metody migracji: in-place upgrade (najprostsza, z przestojem), side-by-side (najbezpieczniejsza, nowy serwer), rolling upgrade (środowiska HA)
  • Data Migration Assistant (DMA) został wycofany w lipcu 2025 — użyj SSMS Migration Component lub Azure Data Studio z rozszerzeniem SQL Migration
  • SQL Server 2022 działa do 2033 roku (extended support) — zyskujesz min. 7 lat pełnego wsparcia
  • Produkcyjnie: nigdy nie rób upgrade'u bez pełnego backupu i przetestowanego rollbacku

Dlaczego migracja z SQL Server 2016 jest pilna w 2026

SQL Server 2016 był przełomową wersją — wprowadził Always Encrypted, Query Store, In-Memory OLTP i R Services. Jednak jego cykl życia dobiega końca:

Kamień milowyData
Premiera SQL Server 20161 czerwca 2016
Koniec Mainstream Support13 lipca 2021
Koniec Extended Support14 lipca 2026
ESU Year 1 (opcjonalnie, płatne)15 lipca 2026 – 13 lipca 2027
ESU Year 214 lipca 2027 – 18 lipca 2028
ESU Year 319 lipca 2028 – 17 lipca 2029

Po 14 lipca 2026 Microsoft nie wyda już żadnych poprawek bezpieczeństwa dla SQL Server 2016 — chyba że wykupisz subskrypcję Extended Security Updates (ESU), która kosztuje około 75% ceny licencji rocznie i obejmuje wyłącznie łatki krytyczne (MSRC Critical). ESU nie obejmuje poprawek błędów, nowych funkcji ani wsparcia technicznego bez Software Assurance.

SQL Server 2022 otrzymuje wsparcie bezpieczeństwa do 2033 roku — migracja teraz daje minimum 7 lat spokoju.

Wymagania wstępne przed migracją

Zanim uruchomisz instalator, upewnij się, że spełniasz wszystkie warunki:

1. Wersja źródłowa — minimum SP3

In-place upgrade do SQL Server 2022 wymaga SQL Server 2016 z zainstalowanym dodatkiem Service Pack 3 (SP3) lub nowszym. Wersje SP1 i SP2 nie są wspierane jako źródło bezpośredniego upgrade'u. Sprawdź wersję:

SELECT @@VERSION
-- Musi zwrócić: Microsoft SQL Server 2016 (SP3) ...

Jeśli masz SP2 lub starszą — najpierw zainstaluj SP3 (do pobrania z Microsoft Update Catalog).

2. System operacyjny

SQL Server 2022 wspiera:

  • Windows Server 2022 (zalecany)
  • Windows Server 2019
  • Windows Server 2016
  • Windows 10/11 (tylko Developer/Express)

Uwaga: Windows Server 2012 R2 nie jest wspierany przez SQL Server 2022 — jeśli na nim działasz, potrzebujesz migracji side-by-side z równoczesnym upgrade'em OS.

3. Wymagania sprzętowe

KomponentMinimum dla SQL 2022
Procesorx64, 1.4 GHz (zalecane 2.0+ GHz)
Pamięć RAM1 GB (Express) / 4 GB (Standard/Enterprise)
Dysk6 GB na instalację + przestrzeń na bazy
.NET Framework4.8

4. Narzędzia diagnostyczne

DMA (Data Migration Assistant) został oficjalnie wycofany 16 lipca 2025 roku. Microsoft zaleca teraz:

  • SSMS (SQL Server Management Studio) — komponent migracji: wbudowane narzędzie do wykrywania problemów ze zgodnością (dostępne w SSMS 19.x i nowszych)
  • Azure Data Studio + rozszerzenie SQL Migration: do oceny i migracji — działa zarówno on-premises, jak i do Azure

Uruchom ocenę przedwdrożeniową, aby wykryć:

  • Breaking changes między SQL 2016 a 2022 (np. usunięte funkcje, zmiany składni T-SQL)
  • Deprecated features (np. stare konstrukcje, które znikną w przyszłych wersjach)
  • Behavior changes (zmiany w działaniu istniejących funkcji)

Trzy metody migracji — którą wybrać?

MetodaZaletyWadyDla kogo?
In-place upgradeNajprostsza, zachowuje nazwę instancji, loginy, jobyPrzestój na czas upgrade'u, trudniejszy rollbackDev/test, małe środowiska bez HA
Side-by-side migrationNowy serwer, minimalne ryzyko, łatwy rollback, nowy OSWymaga drugiego serwera/licencji, ręczne przenoszenie logów/jobów/linkowanych serwerówProdukcja, zmiana sprzętu/OS
Rolling upgradeZero przestoju (lub minimalny), wykorzystuje HA (AG/FCI)Wymaga istniejącego HA, bardziej złożonaProdukcja z Always On / FCI

In-place upgrade — krok po kroku

To najczęściej wybierana metoda w środowiskach deweloperskich i mniejszych produkcyjnych. Oto pełna procedura:

Faza 1: Przygotowanie (przed upgrade'em)

  1. Wykonaj pełny backup wszystkich baz — systemowych (master, msdb, model) i użytkowych. Backup to Twoja polisa ubezpieczeniowa.
  2. Uruchom DBCC CHECKDB na każdej bazie — upewnij się, że nie ma uszkodzeń danych.
  3. Sprawdź zgodność — uruchom SSMS Migration Component przeciwko instancji 2016 i przeanalizuj raport.
  4. Zatrzymaj wszystkie aplikacje łączące się z instancją — aktywne połączenia mogą zablokować upgrade.
  5. Zatrzymaj replikację — jeśli używasz replikacji transakcyjnej lub merge.
  6. Wyłącz procedury startowesp_procoption może blokować restart usługi.
  7. Upewnij się, że bazy systemowe mają włączony autogrow i wystarczająco miejsca na dysku.

Faza 2: Uruchomienie instalatora

  1. Włóż nośnik instalacyjny SQL Server 2022 i uruchom Setup.exe jako administrator.
  2. W SQL Server Installation Center wybierz: Installation → Upgrade from a previous version of SQL Server.
  3. Na stronie Product Key wprowadź klucz licencyjny SQL Server 2022 lub wybierz wersję Evaluation/Developer.
  4. Na stronie Select Instance wybierz instancję SQL Server 2016 do upgrade'u.
  5. Upgrade Rules — kreator automatycznie sprawdzi reguły (pending restart, Windows Installer, uprawnienia). Jeśli któraś nie przejdzie — popraw i uruchom ponownie.
  6. Na stronie Instance Configuration pozostaw domyślny Instance ID.
  7. Server Configuration — konta usług zostaną przeniesione z poprzedniej instancji. Zweryfikuj i popraw jeśli trzeba.
  8. Full-Text Search Upgrade Options — wybierz Import (zalecane; przebuduje indeksy pełnotekstowe).
  9. Kliknij Install i czekaj — kreator zatrzyma usługi, podmieni pliki binarne i zaktualizuje bazy systemowe.

Faza 3: Po upgrade'ze

  1. Zmień poziom zgodności baz — po upgrade'zie bazy pozostają na starym compatibility level. Aby skorzystać z nowych funkcji 2022, ustaw COMPATIBILITY_LEVEL = 160:

    ALTER DATABASE [NazwaBazy] SET COMPATIBILITY_LEVEL = 160
    

    Uwaga: zmiana poziomu zgodności może wpłynąć na wydajność zapytań — nowy Query Optimizer inaczej szacuje kardynalność. Najpierw przetestuj na staging, użyj Query Store do wychwycenia regresji.

  2. Zaktualizuj statystykiEXEC sp_updatestats.

  3. Przebuduj indeksy — po upgrade'zie warto zaplanować maintenance window na ALTER INDEX ... REBUILD.

  4. Sprawdź logi instalatora%ProgramFiles%\Microsoft SQL Server\160\Setup Bootstrap\Log\Summary.txt.

  5. Przetestuj aplikacje — uruchom pełen zestaw testów integracyjnych przed wpuszczeniem ruchu produkcyjnego.

  6. Włącz nowe funkcje 2022, które Cię interesują: Always Encrypted z secure enclaves, Link feature do Azure SQL Managed Instance, Query Store na secondary replikach, czy Parameter Sensitive Plan Optimization.

Side-by-side migration — dodatkowe uwagi

Przy migracji side-by-side musisz ręcznie przenieść:

  • Loginy — przez skrypt sp_help_revlogin lub SSMS Transfer Logins
  • SQL Agent Jobs — skryptuj przez SSMS (Script Job as → CREATE)
  • Linked Servers — skryptuj definicje
  • Server-level triggers — ręcznie odtwórz na nowej instancji
  • SSIS packages z msdb — wyeksportuj i wdróż na nowy serwer
  • Database Mail — przekonfiguruj profile i konta

Backup & restore lub log shipping to najprostsze sposoby przeniesienia baz użytkowych z minimalnym przestojem.

Najczęstsze problemy i jak je rozwiązać

"Upgrade Rules blokuje instalację — pending restart"

Po aktualizacjach Windows może być wymagany restart. Uruchom ponownie serwer przed rozpoczęciem upgrade'u. Jeśli problem persistuje, sprawdź klucz rejestru HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\PendingFileRenameOperations.

"Brak wsparcia dla Windows Server 2012 R2"

SQL Server 2022 nie działa na Windows Server 2012 R2. Masz dwie opcje: (1) side-by-side na nowy serwer z Windows Server 2022, (2) najpierw upgrade OS do Windows Server 2019/2022, potem in-place SQL.

"Po upgrade'zie aplikacja działa wolniej"

Nowy Cardinality Estimator (CE) w SQL Server 2022 może inaczej planować zapytania. Rozwiązania:

  • Włącz Query Store i monitoruj regresje — użyj sp_query_store_force_plan do przywrócenia starego planu
  • Tymczasowo użyj legacy CE: ALTER DATABASE SCOPED CONFIGURATION SET LEGACY_CARDINALITY_ESTIMATION = ON
  • Ustaw compatibility level na 130 (SQL 2016) do czasu pełnego przetestowania

"Brakuje mi miejsca na dysku dla upgrade'u in-place"

Instalator potrzebuje miejsca na tymczasowe pliki i aktualizację baz systemowych. Oszacuj: ~2× rozmiar największej bazy systemowej + 6 GB na binaria. Jeśli brakuje — rozważ side-by-side na nowy dysk/serwer.

Częste pytania

Czy mogę zrobić upgrade z SQL Server 2016 Express do SQL Server 2022 Standard?

Tak. Ścieżka SQL Server 2016 SP3 Express → SQL Server 2022 Standard jest wspierana przez Microsoft. Instalator przeprowadzi zarówno version upgrade, jak i edition upgrade w jednym kroku. Potrzebujesz jednak nowej licencji SQL Server 2022 Standard — klucz z 2016 Express nie zadziała.

Co z bazami w compatibility level 100 lub niższym?

SQL Server 2022 obsługuje bazy od compatibility level 100 wzwyż (SQL Server 2008). Jeśli masz bazy na poziomie 90 (SQL Server 2005), po restore/attach zostaną automatycznie podniesione do 100. Zalecamy docelowo poziom 160 (natywny dla 2022), ale zmiana wymaga wcześniejszego przetestowania aplikacji.

Czy upgrade in-place usuwa SQL Server 2016 z serwera?

Tak — upgrade in-place nadpisuje starą instancję. Po zakończeniu procesu SQL Server 2016 przestaje istnieć na tym serwerze. Dlatego backup wszystkiego przed upgrade'em jest absolutnie obowiązkowy — jedyną drogą powrotu jest reinstalacja 2016 i restore baz.

Czy DMA nadal działa w 2026 roku?

Nie. Data Migration Assistant został oficjalnie wycofany 16 lipca 2025 roku. Microsoft zaleca używanie wbudowanego komponentu migracji w SSMS 19.x/20.x lub rozszerzenia SQL Migration dla Azure Data Studio.

Czy potrzebuję Software Assurance do upgrade'u?

Nie potrzebujesz Software Assurance do samego upgrade'u — potrzebujesz ważnej licencji na SQL Server 2022. Jeśli masz licencję 2016 z SA, upgrade do 2022 jest objęty umową. Bez SA musisz kupić nową licencję na SQL Server 2022.

Ile trwa typowy upgrade in-place?

Dla małej instancji (kilka baz, <100 GB danych): 30–60 minut. Dla średniej (kilkaset GB, wiele baz): 1–3 godziny. Dla dużej (>1 TB): kilka godzin — tutaj zdecydowanie zalecamy side-by-side lub rolling upgrade. Głównym czynnikiem jest liczba i rozmiar baz systemowych, które muszą zostać zaktualizowane.

Czy mogę migrować na Linux?

Tak — SQL Server 2022 działa na Red Hat Enterprise Linux 8.x, Ubuntu 22.04 LTS i SUSE Linux Enterprise Server 15. Nie ma bezpośredniego in-place upgrade'u z Windows na Linux — musisz użyć metody side-by-side (backup & restore lub log shipping) do przeniesienia baz na nową instancję linuksową.

Podsumowanie

SQL Server 2016 dobiega końca wsparcia 14 lipca 2026 roku. Masz trzy realne opcje: in-place upgrade (najprostsza, dla dev/test), side-by-side migration (najbezpieczniejsza, dla produkcji) lub rolling upgrade (dla środowisk Always On/FCI). Niezależnie od wybranej metody, obowiązkowe minimum przygotowań to: pełny backup, DBCC CHECKDB, ocena zgodności przez SSMS Migration Component i przetestowany plan rollbacku.

SQL Server 2022 to solidny cel migracji — zapewnia wsparcie do 2033 roku, nowoczesny Query Optimizer, Query Store z inteligentnym przetwarzaniem zapytań i ulepszone funkcje bezpieczeństwa. Jeśli potrzebujesz nowej licencji na SQL Server 2022 Standard lub Enterprise w atrakcyjnej cenie, sprawdź ofertę licencji serwerowych w sklepie KluczeSoft:

Licencje SQL Server i Windows Server — KluczeSoft.pl

Najczęściej zadawane pytania

Tak. Ścieżka SQL Server 2016 SP3 Express → SQL Server 2022 Standard jest wspierana przez Microsoft. Instalator przeprowadzi zarówno version upgrade, jak i edition upgrade w jednym kroku. Potrzebujesz jednak nowej licencji SQL Server 2022 Standard — klucz z 2016 Express nie zadziała.
SQL Server 2022 obsługuje bazy od compatibility level 100 wzwyż (SQL Server 2008). Jeśli masz bazy na poziomie 90 (SQL Server 2005), po restore/attach zostaną automatycznie podniesione do 100. Zalecamy docelowo poziom 160 (natywny dla 2022), ale zmiana wymaga wcześniejszego przetestowania aplikacji.
Tak — upgrade in-place **nadpisuje** starą instancję. Po zakończeniu procesu SQL Server 2016 przestaje istnieć na tym serwerze. Dlatego backup wszystkiego przed upgrade'em jest absolutnie obowiązkowy — jedyną drogą powrotu jest reinstalacja 2016 i restore baz.
Nie. Data Migration Assistant został oficjalnie wycofany 16 lipca 2025 roku. Microsoft zaleca używanie wbudowanego komponentu migracji w SSMS 19.x/20.x lub rozszerzenia SQL Migration dla Azure Data Studio.
Nie potrzebujesz Software Assurance do samego upgrade'u — potrzebujesz **ważnej licencji na SQL Server 2022**. Jeśli masz licencję 2016 z SA, upgrade do 2022 jest objęty umową. Bez SA musisz kupić nową licencję na SQL Server 2022.
Dla małej instancji (kilka baz, <100 GB danych): 30–60 minut. Dla średniej (kilkaset GB, wiele baz): 1–3 godziny. Dla dużej (>1 TB): kilka godzin — tutaj zdecydowanie zalecamy side-by-side lub rolling upgrade. Głównym czynnikiem jest liczba i rozmiar baz systemowych, które muszą zostać zaktualizowane.
Tak — SQL Server 2022 działa na Red Hat Enterprise Linux 8.x, Ubuntu 22.04 LTS i SUSE Linux Enterprise Server 15. Nie ma bezpośredniego in-place upgrade'u z Windows na Linux — musisz użyć metody side-by-side (backup & restore lub log shipping) do przeniesienia baz na nową instancję linuksową.

Czy ten artykuł był pomocny?