Digicomp sqlday migration

608 Aufrufe

Veröffentlicht am

Veröffentlicht in: Technologie
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
608
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
13
Aktionen
Geteilt
0
Downloads
2
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Digicomp sqlday migration

  1. 1. 1 DigiComp Academy AG SQLDAY 31.05.2012 Upgrade und Migration auf SQL Server 2012
  2. 2. 2 Alexander Jahn MS SQL Server Trainer und Consultant seit 1996 IT – Seminare und Projekte von KMU bis Konzern
  3. 3. 3 Zeitlicher Rahmen 13:00 Uhr – 13:45 Uhr
  4. 4. 4 Upgrade und Migration auf SQL Server 2012
  5. 5. 5 Sieben Gründe, diese Session zu besuchen:   •  Eine  Migra+on  ist  schon  in  Planung   •  Mentale  Vorbereitung  auf  das  Kommende   •  Um  Neuerungen  in  SQL  Server  2012  und   Unterschiede  zu  früheren  Versionen  zu  erfahren   Ø Tja,…  Pech!(Leider  eine  andere  Session)   •  Um  vor  den  BI-­‐Sessions  zu  flüchten   •  Um  bei  der  Migra+on  der  Produk+vsysteme  nicht   etwas  Spaß  mit  der  GL  haben  zu  müssen…   •  Um  jetzt  schon  Spaß  haben  zu  können  
  6. 6. 6 FERTIG !
  7. 7. 7 •  Noch Fragen ? •  Auf Wiedersehen ! •  Nee ! Scherz !
  8. 8. 8 Wo soll ich nur beginnen? Mein Ziel: n  Zeigen, wie umfangreich eine Migration sein kann n  Auf Stolperfallen hinweisen n  Verschiedene Migrationsmöglichkeiten auflisten n  Versuche so viel wie möglich zu zeigen und zu erwähnen (Vollständigkeit ist nicht gewährleistet)
  9. 9. 9 Wer von Ihnen hat eine gute Dokumentation über die vorhandenen SQL Server ? Bitte um Handzeichen !
  10. 10. Auf was ist alles zu achten ? Client  Anbindung  /  Datenbanken   User  /  Logins   sp_configure   Anwendungen   Schni[stellen  Compa+bility   Monitoring   (Filestream)   Replika+on   Server  Colla+on   Level   Tools   Shares   (ist  und  hat)   Wartung   SQL  Server  200x   Linked  Server   Hier  war mit  x  ε  {5,  8,  8R2}   dann  dieVirenscanner   Trace  Flags   Folie  voll…Lokale  WIN   Security   SQL  Server  2012   Repor+ng   Endpoints,  Snapshots   Konzept   f.a.k.a.  „Denali“   Services  User/Groups   Powershell,  XEvents   Recovery   Neue   Neues     Integra+on   Konzept   Services   Jobs   Box(en)?   OS?   XPs  /  DLLs   Ausfall   Neue   Analysis   Firewall?   Konzept   Storage?   Services   Alerts   SPs  (master)   Resource   Policy  Based   Mail   Group  Policies   CLRs   Governor   Management   Migra+onskonzept  /  Methoden  /  Projektplan  
  11. 11. 11 Spätestens jetzt sollte auch der letzte DBA einsehen, dass es sich wahrlich lohnt, eine gute Dokumentation zu haben!
  12. 12. 12 Migrationsmethoden
  13. 13. 13 Migrationsmethoden n Inplace Migration p = SQL Server 2012 „drüberbügeln“ p Lange Downtime p Point Of No Return: Konvertierung der Datenbanken p Geht nicht für x86 -> x64 p Ergebnis: SQL Server mit Migrationshintergrund Das möchte ich nicht !
  14. 14. 14 Migrationsmethoden n Side-by-Side Migration p Neue SQL Server 2012 Instanz (Named Instance) p Name = ComputernameInstance p Komplizierter im Cluster p Geht auch nicht für x86 -> x64 p Alte Produktionsmaschine wird verändert Also ich möchte das auch nicht !  
  15. 15. 15 Migrationsmethoden NEUER SERVER n  Nachteile p  Viel Arbeit! p  Kostet n  Vorteile p  „Saubere“ Umgebung p  Erlaubt ausführliche Tests p  Leichtere Implementierung neuer Technologien p  Kann während der Produktion vorbereitet werden p  Minimale Downtime p  Kein Point Of No Return Das  möchte  ich!  
  16. 16. 16 Planung
  17. 17. 17 „Eine Schlacht wird in der Planung gewonnen, nicht erst auf dem Feld.“ Und das bedeutet viel Detailarbeit.
  18. 18. 18 Planung n Neue Hardware kaufen? n Neues OS kaufen? n … SQL Server 2012 kaufen? n Welche Anwendungen/Systeme/User sind betroffen? n Was ist besonders business critical? (Testaufwand) n Werden alle Anwendungen vom Hersteller auf SQL2012 supported? n Benötigen irgendwelche Datenbanken irgendwelche oder gar nicht mehr vorhandene Kompatibilitätslevel (z.B. SQL2K)? n Maximale Downtime?
  19. 19. 19 Planung n Virtualisierung? n Konsolidierung? n OS p Neues OS (Win2008R2 / Windows 2012)? p x86 -> x64? p OS Konfiguration Performance-Einstellungen, Sicherheit (Benutzer, Gruppen, Gruppen Richtlinien,…) p Virenscanner – funktioniert der alte noch? p SQL Server Dienstkontoprivilegien
  20. 20. 20 Planung n Physikalisches Design (Storage) n SQL Server Konfiguration n Anwendungskonnektivität p Alter Clustername = Neuer Clustername? bzw. alter SQLServerName = Neuer SQLServerName? p DNS-Alias? n  Für Freigaben ggf. „DisableStrictNameChecking“ in Registry? (Im Win2k08-Cluster – Das geht so nicht mehr…) n Wie gesagt, …Detailarbeit
  21. 21. 21 SQL Server Installation
  22. 22. 22 SQL Server Installation n  Auf richtige Server Collation achten, relevant für tempdb (siehe http://www.collation-charts.org/mssql/) n  Auf Trace Flags achten die Einen gibt es nicht mehr (z.B. 4116), die Anderen braucht man vielleicht noch (z.B. 1118) n  Grundsätzlich auf alle bisher vorhandenen Serverobjekte achten, die in master oder msdb leben (Linked Server, Endpunkte, XEvents (neu machen!), Jobs, Alerts,…) n Resource Governor (Wohl dem, der Skripte hat) n Und wer keine Doku hat, der dokumentiert jetzt
  23. 23. Migrationsgedanken Client  Anbindung  /  Datenbanken   User  /  Logins   sp_configure   Anwendungen   Schni[stellen  Compa+bility   Monitoring   (Filestream)   Replika+on   Server  Colla+on   Level   Tools   Shares   (ist  und  hat)   Wartung   SQL  Server  200x   Linked  Server   mit  x  ε  {5,  8,  8R2}  Virenscanner   Trace  Flags  Lokale  WIN   Security   SQL  Server  2012   Repor+ng   Endpoints,  Snapshots   Konzept   f.a.k.a.  „Denali“   Services  User/Groups   Powershell,  Xevents   Recovery   Neue   Neues     Integra+on   Konzept   Services   Jobs   Box(en)?   OS?   XPs  /  DLLs   Ausfall   Neue   Analysis   Firewall?   Konzept   Storage?   Services   Alerts   SPs  (master)   Resource   Policy  Based   Mail   Group  Policies   CLRs   Governor   Management   Migra+onskonzept  /  Methoden  /  Projektplan  
  24. 24. 24 Datenbanken n Funktionieren die Stored Procedures, Views und Funktionen noch ? n Funktioniert die Applikation (der Anwendungscode) noch ? n Und all das andere…?
  25. 25. 25 Datenbanken Vorher bitte lesen: Deprecated Features in SQL Server 2012 http://msdn.microsoft.com/en-us/library/ms143729(v=sql.110).aspx Man nehme: SQL Server 2012 Upgrade Advisor Man gebe: Dem Upgrade Advisor einen Server Trace (Replay template), um den Anwendungscode zu checken
  26. 26. 26 Datenbanken Optionen die Migration durchzuführen p  Backup/Restore (Full/Diff/Log) p  Replikation p  Database Copy (Dateisystem oder Objekte) p  SAN detach/attach (point of no return) p  HW-basierter SAN Mirror-Snapshot p  „Manuelles Log Shipping“ n  Nach Go-offline die letzten Transaktionslogbackups restaurieren n  Wenige Minuten Ausfallzeit p  Datenbankspiegelung? n  Ausfallzeit nur wenige Sekunden! n  Spiegelung allerdings nur One Way von Alt nach Neu
  27. 27. 27 Datenbanken n  Was ist noch zu beachten p  Compatibility Level p  SQL Server 2000 Datenbanken müssen erst nach SQL2005/2008 angepasst und migriert werden Compatibility Level >= SQL2005! p  CLRs testen, in SQL Server enablen n  Ablauf (Bei Migrationsmethode DB – Mirroring) p  Spiegelung einrichten (Principal >=SQL2005) Zum Migrationszeitpunkt FAILOVER zu SQL Server 2012 p  Witness hat (in CTP3) keine Wirkung (Principal weg, Mirror geht nicht online… Bug oder Feature?) p  Spiegelung auf SQL Server 2012 entfernen p  Alle Clients irgendwie umleiten Ich würde die Backup / Restore Methode bevorzugen
  28. 28. DatenbankenReplikationn  Herausgeber (Publisher)n  Abonnent (Subscriber)n  Verteiler (Distributor)Komplexität hängt vom Szenario abhttp://msdn.microsoft.com/en-us/library/ms143699(v=sql.110).aspx
  29. 29. Datenbankenn  Logins sollten vorbereitet werden p  Lokale Windows Groups und User nicht vergessen p  Problem: „Default Database“ n  Datenbank (zur Not namensgleiche DummyDB) muss auf Zielserver vorhanden sein n  Restore-Sync für Mirror mit „replace“ wg. dbidn  Alles, was irgendwie zu den Datenbank-Anwendungen gehört, sollte auch vorbereitet werden (XPs, master-SPs, Jobs, Linked Server, Fileshares, CLR-enabled,…)
  30. 30. LoginsProblem:n  User-SIDs in (migrierten) Datenbanken referenzieren Login-SIDn  Kein Problem für Domain-Accounts (Domain-SID)n  Für SQL Server authentifizierte Logins muss Login-SID und DBUser-SID auf dem neuen Server identisch sein, sonst verwaiste Usern  Ratsam: Vor der Migration auf dem Quellsystem bereits verwaiste User recherchieren und ggf. säubern (drop user) 30
  31. 31. LoginsVerwaiste User erkennen mithttp://msdn.microsoft.com/de-de/library/ms174378.aspx USE  <database_name>;   GO;     sp_change_users_login  @Action=Report;   GO;            Besser:    Erst  gar  keine  verwaisten  User  auoommen  lassen.  
  32. 32. Logins CREATE LOGIN loginName { WITH <option_list1> | FROM <sources> } <option_list1> ::= PASSWORD = { password | hashed_password HASHED } [ MUST_CHANGE ] [ , <option_list2> [ ,... ] ] <option_list2> ::= SID = sid | DEFAULT_DATABASE = database | DEFAULT_LANGUAGE = language | CHECK_EXPIRATION = { ON | OFF} | CHECK_POLICY = { ON | OFF} | CREDENTIAL = credential_name
  33. 33. Loginsn  Create  Login  Script erzeugen aus: select  *  from  sys.server_principals   select  *  from  sys.syslogins    n  sp_help_revlogin http://support.microsoft.com/kb/246133n  Angepasstes von Alex Jahn verwenden (für einzelne Datenbanken)
  34. 34. Loginsn  Bitte nicht alle Logins übernehmen ! (…)  WHERE  p.name  not  in  (   sa,   ##MS_SQLResourceSigningCertificate##,   ##MS_SQLReplicationSigningCertificate##,   ##MS_SQLAuthenticatorCertificate##,   VORDEFINIERTAdministratoren,   NT-­‐AUTORITÄTSYSTEM,   SQL2005SQLServer2005MSSQLUser$SQL2005$MSSQLSERVER,   SQL2005SQLServer2005SQLAgentUser$SQL2005$MSSQLSERVER,   SQL2005SQLServer2005MSFTEUser$SQL2005$MSSQLSERVER,   ##MS_AgentSigningCertificate##,   SQLDOMsqlservice   )  
  35. 35. LoginsVorher:n  evtl. Windows local Groups / User anlegenn  Kann man auch Skript schreiben: p  Net user <user> <pwd> /add p  Net localgroup <group> /add p  Net localgroup <group> <user1 user2 … user(n)> /add
  36. 36. Anwendungenn  Unterstützt der Hersteller SQL Server 2012?n  Funktioniert die Konnektivität?n  Funktionieren die Anwendungsserver noch? (neue JDBC-Treiber….?)n  Funktioniert der Code wie gewohnt? Tipp: SQL Server Upgrade Assistant http://www.scalabilityexperts.com/tools/downloads.html Vergleicht Ausführung und Ergebnisse von Quell- und Zielserver basierend auf Profiler / Trace API
  37. 37. Schlussn  Eine Migration kann beliebig komplex seinn  Meine Empfehlung: Umzug auf neuen Servern  Gute Dokumentation ist notwendige Voraussetzungn  Es gibt viele hilfreiche Werkzeugen  Testen, testen, testen! (SQLIO)n  Performance nicht vergessen
  38. 38. Lesenn Upgrade to SQL Server 2012 http://msdn.microsoft.com/en-us/library/bb677622(v=sql.110).aspxn SQL Server 2012 What‘s New White-Paper http://www.microsoft.com/sqlserver/en/us/future-editions.aspxn Deprecated Database Engine Features in SQL Server 2012 http://technet.microsoft.com/en-us/library/ms143729(SQL.110).aspxp  SQL Server Upgrade Assistant http://www.scalabilityexperts.com/tools/downloads.html
  39. 39. 39 Vielen Dank für Ihre Aufmerksamkeit ! Fragen ?

×