Aug 10, 2026, 3:23 PM
This commit is contained in:
@@ -0,0 +1,257 @@
|
|||||||
|
Dla SQL Server Standalone runbook jest prostszy niż dla FCI, ale paradoksalnie częściej kończy się problemami, bo ludzie zapominają o jobach, linked serverach, ODBC, SSIS i konfiguracji systemowej.
|
||||||
|
|
||||||
|
Poniżej jest moja produkcyjna checklista DBA do migracji:
|
||||||
|
|
||||||
|
SQL Server Standalone → SQL Server 2022 Standalone
|
||||||
|
|
||||||
|
1. Discovery / Assessment
|
||||||
|
Serwer źródłowy
|
||||||
|
System
|
||||||
|
Nazwa serwera
|
||||||
|
Windows Version
|
||||||
|
Patch Level
|
||||||
|
CPU
|
||||||
|
RAM
|
||||||
|
Dyski
|
||||||
|
Antivirus
|
||||||
|
Firewall rules
|
||||||
|
ODBC DSN
|
||||||
|
Scheduled Tasks
|
||||||
|
SQL Server
|
||||||
|
SELECT @@VERSION;
|
||||||
|
|
||||||
|
SQL Version
|
||||||
|
SQL Edition
|
||||||
|
CU/SP
|
||||||
|
Collation
|
||||||
|
Authentication Mode
|
||||||
|
Max Server Memory
|
||||||
|
MaxDOP
|
||||||
|
Cost Threshold
|
||||||
|
Trace Flags
|
||||||
|
TempDB Configuration
|
||||||
|
Backup Compression
|
||||||
|
IFI
|
||||||
|
2. Inwentaryzacja baz
|
||||||
|
|
||||||
|
Dla każdej bazy:
|
||||||
|
|
||||||
|
Nazwa
|
||||||
|
Rozmiar
|
||||||
|
Recovery Model
|
||||||
|
Compatibility Level
|
||||||
|
Owner
|
||||||
|
TDE
|
||||||
|
CDC
|
||||||
|
Replication
|
||||||
|
Service Broker
|
||||||
|
FullText
|
||||||
|
FileStream
|
||||||
|
CLR
|
||||||
|
Query Store
|
||||||
|
3. Obiekty instancji
|
||||||
|
Security
|
||||||
|
SQL Logins
|
||||||
|
Windows Logins
|
||||||
|
Server Roles
|
||||||
|
Credentials
|
||||||
|
Certificates
|
||||||
|
Endpoints
|
||||||
|
SQL Agent
|
||||||
|
Jobs
|
||||||
|
Job Steps
|
||||||
|
Schedules
|
||||||
|
Operators
|
||||||
|
Alerts
|
||||||
|
Proxies
|
||||||
|
Integracje
|
||||||
|
Linked Servers
|
||||||
|
Linked Server Logins
|
||||||
|
Database Mail
|
||||||
|
SSIS Packages
|
||||||
|
Maintenance Plans
|
||||||
|
PowerShell Scripts
|
||||||
|
Batch Files
|
||||||
|
4. Nowy serwer
|
||||||
|
Windows
|
||||||
|
Serwer zbudowany
|
||||||
|
Join do domeny
|
||||||
|
Patchowanie
|
||||||
|
AV exclusions
|
||||||
|
Firewall
|
||||||
|
Dyski
|
||||||
|
|
||||||
|
Przykład:
|
||||||
|
|
||||||
|
C: OS
|
||||||
|
D: SQL Binaries
|
||||||
|
E: Data
|
||||||
|
F: Log
|
||||||
|
G: TempDB
|
||||||
|
H: Backup
|
||||||
|
|
||||||
|
Wolumeny utworzone
|
||||||
|
NTFS 64K
|
||||||
|
Uprawnienia nadane
|
||||||
|
5. Instalacja SQL 2022
|
||||||
|
Instalacja
|
||||||
|
SQL Engine
|
||||||
|
Agent
|
||||||
|
FullText (jeśli używany)
|
||||||
|
Konfiguracja
|
||||||
|
Port TCP
|
||||||
|
Max Memory
|
||||||
|
MaxDOP
|
||||||
|
Cost Threshold
|
||||||
|
Backup Compression
|
||||||
|
IFI
|
||||||
|
6. Migracja obiektów instancji
|
||||||
|
Logins
|
||||||
|
Migracja z SID
|
||||||
|
Role
|
||||||
|
Permissions
|
||||||
|
Linked Servers
|
||||||
|
Linked Servers
|
||||||
|
Login Mapping
|
||||||
|
Hasła
|
||||||
|
Database Mail
|
||||||
|
Accounts
|
||||||
|
Profiles
|
||||||
|
Test mail
|
||||||
|
Agent
|
||||||
|
Jobs
|
||||||
|
Schedules
|
||||||
|
Operators
|
||||||
|
Alerts
|
||||||
|
Proxies
|
||||||
|
7. Test Restore
|
||||||
|
|
||||||
|
Dla każdej bazy:
|
||||||
|
|
||||||
|
Backup
|
||||||
|
BACKUP DATABASE db
|
||||||
|
TO DISK='...'
|
||||||
|
WITH COMPRESSION,CHECKSUM;
|
||||||
|
|
||||||
|
Restore
|
||||||
|
RESTORE VERIFYONLY
|
||||||
|
|
||||||
|
VERIFYONLY
|
||||||
|
Restore Test
|
||||||
|
CHECKDB
|
||||||
|
8. Tydzień przed migracją
|
||||||
|
Freeze
|
||||||
|
Brak zmian schematu
|
||||||
|
Brak nowych jobów
|
||||||
|
Brak nowych loginów
|
||||||
|
Brak nowych linked serverów
|
||||||
|
Test aplikacji
|
||||||
|
Login
|
||||||
|
Odczyt
|
||||||
|
Zapis
|
||||||
|
Raporty
|
||||||
|
ETL
|
||||||
|
9. Cutover
|
||||||
|
Start
|
||||||
|
Aplikacje stop
|
||||||
|
ETL stop
|
||||||
|
Joby stop
|
||||||
|
Final Backup
|
||||||
|
Full
|
||||||
|
BACKUP DATABASE
|
||||||
|
|
||||||
|
Log
|
||||||
|
BACKUP LOG
|
||||||
|
|
||||||
|
Restore
|
||||||
|
Full
|
||||||
|
RESTORE DATABASE
|
||||||
|
WITH NORECOVERY
|
||||||
|
|
||||||
|
Logi
|
||||||
|
RESTORE LOG
|
||||||
|
|
||||||
|
Recovery
|
||||||
|
WITH RECOVERY
|
||||||
|
|
||||||
|
Security
|
||||||
|
Logins
|
||||||
|
Credentials
|
||||||
|
Linked Servers
|
||||||
|
Database Mail
|
||||||
|
Jobs
|
||||||
|
Import
|
||||||
|
Enable
|
||||||
|
10. Smoke Test
|
||||||
|
SQL
|
||||||
|
Wszystkie bazy ONLINE
|
||||||
|
Logins działają
|
||||||
|
Agent działa
|
||||||
|
Backup działa
|
||||||
|
Aplikacja
|
||||||
|
Login
|
||||||
|
Read
|
||||||
|
Write
|
||||||
|
Raport
|
||||||
|
ETL
|
||||||
|
Job Success
|
||||||
|
SSIS Success
|
||||||
|
Import działa
|
||||||
|
11. Performance Validation
|
||||||
|
|
||||||
|
Porównanie do starego serwera:
|
||||||
|
|
||||||
|
CPU
|
||||||
|
RAM
|
||||||
|
IOPS
|
||||||
|
PLE
|
||||||
|
Wait Stats
|
||||||
|
Blocking
|
||||||
|
12. Rollback
|
||||||
|
|
||||||
|
Warunki rollback:
|
||||||
|
|
||||||
|
aplikacja nie startuje
|
||||||
|
błędy logowania
|
||||||
|
utrata danych
|
||||||
|
krytyczne ETL nie działa
|
||||||
|
brak wydajności
|
||||||
|
Procedura
|
||||||
|
Stop nowego środowiska
|
||||||
|
Disable Jobs
|
||||||
|
Stop Applications
|
||||||
|
Powrót
|
||||||
|
Connection Strings -> stary SQL
|
||||||
|
Enable Source Jobs
|
||||||
|
Uruchom aplikacje
|
||||||
|
Test
|
||||||
|
Login
|
||||||
|
Read
|
||||||
|
Write
|
||||||
|
13. Najczęściej zapominane rzeczy
|
||||||
|
|
||||||
|
To jest moja „killer checklist”:
|
||||||
|
|
||||||
|
SQL Agent Schedules
|
||||||
|
SQL Agent Proxies
|
||||||
|
Linked Server Passwords
|
||||||
|
ODBC DSN
|
||||||
|
Windows Scheduled Tasks
|
||||||
|
Database Mail
|
||||||
|
TDE Certificates
|
||||||
|
Backup Jobs
|
||||||
|
Maintenance Plans
|
||||||
|
PowerShell scripts
|
||||||
|
SSIS packages
|
||||||
|
CLR Assemblies
|
||||||
|
Service Broker
|
||||||
|
Monitoring (Splunk)
|
||||||
|
Antivirus exclusions
|
||||||
|
Connection strings
|
||||||
|
Shared folders
|
||||||
|
Startup parameters
|
||||||
|
TempDB configuration
|
||||||
|
Trace flags
|
||||||
|
Local service accounts
|
||||||
|
|
||||||
|
Jeżeli migracja dotyczy typowego środowiska D&B (np. SQL 2016/2019 → SQL 2022), to ja dodatkowo zawsze dopisuję jeszcze sekcję „Post Migration 30 dni”, czyli kontrolę backupów, jobów, wzrostu baz, indeksów i ewentualne podniesienie compatibility level dopiero po zakończeniu okresu stabilizacji.
|
||||||
Reference in New Issue
Block a user