Aug 10, 2026, 3:24 PM
This commit is contained in:
+506
-226
@@ -1,257 +1,537 @@
|
|||||||
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.
|
# SQL Server Standalone Migration Runbook
|
||||||
|
## SQL Server 2016/2019 → SQL Server 2022
|
||||||
|
|
||||||
Poniżej jest moja produkcyjna checklista DBA do migracji:
|
**Document Version:** 1.0
|
||||||
|
**Migration Type:** Side-by-Side Migration
|
||||||
|
**Source Server:** _________________
|
||||||
|
**Target Server:** _________________
|
||||||
|
**Migration Date:** _________________
|
||||||
|
**DBA:** _________________
|
||||||
|
|
||||||
SQL Server Standalone → SQL Server 2022 Standalone
|
---
|
||||||
|
|
||||||
1. Discovery / Assessment
|
# 1. Discovery / Assessment
|
||||||
Serwer źródłowy
|
|
||||||
System
|
## 1.1 Source Server Inventory
|
||||||
Nazwa serwera
|
|
||||||
Windows Version
|
### Operating System
|
||||||
Patch Level
|
|
||||||
CPU
|
- [ ] Server name documented
|
||||||
RAM
|
- [ ] Windows version documented
|
||||||
Dyski
|
- [ ] Windows patch level documented
|
||||||
Antivirus
|
- [ ] CPU configuration documented
|
||||||
Firewall rules
|
- [ ] Memory configuration documented
|
||||||
ODBC DSN
|
- [ ] Disk layout documented
|
||||||
Scheduled Tasks
|
- [ ] Antivirus exclusions documented
|
||||||
SQL Server
|
- [ ] Firewall rules documented
|
||||||
|
- [ ] ODBC DSNs documented
|
||||||
|
- [ ] Windows Scheduled Tasks documented
|
||||||
|
|
||||||
|
### SQL Server Instance
|
||||||
|
|
||||||
|
```sql
|
||||||
SELECT @@VERSION;
|
SELECT @@VERSION;
|
||||||
|
```
|
||||||
|
|
||||||
SQL Version
|
- [ ] SQL Version
|
||||||
SQL Edition
|
- [ ] SQL Edition
|
||||||
CU/SP
|
- [ ] SQL Build Number
|
||||||
Collation
|
- [ ] SQL CU/SP Level
|
||||||
Authentication Mode
|
- [ ] Collation
|
||||||
Max Server Memory
|
- [ ] Authentication Mode
|
||||||
MaxDOP
|
- [ ] Max Server Memory
|
||||||
Cost Threshold
|
- [ ] MaxDOP
|
||||||
Trace Flags
|
- [ ] Cost Threshold for Parallelism
|
||||||
TempDB Configuration
|
- [ ] Trace Flags
|
||||||
Backup Compression
|
- [ ] Startup Parameters
|
||||||
IFI
|
- [ ] TempDB Configuration
|
||||||
2. Inwentaryzacja baz
|
- [ ] Backup Compression Settings
|
||||||
|
- [ ] Instant File Initialization Status
|
||||||
|
|
||||||
Dla każdej bazy:
|
---
|
||||||
|
|
||||||
Nazwa
|
# 2. Database Inventory
|
||||||
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:
|
For each database collect:
|
||||||
|
|
||||||
|
- [ ] Database Name
|
||||||
|
- [ ] Size (Data / Log)
|
||||||
|
- [ ] Recovery Model
|
||||||
|
- [ ] Compatibility Level
|
||||||
|
- [ ] Database Owner
|
||||||
|
- [ ] AutoGrowth Settings
|
||||||
|
- [ ] TDE Enabled
|
||||||
|
- [ ] CDC Enabled
|
||||||
|
- [ ] Replication Enabled
|
||||||
|
- [ ] Service Broker
|
||||||
|
- [ ] FullText Search
|
||||||
|
- [ ] FileTables / FILESTREAM
|
||||||
|
- [ ] CLR Assemblies
|
||||||
|
- [ ] Query Store
|
||||||
|
- [ ] Database Scoped Credentials
|
||||||
|
|
||||||
|
### Database Report
|
||||||
|
|
||||||
|
```sql
|
||||||
|
SELECT
|
||||||
|
name,
|
||||||
|
compatibility_level,
|
||||||
|
recovery_model_desc,
|
||||||
|
state_desc
|
||||||
|
FROM sys.databases;
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 3. Instance Objects Inventory
|
||||||
|
|
||||||
|
## Security
|
||||||
|
|
||||||
|
- [ ] SQL Logins
|
||||||
|
- [ ] Windows Logins
|
||||||
|
- [ ] Server Roles
|
||||||
|
- [ ] Credentials
|
||||||
|
- [ ] Endpoints
|
||||||
|
- [ ] Certificates
|
||||||
|
- [ ] Server Permissions
|
||||||
|
|
||||||
|
## SQL Agent
|
||||||
|
|
||||||
|
- [ ] Jobs
|
||||||
|
- [ ] Job Steps
|
||||||
|
- [ ] Schedules
|
||||||
|
- [ ] Operators
|
||||||
|
- [ ] Alerts
|
||||||
|
- [ ] Proxies
|
||||||
|
|
||||||
|
## Integrations
|
||||||
|
|
||||||
|
- [ ] Linked Servers
|
||||||
|
- [ ] Linked Server Login Mappings
|
||||||
|
- [ ] Database Mail
|
||||||
|
- [ ] Maintenance Plans
|
||||||
|
- [ ] SSIS Packages
|
||||||
|
- [ ] PowerShell Scripts
|
||||||
|
- [ ] Batch Files
|
||||||
|
- [ ] External Interfaces
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 4. Target Server Preparation
|
||||||
|
|
||||||
|
## Windows Configuration
|
||||||
|
|
||||||
|
- [ ] Server built
|
||||||
|
- [ ] Joined to domain
|
||||||
|
- [ ] Latest approved patches installed
|
||||||
|
- [ ] Antivirus configured
|
||||||
|
- [ ] Firewall configured
|
||||||
|
- [ ] Monitoring agent installed
|
||||||
|
- [ ] Backup agent installed
|
||||||
|
|
||||||
|
## Storage Layout
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
```text
|
||||||
C: OS
|
C: OS
|
||||||
D: SQL Binaries
|
D: SQL Binaries
|
||||||
E: Data
|
E: Data
|
||||||
F: Log
|
F: Logs
|
||||||
G: TempDB
|
G: TempDB
|
||||||
H: Backup
|
H: Backups
|
||||||
|
```
|
||||||
|
|
||||||
Wolumeny utworzone
|
### Validation
|
||||||
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:
|
- [ ] Disk letters match design
|
||||||
|
- [ ] NTFS Allocation Unit Size = 64K
|
||||||
|
- [ ] Capacity validated
|
||||||
|
- [ ] Permissions configured
|
||||||
|
|
||||||
Backup
|
---
|
||||||
BACKUP DATABASE db
|
|
||||||
TO DISK='...'
|
|
||||||
WITH COMPRESSION,CHECKSUM;
|
|
||||||
|
|
||||||
Restore
|
# 5. SQL Server 2022 Installation
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
- [ ] SQL Engine installed
|
||||||
|
- [ ] SQL Agent installed
|
||||||
|
- [ ] Full Text Search installed (if required)
|
||||||
|
- [ ] Latest approved CU installed
|
||||||
|
|
||||||
|
## Initial Configuration
|
||||||
|
|
||||||
|
- [ ] TCP/IP enabled
|
||||||
|
- [ ] Static TCP Port configured
|
||||||
|
- [ ] Max Server Memory configured
|
||||||
|
- [ ] MaxDOP configured
|
||||||
|
- [ ] Cost Threshold configured
|
||||||
|
- [ ] IFI enabled
|
||||||
|
- [ ] TempDB configured
|
||||||
|
- [ ] Error Log retention configured
|
||||||
|
|
||||||
|
### Validation
|
||||||
|
|
||||||
|
```sql
|
||||||
|
SELECT @@VERSION;
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 6. Migrate Instance Objects
|
||||||
|
|
||||||
|
## Logins
|
||||||
|
|
||||||
|
- [ ] Script logins with SID
|
||||||
|
- [ ] Migrate server roles
|
||||||
|
- [ ] Migrate permissions
|
||||||
|
- [ ] Validate orphaned users
|
||||||
|
|
||||||
|
## Linked Servers
|
||||||
|
|
||||||
|
- [ ] Linked Servers migrated
|
||||||
|
- [ ] Login mappings configured
|
||||||
|
- [ ] Passwords restored
|
||||||
|
- [ ] Connectivity tested
|
||||||
|
|
||||||
|
## Database Mail
|
||||||
|
|
||||||
|
- [ ] Accounts created
|
||||||
|
- [ ] Profiles created
|
||||||
|
- [ ] Test email sent
|
||||||
|
|
||||||
|
## SQL Agent
|
||||||
|
|
||||||
|
- [ ] Jobs imported
|
||||||
|
- [ ] Schedules imported
|
||||||
|
- [ ] Operators imported
|
||||||
|
- [ ] Alerts imported
|
||||||
|
- [ ] Proxies imported
|
||||||
|
|
||||||
|
**Keep all jobs disabled until cutover.**
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 7. Migration Testing
|
||||||
|
|
||||||
|
## Restore Test
|
||||||
|
|
||||||
|
### Backup
|
||||||
|
|
||||||
|
```sql
|
||||||
|
BACKUP DATABASE <DatabaseName>
|
||||||
|
TO DISK = '<Path>'
|
||||||
|
WITH CHECKSUM, COMPRESSION;
|
||||||
|
```
|
||||||
|
|
||||||
|
### Verify
|
||||||
|
|
||||||
|
```sql
|
||||||
RESTORE VERIFYONLY
|
RESTORE VERIFYONLY
|
||||||
|
FROM DISK = '<Path>';
|
||||||
|
```
|
||||||
|
|
||||||
VERIFYONLY
|
### Restore
|
||||||
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
|
```sql
|
||||||
BACKUP LOG
|
RESTORE DATABASE <DatabaseName>
|
||||||
|
FROM DISK = '<Path>';
|
||||||
|
```
|
||||||
|
|
||||||
Restore
|
### Validation
|
||||||
Full
|
|
||||||
RESTORE DATABASE
|
|
||||||
WITH NORECOVERY
|
|
||||||
|
|
||||||
Logi
|
- [ ] Restore successful
|
||||||
RESTORE LOG
|
- [ ] CHECKDB successful
|
||||||
|
- [ ] Application connectivity successful
|
||||||
|
|
||||||
Recovery
|
---
|
||||||
WITH RECOVERY
|
|
||||||
|
|
||||||
Security
|
# 8. T-7 Days Activities
|
||||||
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:
|
## Change Freeze
|
||||||
|
|
||||||
CPU
|
- [ ] No schema changes
|
||||||
RAM
|
- [ ] No new jobs
|
||||||
IOPS
|
- [ ] No new linked servers
|
||||||
PLE
|
- [ ] No major application releases
|
||||||
Wait Stats
|
|
||||||
Blocking
|
|
||||||
12. Rollback
|
|
||||||
|
|
||||||
Warunki rollback:
|
## User Acceptance Testing
|
||||||
|
|
||||||
aplikacja nie startuje
|
- [ ] Login test
|
||||||
błędy logowania
|
- [ ] Read test
|
||||||
utrata danych
|
- [ ] Write test
|
||||||
krytyczne ETL nie działa
|
- [ ] Reporting test
|
||||||
brak wydajności
|
- [ ] ETL test
|
||||||
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
|
# 9. Cutover Activities
|
||||||
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.
|
## Start Change
|
||||||
|
|
||||||
|
- [ ] Open bridge call
|
||||||
|
- [ ] Confirm stakeholders available
|
||||||
|
- [ ] Confirm rollback owner
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Disable Source Activity
|
||||||
|
|
||||||
|
### SQL Agent
|
||||||
|
|
||||||
|
- [ ] Disable jobs
|
||||||
|
|
||||||
|
### Applications
|
||||||
|
|
||||||
|
- [ ] Stop application services
|
||||||
|
- [ ] Stop ETL processes
|
||||||
|
- [ ] Stop integrations
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Final Backup
|
||||||
|
|
||||||
|
### Full Backup
|
||||||
|
|
||||||
|
```sql
|
||||||
|
BACKUP DATABASE <DatabaseName>
|
||||||
|
TO DISK='<FullBackup>';
|
||||||
|
```
|
||||||
|
|
||||||
|
### Transaction Log Backup
|
||||||
|
|
||||||
|
```sql
|
||||||
|
BACKUP LOG <DatabaseName>
|
||||||
|
TO DISK='<LogBackup>';
|
||||||
|
```
|
||||||
|
|
||||||
|
### Validation
|
||||||
|
|
||||||
|
- [ ] Backup completed
|
||||||
|
- [ ] VERIFYONLY successful
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Restore to SQL 2022
|
||||||
|
|
||||||
|
### Restore Full
|
||||||
|
|
||||||
|
```sql
|
||||||
|
RESTORE DATABASE <DatabaseName>
|
||||||
|
FROM DISK='<FullBackup>'
|
||||||
|
WITH NORECOVERY;
|
||||||
|
```
|
||||||
|
|
||||||
|
### Restore Logs
|
||||||
|
|
||||||
|
```sql
|
||||||
|
RESTORE LOG <DatabaseName>
|
||||||
|
FROM DISK='<LogBackup>'
|
||||||
|
WITH NORECOVERY;
|
||||||
|
```
|
||||||
|
|
||||||
|
### Recover Database
|
||||||
|
|
||||||
|
```sql
|
||||||
|
RESTORE DATABASE <DatabaseName>
|
||||||
|
WITH RECOVERY;
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 10. Post-Restore Configuration
|
||||||
|
|
||||||
|
## Security
|
||||||
|
|
||||||
|
- [ ] Logins validated
|
||||||
|
- [ ] Credentials migrated
|
||||||
|
- [ ] Linked servers validated
|
||||||
|
- [ ] Database Mail validated
|
||||||
|
|
||||||
|
## SQL Agent
|
||||||
|
|
||||||
|
- [ ] Jobs enabled
|
||||||
|
- [ ] Schedules enabled
|
||||||
|
- [ ] Operators enabled
|
||||||
|
- [ ] Alerts enabled
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 11. Smoke Testing
|
||||||
|
|
||||||
|
## SQL Validation
|
||||||
|
|
||||||
|
- [ ] Databases ONLINE
|
||||||
|
- [ ] SQL Agent running
|
||||||
|
- [ ] Logins functional
|
||||||
|
- [ ] Backup path accessible
|
||||||
|
- [ ] Database Mail functional
|
||||||
|
|
||||||
|
### Validation Query
|
||||||
|
|
||||||
|
```sql
|
||||||
|
SELECT
|
||||||
|
name,
|
||||||
|
state_desc
|
||||||
|
FROM sys.databases;
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Application Validation
|
||||||
|
|
||||||
|
- [ ] Login works
|
||||||
|
- [ ] Read operations work
|
||||||
|
- [ ] Write operations work
|
||||||
|
- [ ] Reports work
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ETL Validation
|
||||||
|
|
||||||
|
- [ ] ETL jobs complete successfully
|
||||||
|
- [ ] SSIS packages execute successfully
|
||||||
|
- [ ] Data import/export successful
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 12. Performance Validation
|
||||||
|
|
||||||
|
Compare against source server baseline.
|
||||||
|
|
||||||
|
## Metrics
|
||||||
|
|
||||||
|
- [ ] CPU
|
||||||
|
- [ ] Memory
|
||||||
|
- [ ] Disk Latency
|
||||||
|
- [ ] Blocking
|
||||||
|
- [ ] Wait Statistics
|
||||||
|
- [ ] TempDB Usage
|
||||||
|
- [ ] Backup Throughput
|
||||||
|
|
||||||
|
### Wait Stats
|
||||||
|
|
||||||
|
```sql
|
||||||
|
SELECT TOP (20)
|
||||||
|
wait_type,
|
||||||
|
wait_time_ms
|
||||||
|
FROM sys.dm_os_wait_stats
|
||||||
|
ORDER BY wait_time_ms DESC;
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 13. Rollback Plan
|
||||||
|
|
||||||
|
## Rollback Criteria
|
||||||
|
|
||||||
|
Rollback if:
|
||||||
|
|
||||||
|
- [ ] Application unavailable
|
||||||
|
- [ ] Data inconsistency
|
||||||
|
- [ ] Critical login failures
|
||||||
|
- [ ] ETL failures
|
||||||
|
- [ ] Severe performance degradation
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Rollback Steps
|
||||||
|
|
||||||
|
### Stop Target Environment
|
||||||
|
|
||||||
|
- [ ] Disable target jobs
|
||||||
|
- [ ] Stop application services
|
||||||
|
|
||||||
|
### Redirect Applications
|
||||||
|
|
||||||
|
- [ ] Revert connection strings
|
||||||
|
- [ ] Revert DNS aliases
|
||||||
|
|
||||||
|
### Enable Source
|
||||||
|
|
||||||
|
- [ ] Enable source jobs
|
||||||
|
- [ ] Start source applications
|
||||||
|
|
||||||
|
### Validate
|
||||||
|
|
||||||
|
- [ ] Login successful
|
||||||
|
- [ ] Read successful
|
||||||
|
- [ ] Write successful
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 14. 24-Hour Validation
|
||||||
|
|
||||||
|
- [ ] Review SQL Error Logs
|
||||||
|
- [ ] Review Windows Event Logs
|
||||||
|
- [ ] Validate Backup Success
|
||||||
|
- [ ] Validate Job Success
|
||||||
|
- [ ] Validate Monitoring Alerts
|
||||||
|
- [ ] Validate ETL Execution
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 15. 30-Day Stabilization
|
||||||
|
|
||||||
|
## Daily Review
|
||||||
|
|
||||||
|
- [ ] Backup Status
|
||||||
|
- [ ] Failed Jobs
|
||||||
|
- [ ] Database Growth
|
||||||
|
- [ ] Disk Consumption
|
||||||
|
- [ ] Blocking Events
|
||||||
|
- [ ] Long Running Queries
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Post-Stabilization Tasks
|
||||||
|
|
||||||
|
- [ ] Raise compatibility level (if planned)
|
||||||
|
- [ ] Enable Query Store tuning (if planned)
|
||||||
|
- [ ] Remove old server references
|
||||||
|
- [ ] Update CMDB
|
||||||
|
- [ ] Update documentation
|
||||||
|
- [ ] Schedule source server decommission
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# DBA Killer Checklist
|
||||||
|
|
||||||
|
Most frequently forgotten migration items:
|
||||||
|
|
||||||
|
- [ ] SQL Agent Schedules
|
||||||
|
- [ ] SQL Agent Proxies
|
||||||
|
- [ ] Linked Server Passwords
|
||||||
|
- [ ] ODBC DSNs
|
||||||
|
- [ ] Scheduled Tasks
|
||||||
|
- [ ] Database Mail
|
||||||
|
- [ ] TDE Certificates
|
||||||
|
- [ ] Backup Jobs
|
||||||
|
- [ ] Maintenance Plans
|
||||||
|
- [ ] SSIS Packages
|
||||||
|
- [ ] CLR Assemblies
|
||||||
|
- [ ] Service Broker
|
||||||
|
- [ ] Monitoring Agents
|
||||||
|
- [ ] Antivirus Exclusions
|
||||||
|
- [ ] Shared Folders
|
||||||
|
- [ ] Connection Strings
|
||||||
|
- [ ] TempDB Configuration
|
||||||
|
- [ ] Trace Flags
|
||||||
|
- [ ] Startup Parameters
|
||||||
|
- [ ] Local Service Accounts
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Migration Success Criteria
|
||||||
|
|
||||||
|
Migration is successful when:
|
||||||
|
|
||||||
|
- [ ] All databases are ONLINE
|
||||||
|
- [ ] Applications connected successfully
|
||||||
|
- [ ] ETL processes completed successfully
|
||||||
|
- [ ] SQL Agent jobs functioning
|
||||||
|
- [ ] Backups functioning
|
||||||
|
- [ ] Monitoring functioning
|
||||||
|
- [ ] Performance acceptable
|
||||||
|
- [ ] Business owner sign-off received
|
||||||
Reference in New Issue
Block a user