SQL Server Grundlagen für  SharePoint Administratoren Steffen Krause Technical Evangelist Microsoft Deutschland GmbH http://blogs.technet.com/steffenk
Haftungsausschluss Microsoft kann für die Richtigkeit und Vollständigkeit der Inhalte in dieser Präsentation keine Haftung übernehmen. © 2007-2009 Microsoft Deutschland GmbH
Agenda Installation und Konfiguration Datenbanktools Sichern/Wiederherstellen Wartungsaufgaben SharePoint
Was brauche ich? SQL Server Editionen Express Kostenlos, max. DB-Größe 4GB, nur 32bit Workgroup Standard Enterprise Alle Features Evaluation Wie Enterprise, zeitlich beschränkt Kein Upgrade von/nach Evaluation möglich Installation einer Vollversion über Eval ist möglich Developer Wie Enterprise, lizenzrechtlich beschränkt Darf nicht für produktive Systeme eingesetzt werden Web Nur für Internet-Sites
Planung Hardwaresizing ist essenziell IO und Hauptspeicher sind kritischste Faktoren Planungstools der Hardwarehersteller können helfen: Dell:  http://www.dell.com/content/topics/global.aspx/tools/advisors/sql_advisor?c=us&cs=555&l=en&s=biz HP:  http://h71028.www7.hp.com/enterprise/cache/3887-0-0-98-121.html
Was brauche ich?  Hardware …  es kommt natürlich immer auf den Anwendungsfall an SQL Server sollte für Lastsysteme immer auf eigener Hardware laufen Hauptspeicher: Viel Noch mehr … wenn der gesamte aktive Teil der Datenbank in den Hauptspeicher passt reicht es aber Echter Hauptspeicher! -> 64bit bei >= 4GB Prozessor:  meist überschätzt Lizenzierung ist pro Sockel! Multicore spart also richtig Geld
Was brauche ich Platten Die am häufigsten unterdimensionierte Komponente Kleine Trivialdatenbanken können auf c: bleiben Ansonsten Grundregeln: SQL Server Maschinen brauchen mindestens 3 Sätze Platten (physikalisch getrennte Platten!) Betriebssystem Daten Log Oft auch separate Platten für tempdb sinnvoll …  und für lokales Backup
Was brauche ich Plattenlayout - Daten SQL Server Datenplatten machen Random IO Es geht also weder um Kapazität noch um Transferrate Es geht um IO Operationen pro Sekunde (IOPs) Dafür gibt es nur 2 Möglichkeiten (Schnelle) SSDs Viele Platten in einem RAID kleine, schnelle Platten RAID 10 ist meist gut, RAID 4/5/6 hat oft zu geringe zufällige Schreibrate SQL Server Log-Platten machen sequential writes Unbedingt von Daten trennen RAID 1 oft ausreichend, manchmal auch RAID 10 Nicht daran stören, dass Log-Platten fast leer sind
Einige Storageempfehlungen Unbedingt Korrektheit & Performance messen Sqliosim: Korrektheit, sqlio: Performance Siehe Webcast „SQL Server Storage Performanceanalyse“  Volume Alignment mit diskpart.exe Automatisch bei Windows Server 2008 NTFS Allocation Size 64kB Bei SAN: unbedingt auf Anzahl der Platten in den einzelnen LUNs achten! HBA Queue Depth oft zu klein Kein Sharing der Disks mit irgendwas Lokale Plattenkäfige (DAS) oft günstiger als SAN Bei Virtualisierung: Keine dynamischen Disks verwenden!  Siehe Whitepaper
Installation Systemvoraussetzungen (.NET, Installer 4.5,…) können getrennt installiert werden Parallelinstallation mehrerer Instanzen möglich (SQL 2000 SP4, SQL 2005, SQL 2008) Aber wegen Kampf um  Hauptspeicher und IO nicht  für Lastsysteme empfohlen Nur die notwendigen  Komponenten installieren:
Installation 2 Das SQL Server Dienstkonto sollte  kein Administrator  in Windows sein Sortierung Wenn nichts anderes von der Anwendung erwartet: Latin1_General_CI_AS Daten, Log und Backup-Verzeichnisse bei der Installation festlegen! Geht nur bei SQL Server 2008 Dienstkonto muss Schreibrechte haben Beispiel-Datenbanken und Codebeispiele sind in SQL 2008 NICHT mehr enthalten http://www.codeplex.com/MSFTDBProdSamples
Agenda Installation und Konfiguration Datenbanktools Sichern/Wiederherstellen Wartungsaufgaben SharePoint
Management Studio SSMS 2008 kann auch SQL 2000 & 2005 verwalten (außer Analysis Services 2000) Integriertes Management Database Engine, Analysis Services,  Reporting Services, SQL Server Mobile,  Integration Services auch für ältere SQL Server Versionen (außer SSAS vor 2005) Server-Reports und Server-Dashboard Komfortable Editoren und Templates Integration in die Visual Studio-Umgebung Versionskontrolle, Teamsupport T-SQL Debugger in SSMS 2008 Verwaltung vieler Server und vieler Objekte Einfachste Durchführung von Routine-Aufgaben
Wie komme ich dahin? Configuration Manager 3 Teile: Dienstkonfiguration Startparameter, Trace Flags Systemverzeichnisse Dienstkonto nur hier ändern! Server-Netzwerkkonfiguration Aktivierte Protokolle (Express & Developer Standard nur lokal) Kommunikations-Verschlüsselung  ohne und mit Zertifikat Client-Netzwerkkonfiguration Protokolle mit Reihenfolge Aliase, damit man später besser umziehen kann
Weitere Tools Immer die Tools der neuesten installierten SQL Server Version verwenden! (Außer BIDS für Reporting Services) Sqlcmd – Kommandozeilenzugriff Kann mit „Dedicated Admin Connection“ auf ausgelasteten Server verbinden Profiler Überwachung der Datenbankaktivität Ereignisse sorgsam auswählen, kann sehr viel Last erzeugen Auf Testmaschine üben! Datenbank(modul)-Optimierungsratgeber Schlägt Indizes, Partitionierung u.a. auf Basis der DB-Last vor Nicht blind implementieren! Business Intelligence Development Studio (BIDS) Visual Studio mit Addins für Reporting, Analysis, Integration Services
Management Tools Demo
Agenda Installation und Konfiguration Datenbanktools Sichern/Wiederherstellen Wartungsaufgaben SharePoint
Sicherung und Wiederherstellung Vor allem anderen: Haben Sie einen Notfallplan (im Detail) und testen sie ihn!
Datenbankstruktur Bis zu 32,767 Datenbanken pro Instanz Bis zu 32,767 Dateien pro Datenbank (incl. Log) Datendateien gruppiert in Dateigruppen Mindestens 2 Dateien: Daten & Log MDF = Primary (or  M AIN)  D ata  F ile NDF =  N on-Primary  D ata  F ile LDF =  L og  D ata  F ile Nur eine Datei für  Transaktionslog Data File *.mdf (1) *.ndf (0- n ) Log File *.ldf (1- n ) Datenbank SQL Server Instanz  1 SQL Server Instanz  2 … Bis zu 64 Instanzen pro Server/Betriebssystem
Eine richtige Datenbank oder: Warum der ganze Aufwand? ACID Atomicity (Atomarität) Transaktionen werden ganz oder gar nicht ausgeführt. Transaktion ist elementare Operation, kann nicht von anderen Operationen unterbrochen werden Consistency (Konsistenz) Transaktion hinterlassen nach Beendigung einen konsistenten Datenzustand, falls die Datenbank vor der Transaktion auch konsistent war Isolation (Isoliertheit) In Ausführung befindliche Transaktionen können sich nicht gegenseitig beeinflussen Durability (Dauerhaftigkeit) Die Wirkung einer erfolgreich abgeschlossenen Transaktion bleibt dauerhaft (persistent) in der Datenbank erhalten, insbesondere auch nach Systemabstürzen Quelle: Wikipedia (stark gekürzt)
Sichern und Wiederherstellen Wiederherstellungsmodelle Vollständig Alle schreibenden Operationen werden im Transaktionslog protokolliert Wiederherstellung zum aktuellen Zeitpunkt oder zu jedem beliebigen Zeitpunkt (point in time) Massenprotokolliert Bulk Copy (BCP), SELECT … INTO, CREATE INDEX, WRITETEXT, UPDATETEXT werden nur minimal im Transaktionslog protokolliert  In Transaktionsprotokollsicherung Datenseiten dieser Vorgänge enthalten Kein Point in Time Restore Einfach Transaktionsprotokoll wird abgeschnitten, wenn Datenseiten geschrieben sind Massenprotokollierte Vorgänge minimal protokolliert Restore nur auf den Zeitpunkt der Sicherung
Grundlagen der Sicherung Vollständig und Massenprotokolliert: Sie müssen Log-Sicherungen machen Oft bis sehr oft! Hält Log klein Vollständige Kette von Log-Backups ist essentiell Einfach: Sie können keine Log-Sicherungen machen Datenbanken und Sicherungen haben auf allen Plattformen (x86, x64, IA64) dasselbe Format und sind austauschbar Sicherungen von alter Version können auf neuer Version wiederhergestellt werden  z.B. Sicherung  auf SQL Server 2000, Wiederherstellung auf SQL Server 2008 Nicht umgekehrt! Upgrade erfolgt beim Restore Sicherungen können immer auf höherwertigen Editionen wiederhergestellt werden Im Notfall Developer Edition für Restore verwenden
Best Practices Verwenden Sie  immer  Online-Backups Ausnahme: Snapshot-Backups bestimmter SAN-Hersteller sind ebenso gut (VSS-Support) BACKUP hält keine Locks (Sperren), Transaktionen warten also nicht Verwenden Sie Datenbankwartungspläne oder UI + Script-Action zur Erstellung von Backup Jobs Lesen Sie Books Online vor dem Erstellen eines Backup-Plans und vor einem Restore Behalten Sie mehr als eine vollständige Sicherung (Großvater/Vater/Sohn Prinzip) Bei vollständig/massenprotokolliert + komplette Log-Sicherungen  Master und msdb sichern!
Ablauf eines Restore Vollständiges Wiederherstellungsmodell Vor der Wiederherstellung IMMER zuerst ein Log Tail Backup! (außer bei einfach) Wenn Datenbank Online: BACKUP LOG … WITH COPY_ONLY Wenn Datenbank Offline BACKUP LOG .. WITH NO_TRUNCATE Entspricht COPY_ONLY + CONTINUE_AFTER_ERROR Vollständiges Backup wiederherstellen …  WITH NORECOVERY Eventuelle differenzielle Backups wiederherstellen …  WITH NORECOVERY Alle Log-Backups ab dem letzten gerade wiederhergestellten vollständigen/differenziellen Backup wiederherstellen …  WITH NORECOVERY In 1. erstelltes Log Tail Backup wiederherstellen …  WITH RECOVERY
Sichern/Wiederherstellen Demo
Agenda Installation und Konfiguration Datenbanktools Sichern/Wiederherstellen Wartungsaufgaben SharePoint
Grundlegende Wartungsaufgaben Dateigrößen überwachen Sichern und Überprüfung der Sicherung Überprüfung der Protokolle  Windows-Ereignisanzeige SQL Server Protokolle Defragmentierung bzw. Neuerstellung  der Indizes Ggf Statistiken aktualisieren Datenbankkonsistenz prüfen Performance optimieren Aber das ist ein anderes Thema Alle Änderungen dokumentieren
Agenda Installation und Konfiguration Datenbanktools Sichern/Wiederherstellen Wartungsaufgaben SharePoint
SharePoint Kein Zugriff auf DBs außer durch SharePoint! Trennung von SharePoint- und Datenbankserver Datenbankserver 64bit mit viel RAM Gigabit Ethernet zwischen SQL Server und Frontend-Servern Hochverfügbarkeit:  Cluster empfohlen,  Mirroring für redundante Rechenzentren
Software-Grenzen ‘ Harte’ Limits... Es gibt keine! ‘ Weiche’ Grenzen 8 Web-Frontends Pro Datenbankserver 100 Inhaltsdatenbanken pro Webanwendung* 50,000 Websitesammlungen pro Inhaltsdatenbank 100 GB Daten pro Inhaltsdatenbank Hauptsächlich bedingt durch Backup/Restorezeit und Wartungsfenster * Nur 32 Bit
Wenn es mehr als 100GB pro Datenbank sein sollen... I/O Subsystem auf angemessene Performance testen Möglichst nur eine Websitesammlung pro Inhaltsdatenbank, die über 100GB wachsen darf Backuplösungen gründlich testen und Backup/Restorezeiten ermitteln; wenn möglichst effiziente Lösungen wie differenzielle Backups oder DPM 2007 nutzen
Verwalten der Datenbankgröße in SharePoint Im zentral verwalteten Modell Vor der Erstellung einer Websitesammlung überlegen, ob eine eigene Inhaltsdatenbank erstell werden soll Wenn Benutzer Websitesammlungen erstellen dürfen Quotas planen und auf die Websites anwenden Anzahl der Sites pro Inhaltsdatenbank begrenzen Papierkorb und eventuell notwendige Quotaerhöhung in Betracht ziehen
SQL Server Platten für SharePoint Normalerweise: Mehr Platten = bessere Performance RAID 5 nur akzeptabel für Datenbanken mit geringem Schreib-Anteil (statische Publishing-Portale), ansonsten RAID 1 oder RAID 10 Grobe Daumenregel bei normaler Nutzung: 0 ,75 bis 1 IO/s pro GB Inhaltsdatenbank, 1,5 bis 2 für tempdb, Suche und Log Besser: Bei vorhandener Last messen! SQLIO zur Kapazitätsmessung des IO-Systems verwenden
Platzierung und Priorisierung der Datenbankdateien Möglichst tempdb auf RAID 10 Array Daten und Logs auf physisch separate Platten! Dedizierte Platten für Suche IO-Anforderungen (absteigend sortiert)  Tempdb Daten & Logs Datenbank-Transaktionslogs Suchdatenbank Inhaltsdatenbanken Bei Publishing-Sites, die größtenteils readonly sind ggf. Daten vor Log
Wiederherstellungsmodelle Wiederherstellungsmodell Vollständig, wenn: Eine Sicherungsstrategie vorgesehen ist, die regelmäßige (oft: stündliche) Logsicherungen beinhaltet Hochverfügbarkeit wie Log Shipping oder Database Mirroring verwendet werden soll Ansonsten Wiederherstellungsmodell Einfach verwenden um IOs zu sparen und Verwaltung zu vereinfachen model-Datenbank mit den entsprechenden Optionen anpassen damit die Einstellungen nicht für jede Datenbank manuell vorgenommen werden müssen
Datenbankgröße und Optionen Inhaltsdatenbanken in Zielgröße anlegen Erst in Management Studio oder T-SQL anlegen, dann zu SharePoint hinzufügen Optionen Sinnvolle Größe für Daten und Log Daten und Log auf unterschiedlichen Datenträgern Sinnvolle Größe für Autogrow  Autogrow aktiviert lassen Collation: Latin1_General_CI_AS_KS_WS Wiederherstellungsmodell Volltextindex aus Page Verify Checksum Skript z.B. hier:  http://sharepointusergroup.corasworks.net/HOU/Lists/Speakers%20List/Attachments/17/SharePointScalabilityWhitepaper.pdf
Inhaltsdatenbanken anlegen Demo
Performanceüberwachung Server (SQL) Processor: % Processor Time: _Total Unter 50-75% außer zu Spitzenzeiten System: Processor Queue Length: Sollte unter 2 * Anzahl Cores sein Memory: Pages/sec: (N/A) Sollte unter 100 sein Disks Transfer/sec für Durchsatz-Trends Disk sec/Read / Disk sec/Write für Latenz (IO Bottleneck) Mindestens 25% freier Platz auf allen Platten
Scaling Up kontra Scaling Out oder... 2.5TB 2.5TB 2.5TB SCALE OUT   2.5TB SCALE   UP    2.5TB 2.5TB
Scaling Up kontra Scaling Out Scale Out Scale Up Vorteile Bessere Performance Leichter zu verwalten Flexibler Preiswerter Nachteile Teurer Guter Systementwurf ist essenziell Schwieriger zu verwalten Single Point of Failure
Datenbankwartung Guter Artikel:  http://www.sqlskills.com/BLOGS/KIMBERLY/post/Database-Maintenance-Best-Practices-Part-I-e28093-clarifying-ambiguous-recommendations-for-Sharepoint.aspx   Empfohlen Vor Implementierung von Wartungsplänen: Datensicherung erstellen und testen! Datenbank-Konsistenzprüfung: DBCC CHECKDB sys.dm_db_index_physical_stats DMV verwenden um Fragmentierung zu prüfen Bei hoher Fragmentierung Index reorganisieren oder neu erstellen dbo.proc_DefragIndexes aus KB943345
Datenbankwartung Nicht empfohlen Indizes droppen und neu erstellen Datenbankwartung während der Geschäftszeit Update Statistics – das wird automatisch gemacht Datenbanken verkleinern wenn nicht absolut notwendig
Ressourcen Webcasts http://www.microsoft.com/germany/technet/webcasts Blog Steffen Krause http://blogs.technet.com/steffenk SQL Customer Advisory Team http://www.sqlcat.com Books Online, aktuellste Version! Storage Design Whitepaper http://technet.microsoft.com/en-us/library/cc966414.aspx SQL Server/SharePoint Whitepaper http://technet.microsoft.com/de-de/library/cc263261.aspx  (kein Shrink im Wartungsplan!!!) http://technet.microsoft.com/en-us/library/cc262731.aspx Defragmentieren der Datenbanken http://support.microsoft.com/kb/943345/
TechNet/MSDN Webcast DVD Jahresedition 2008 TechNet/MSDN Webcast DVD – Jahresedition 2008 Mit Webcasts aus den Bereichen MSDN und TechNet  Die DVD-Edition umfasst insgesamt mehr als 200 Webcasts Eine Auswahl der Themen aus dem TechNet Bereich: Virtualisierung Microsoft SQL Server Webcasts zur Microsoft System Center Familie Limitierte Auflage / Bestellpreis € 19,90 http://www.microsoft.com/germany/aktionen/webcastdvd/default.mspx
Weitere Informationen + aktuelle Event Hinweise TechNet Online Website www.microsoft.com/germany/technet TechNet Newsflash – Email Newsletter  www.microsoft.com/germany/technet/newsflash TechNet Library http://technet.microsoft.com/de-de/library/default.aspx Neu: Webcast DVD Jahresedition 2008 Alle deutschen TechNet Webcasts von MSDN/TechNet aus dem Jahr  2008 Limitierte Auflage / Bestellpreis 19,90€ / Insgesamt über 200 Webcasts  http://www.microsoft.com/germany/aktionen/webcastdvd/default.mspx
TechNet Academy Training & Zertifizierungsplattform für IT Pros in Deutschland Angebote von Certified Partner for Learning Solutions Trainingspakete inklusive Original-Microsoft-Schulungsunterlagen und Prüfungsvouchers www.microsoft.com/germany/technet/academy
TechNet Academy Spezialangebote mit MOC und Zertifizierung von Certified Partner for Learning  Solutions  Aktuelle Informationen
Watch & Win Webcasts Anmelden Teilnehmen Feedbackbogen ausfüllen …  und mit ein bisschen Glück gewinnen! Das nächste Watch & Win Webcast: 13.03.2009 System Center Talk – Systemverwaltung in der Praxis 21.04.2009 SQL Server 2009- Grundlagen Teil 5 29.04.2009 SQL Server 2009- Grundlagen Teil 6 Was Sie gewinnen können:  13.03.2009: 2 *„Microsoft Office Professional 2007“ Versionen  (Bitte beachten Sie: Hierbei handelt es sich um „Upgrade“ Versionen) 21.04.2009:3*Age of Empires III ( Games for Windows)  29.04.2009:3*Zoo Tycoon II (Games for Windows)
 

Sql Server GrundlagenfüR Share Point Admins

  • 1.
    SQL Server Grundlagenfür SharePoint Administratoren Steffen Krause Technical Evangelist Microsoft Deutschland GmbH http://blogs.technet.com/steffenk
  • 2.
    Haftungsausschluss Microsoft kannfür die Richtigkeit und Vollständigkeit der Inhalte in dieser Präsentation keine Haftung übernehmen. © 2007-2009 Microsoft Deutschland GmbH
  • 3.
    Agenda Installation undKonfiguration Datenbanktools Sichern/Wiederherstellen Wartungsaufgaben SharePoint
  • 4.
    Was brauche ich?SQL Server Editionen Express Kostenlos, max. DB-Größe 4GB, nur 32bit Workgroup Standard Enterprise Alle Features Evaluation Wie Enterprise, zeitlich beschränkt Kein Upgrade von/nach Evaluation möglich Installation einer Vollversion über Eval ist möglich Developer Wie Enterprise, lizenzrechtlich beschränkt Darf nicht für produktive Systeme eingesetzt werden Web Nur für Internet-Sites
  • 5.
    Planung Hardwaresizing istessenziell IO und Hauptspeicher sind kritischste Faktoren Planungstools der Hardwarehersteller können helfen: Dell: http://www.dell.com/content/topics/global.aspx/tools/advisors/sql_advisor?c=us&cs=555&l=en&s=biz HP: http://h71028.www7.hp.com/enterprise/cache/3887-0-0-98-121.html
  • 6.
    Was brauche ich? Hardware … es kommt natürlich immer auf den Anwendungsfall an SQL Server sollte für Lastsysteme immer auf eigener Hardware laufen Hauptspeicher: Viel Noch mehr … wenn der gesamte aktive Teil der Datenbank in den Hauptspeicher passt reicht es aber Echter Hauptspeicher! -> 64bit bei >= 4GB Prozessor: meist überschätzt Lizenzierung ist pro Sockel! Multicore spart also richtig Geld
  • 7.
    Was brauche ichPlatten Die am häufigsten unterdimensionierte Komponente Kleine Trivialdatenbanken können auf c: bleiben Ansonsten Grundregeln: SQL Server Maschinen brauchen mindestens 3 Sätze Platten (physikalisch getrennte Platten!) Betriebssystem Daten Log Oft auch separate Platten für tempdb sinnvoll … und für lokales Backup
  • 8.
    Was brauche ichPlattenlayout - Daten SQL Server Datenplatten machen Random IO Es geht also weder um Kapazität noch um Transferrate Es geht um IO Operationen pro Sekunde (IOPs) Dafür gibt es nur 2 Möglichkeiten (Schnelle) SSDs Viele Platten in einem RAID kleine, schnelle Platten RAID 10 ist meist gut, RAID 4/5/6 hat oft zu geringe zufällige Schreibrate SQL Server Log-Platten machen sequential writes Unbedingt von Daten trennen RAID 1 oft ausreichend, manchmal auch RAID 10 Nicht daran stören, dass Log-Platten fast leer sind
  • 9.
    Einige Storageempfehlungen UnbedingtKorrektheit & Performance messen Sqliosim: Korrektheit, sqlio: Performance Siehe Webcast „SQL Server Storage Performanceanalyse“ Volume Alignment mit diskpart.exe Automatisch bei Windows Server 2008 NTFS Allocation Size 64kB Bei SAN: unbedingt auf Anzahl der Platten in den einzelnen LUNs achten! HBA Queue Depth oft zu klein Kein Sharing der Disks mit irgendwas Lokale Plattenkäfige (DAS) oft günstiger als SAN Bei Virtualisierung: Keine dynamischen Disks verwenden! Siehe Whitepaper
  • 10.
    Installation Systemvoraussetzungen (.NET,Installer 4.5,…) können getrennt installiert werden Parallelinstallation mehrerer Instanzen möglich (SQL 2000 SP4, SQL 2005, SQL 2008) Aber wegen Kampf um Hauptspeicher und IO nicht für Lastsysteme empfohlen Nur die notwendigen Komponenten installieren:
  • 11.
    Installation 2 DasSQL Server Dienstkonto sollte kein Administrator in Windows sein Sortierung Wenn nichts anderes von der Anwendung erwartet: Latin1_General_CI_AS Daten, Log und Backup-Verzeichnisse bei der Installation festlegen! Geht nur bei SQL Server 2008 Dienstkonto muss Schreibrechte haben Beispiel-Datenbanken und Codebeispiele sind in SQL 2008 NICHT mehr enthalten http://www.codeplex.com/MSFTDBProdSamples
  • 12.
    Agenda Installation undKonfiguration Datenbanktools Sichern/Wiederherstellen Wartungsaufgaben SharePoint
  • 13.
    Management Studio SSMS2008 kann auch SQL 2000 & 2005 verwalten (außer Analysis Services 2000) Integriertes Management Database Engine, Analysis Services, Reporting Services, SQL Server Mobile, Integration Services auch für ältere SQL Server Versionen (außer SSAS vor 2005) Server-Reports und Server-Dashboard Komfortable Editoren und Templates Integration in die Visual Studio-Umgebung Versionskontrolle, Teamsupport T-SQL Debugger in SSMS 2008 Verwaltung vieler Server und vieler Objekte Einfachste Durchführung von Routine-Aufgaben
  • 14.
    Wie komme ichdahin? Configuration Manager 3 Teile: Dienstkonfiguration Startparameter, Trace Flags Systemverzeichnisse Dienstkonto nur hier ändern! Server-Netzwerkkonfiguration Aktivierte Protokolle (Express & Developer Standard nur lokal) Kommunikations-Verschlüsselung ohne und mit Zertifikat Client-Netzwerkkonfiguration Protokolle mit Reihenfolge Aliase, damit man später besser umziehen kann
  • 15.
    Weitere Tools Immerdie Tools der neuesten installierten SQL Server Version verwenden! (Außer BIDS für Reporting Services) Sqlcmd – Kommandozeilenzugriff Kann mit „Dedicated Admin Connection“ auf ausgelasteten Server verbinden Profiler Überwachung der Datenbankaktivität Ereignisse sorgsam auswählen, kann sehr viel Last erzeugen Auf Testmaschine üben! Datenbank(modul)-Optimierungsratgeber Schlägt Indizes, Partitionierung u.a. auf Basis der DB-Last vor Nicht blind implementieren! Business Intelligence Development Studio (BIDS) Visual Studio mit Addins für Reporting, Analysis, Integration Services
  • 16.
  • 17.
    Agenda Installation undKonfiguration Datenbanktools Sichern/Wiederherstellen Wartungsaufgaben SharePoint
  • 18.
    Sicherung und WiederherstellungVor allem anderen: Haben Sie einen Notfallplan (im Detail) und testen sie ihn!
  • 19.
    Datenbankstruktur Bis zu32,767 Datenbanken pro Instanz Bis zu 32,767 Dateien pro Datenbank (incl. Log) Datendateien gruppiert in Dateigruppen Mindestens 2 Dateien: Daten & Log MDF = Primary (or M AIN) D ata F ile NDF = N on-Primary D ata F ile LDF = L og D ata F ile Nur eine Datei für Transaktionslog Data File *.mdf (1) *.ndf (0- n ) Log File *.ldf (1- n ) Datenbank SQL Server Instanz 1 SQL Server Instanz 2 … Bis zu 64 Instanzen pro Server/Betriebssystem
  • 20.
    Eine richtige Datenbankoder: Warum der ganze Aufwand? ACID Atomicity (Atomarität) Transaktionen werden ganz oder gar nicht ausgeführt. Transaktion ist elementare Operation, kann nicht von anderen Operationen unterbrochen werden Consistency (Konsistenz) Transaktion hinterlassen nach Beendigung einen konsistenten Datenzustand, falls die Datenbank vor der Transaktion auch konsistent war Isolation (Isoliertheit) In Ausführung befindliche Transaktionen können sich nicht gegenseitig beeinflussen Durability (Dauerhaftigkeit) Die Wirkung einer erfolgreich abgeschlossenen Transaktion bleibt dauerhaft (persistent) in der Datenbank erhalten, insbesondere auch nach Systemabstürzen Quelle: Wikipedia (stark gekürzt)
  • 21.
    Sichern und WiederherstellenWiederherstellungsmodelle Vollständig Alle schreibenden Operationen werden im Transaktionslog protokolliert Wiederherstellung zum aktuellen Zeitpunkt oder zu jedem beliebigen Zeitpunkt (point in time) Massenprotokolliert Bulk Copy (BCP), SELECT … INTO, CREATE INDEX, WRITETEXT, UPDATETEXT werden nur minimal im Transaktionslog protokolliert In Transaktionsprotokollsicherung Datenseiten dieser Vorgänge enthalten Kein Point in Time Restore Einfach Transaktionsprotokoll wird abgeschnitten, wenn Datenseiten geschrieben sind Massenprotokollierte Vorgänge minimal protokolliert Restore nur auf den Zeitpunkt der Sicherung
  • 22.
    Grundlagen der SicherungVollständig und Massenprotokolliert: Sie müssen Log-Sicherungen machen Oft bis sehr oft! Hält Log klein Vollständige Kette von Log-Backups ist essentiell Einfach: Sie können keine Log-Sicherungen machen Datenbanken und Sicherungen haben auf allen Plattformen (x86, x64, IA64) dasselbe Format und sind austauschbar Sicherungen von alter Version können auf neuer Version wiederhergestellt werden z.B. Sicherung auf SQL Server 2000, Wiederherstellung auf SQL Server 2008 Nicht umgekehrt! Upgrade erfolgt beim Restore Sicherungen können immer auf höherwertigen Editionen wiederhergestellt werden Im Notfall Developer Edition für Restore verwenden
  • 23.
    Best Practices VerwendenSie immer Online-Backups Ausnahme: Snapshot-Backups bestimmter SAN-Hersteller sind ebenso gut (VSS-Support) BACKUP hält keine Locks (Sperren), Transaktionen warten also nicht Verwenden Sie Datenbankwartungspläne oder UI + Script-Action zur Erstellung von Backup Jobs Lesen Sie Books Online vor dem Erstellen eines Backup-Plans und vor einem Restore Behalten Sie mehr als eine vollständige Sicherung (Großvater/Vater/Sohn Prinzip) Bei vollständig/massenprotokolliert + komplette Log-Sicherungen Master und msdb sichern!
  • 24.
    Ablauf eines RestoreVollständiges Wiederherstellungsmodell Vor der Wiederherstellung IMMER zuerst ein Log Tail Backup! (außer bei einfach) Wenn Datenbank Online: BACKUP LOG … WITH COPY_ONLY Wenn Datenbank Offline BACKUP LOG .. WITH NO_TRUNCATE Entspricht COPY_ONLY + CONTINUE_AFTER_ERROR Vollständiges Backup wiederherstellen … WITH NORECOVERY Eventuelle differenzielle Backups wiederherstellen … WITH NORECOVERY Alle Log-Backups ab dem letzten gerade wiederhergestellten vollständigen/differenziellen Backup wiederherstellen … WITH NORECOVERY In 1. erstelltes Log Tail Backup wiederherstellen … WITH RECOVERY
  • 25.
  • 26.
    Agenda Installation undKonfiguration Datenbanktools Sichern/Wiederherstellen Wartungsaufgaben SharePoint
  • 27.
    Grundlegende Wartungsaufgaben Dateigrößenüberwachen Sichern und Überprüfung der Sicherung Überprüfung der Protokolle Windows-Ereignisanzeige SQL Server Protokolle Defragmentierung bzw. Neuerstellung der Indizes Ggf Statistiken aktualisieren Datenbankkonsistenz prüfen Performance optimieren Aber das ist ein anderes Thema Alle Änderungen dokumentieren
  • 28.
    Agenda Installation undKonfiguration Datenbanktools Sichern/Wiederherstellen Wartungsaufgaben SharePoint
  • 29.
    SharePoint Kein Zugriffauf DBs außer durch SharePoint! Trennung von SharePoint- und Datenbankserver Datenbankserver 64bit mit viel RAM Gigabit Ethernet zwischen SQL Server und Frontend-Servern Hochverfügbarkeit: Cluster empfohlen, Mirroring für redundante Rechenzentren
  • 30.
    Software-Grenzen ‘ Harte’Limits... Es gibt keine! ‘ Weiche’ Grenzen 8 Web-Frontends Pro Datenbankserver 100 Inhaltsdatenbanken pro Webanwendung* 50,000 Websitesammlungen pro Inhaltsdatenbank 100 GB Daten pro Inhaltsdatenbank Hauptsächlich bedingt durch Backup/Restorezeit und Wartungsfenster * Nur 32 Bit
  • 31.
    Wenn es mehrals 100GB pro Datenbank sein sollen... I/O Subsystem auf angemessene Performance testen Möglichst nur eine Websitesammlung pro Inhaltsdatenbank, die über 100GB wachsen darf Backuplösungen gründlich testen und Backup/Restorezeiten ermitteln; wenn möglichst effiziente Lösungen wie differenzielle Backups oder DPM 2007 nutzen
  • 32.
    Verwalten der Datenbankgrößein SharePoint Im zentral verwalteten Modell Vor der Erstellung einer Websitesammlung überlegen, ob eine eigene Inhaltsdatenbank erstell werden soll Wenn Benutzer Websitesammlungen erstellen dürfen Quotas planen und auf die Websites anwenden Anzahl der Sites pro Inhaltsdatenbank begrenzen Papierkorb und eventuell notwendige Quotaerhöhung in Betracht ziehen
  • 33.
    SQL Server Plattenfür SharePoint Normalerweise: Mehr Platten = bessere Performance RAID 5 nur akzeptabel für Datenbanken mit geringem Schreib-Anteil (statische Publishing-Portale), ansonsten RAID 1 oder RAID 10 Grobe Daumenregel bei normaler Nutzung: 0 ,75 bis 1 IO/s pro GB Inhaltsdatenbank, 1,5 bis 2 für tempdb, Suche und Log Besser: Bei vorhandener Last messen! SQLIO zur Kapazitätsmessung des IO-Systems verwenden
  • 34.
    Platzierung und Priorisierungder Datenbankdateien Möglichst tempdb auf RAID 10 Array Daten und Logs auf physisch separate Platten! Dedizierte Platten für Suche IO-Anforderungen (absteigend sortiert) Tempdb Daten & Logs Datenbank-Transaktionslogs Suchdatenbank Inhaltsdatenbanken Bei Publishing-Sites, die größtenteils readonly sind ggf. Daten vor Log
  • 35.
    Wiederherstellungsmodelle Wiederherstellungsmodell Vollständig,wenn: Eine Sicherungsstrategie vorgesehen ist, die regelmäßige (oft: stündliche) Logsicherungen beinhaltet Hochverfügbarkeit wie Log Shipping oder Database Mirroring verwendet werden soll Ansonsten Wiederherstellungsmodell Einfach verwenden um IOs zu sparen und Verwaltung zu vereinfachen model-Datenbank mit den entsprechenden Optionen anpassen damit die Einstellungen nicht für jede Datenbank manuell vorgenommen werden müssen
  • 36.
    Datenbankgröße und OptionenInhaltsdatenbanken in Zielgröße anlegen Erst in Management Studio oder T-SQL anlegen, dann zu SharePoint hinzufügen Optionen Sinnvolle Größe für Daten und Log Daten und Log auf unterschiedlichen Datenträgern Sinnvolle Größe für Autogrow Autogrow aktiviert lassen Collation: Latin1_General_CI_AS_KS_WS Wiederherstellungsmodell Volltextindex aus Page Verify Checksum Skript z.B. hier: http://sharepointusergroup.corasworks.net/HOU/Lists/Speakers%20List/Attachments/17/SharePointScalabilityWhitepaper.pdf
  • 37.
  • 38.
    Performanceüberwachung Server (SQL)Processor: % Processor Time: _Total Unter 50-75% außer zu Spitzenzeiten System: Processor Queue Length: Sollte unter 2 * Anzahl Cores sein Memory: Pages/sec: (N/A) Sollte unter 100 sein Disks Transfer/sec für Durchsatz-Trends Disk sec/Read / Disk sec/Write für Latenz (IO Bottleneck) Mindestens 25% freier Platz auf allen Platten
  • 39.
    Scaling Up kontraScaling Out oder... 2.5TB 2.5TB 2.5TB SCALE OUT  2.5TB SCALE UP  2.5TB 2.5TB
  • 40.
    Scaling Up kontraScaling Out Scale Out Scale Up Vorteile Bessere Performance Leichter zu verwalten Flexibler Preiswerter Nachteile Teurer Guter Systementwurf ist essenziell Schwieriger zu verwalten Single Point of Failure
  • 41.
    Datenbankwartung Guter Artikel: http://www.sqlskills.com/BLOGS/KIMBERLY/post/Database-Maintenance-Best-Practices-Part-I-e28093-clarifying-ambiguous-recommendations-for-Sharepoint.aspx Empfohlen Vor Implementierung von Wartungsplänen: Datensicherung erstellen und testen! Datenbank-Konsistenzprüfung: DBCC CHECKDB sys.dm_db_index_physical_stats DMV verwenden um Fragmentierung zu prüfen Bei hoher Fragmentierung Index reorganisieren oder neu erstellen dbo.proc_DefragIndexes aus KB943345
  • 42.
    Datenbankwartung Nicht empfohlenIndizes droppen und neu erstellen Datenbankwartung während der Geschäftszeit Update Statistics – das wird automatisch gemacht Datenbanken verkleinern wenn nicht absolut notwendig
  • 43.
    Ressourcen Webcasts http://www.microsoft.com/germany/technet/webcastsBlog Steffen Krause http://blogs.technet.com/steffenk SQL Customer Advisory Team http://www.sqlcat.com Books Online, aktuellste Version! Storage Design Whitepaper http://technet.microsoft.com/en-us/library/cc966414.aspx SQL Server/SharePoint Whitepaper http://technet.microsoft.com/de-de/library/cc263261.aspx (kein Shrink im Wartungsplan!!!) http://technet.microsoft.com/en-us/library/cc262731.aspx Defragmentieren der Datenbanken http://support.microsoft.com/kb/943345/
  • 44.
    TechNet/MSDN Webcast DVDJahresedition 2008 TechNet/MSDN Webcast DVD – Jahresedition 2008 Mit Webcasts aus den Bereichen MSDN und TechNet Die DVD-Edition umfasst insgesamt mehr als 200 Webcasts Eine Auswahl der Themen aus dem TechNet Bereich: Virtualisierung Microsoft SQL Server Webcasts zur Microsoft System Center Familie Limitierte Auflage / Bestellpreis € 19,90 http://www.microsoft.com/germany/aktionen/webcastdvd/default.mspx
  • 45.
    Weitere Informationen +aktuelle Event Hinweise TechNet Online Website www.microsoft.com/germany/technet TechNet Newsflash – Email Newsletter www.microsoft.com/germany/technet/newsflash TechNet Library http://technet.microsoft.com/de-de/library/default.aspx Neu: Webcast DVD Jahresedition 2008 Alle deutschen TechNet Webcasts von MSDN/TechNet aus dem Jahr 2008 Limitierte Auflage / Bestellpreis 19,90€ / Insgesamt über 200 Webcasts http://www.microsoft.com/germany/aktionen/webcastdvd/default.mspx
  • 46.
    TechNet Academy Training& Zertifizierungsplattform für IT Pros in Deutschland Angebote von Certified Partner for Learning Solutions Trainingspakete inklusive Original-Microsoft-Schulungsunterlagen und Prüfungsvouchers www.microsoft.com/germany/technet/academy
  • 47.
    TechNet Academy Spezialangebotemit MOC und Zertifizierung von Certified Partner for Learning Solutions Aktuelle Informationen
  • 48.
    Watch & WinWebcasts Anmelden Teilnehmen Feedbackbogen ausfüllen … und mit ein bisschen Glück gewinnen! Das nächste Watch & Win Webcast: 13.03.2009 System Center Talk – Systemverwaltung in der Praxis 21.04.2009 SQL Server 2009- Grundlagen Teil 5 29.04.2009 SQL Server 2009- Grundlagen Teil 6 Was Sie gewinnen können: 13.03.2009: 2 *„Microsoft Office Professional 2007“ Versionen (Bitte beachten Sie: Hierbei handelt es sich um „Upgrade“ Versionen) 21.04.2009:3*Age of Empires III ( Games for Windows) 29.04.2009:3*Zoo Tycoon II (Games for Windows)
  • 49.

Hinweis der Redaktion

  • #2 Microsoft TechNet Seminar 2006 Seminar Name