Schnelleinstieg SQL Server 2012 - Inkl. zahlreicher Praxisworkshops - Backup, Server-Sicherheit, Skalierbarkeit, Performance-Tuning, Troubleshooting, BI, T-SQL u.v.m.
von: Daniel Caesar, Michael R. Friebel
Galileo Press, 2013
ISBN: 9783836219389
Sprache: Deutsch
723 Seiten, Download: 30502 KB
Format: PDF, auch als Online-Lesen
Mehr zum Inhalt
Schnelleinstieg SQL Server 2012 - Inkl. zahlreicher Praxisworkshops - Backup, Server-Sicherheit, Skalierbarkeit, Performance-Tuning, Troubleshooting, BI, T-SQL u.v.m.
Liebe Leserin, lieber Leser, | 3 | ||
Auf einen Blick | 4 | ||
Inhalt | 6 | ||
Vorwort | 24 | ||
1 Die Versionsgeschichte von SQL Server | 28 | ||
1.1 Entwicklung bis Microsoft SQL Server 2005 | 29 | ||
1.2 Von Microsoft SQL Server 2008 zu SQL Server 2012 | 30 | ||
1.3 SQL Server 2012 - Wichtige Neuerungen im Überblick | 30 | ||
1.3.1 Hochverfügbarkeit | 31 | ||
1.3.2 SQL Server »AlwaysOn« | 31 | ||
1.3.3 Skalierbarkeit und Performance | 32 | ||
1.3.4 Columnstore-Indizes | 32 | ||
1.3.5 FileTable | 32 | ||
1.3.6 Volltextsuche | 33 | ||
1.3.7 Benutzerdefinierte Serverrollen | 33 | ||
1.3.8 SQL Server 2012 - Contained Database | 33 | ||
1.3.9 Distributed Replay | 34 | ||
1.3.10 SQL-Server-Audit-Erweiterungen | 35 | ||
1.3.11 Management Pack für Hochverfügbarkeit | 35 | ||
1.3.12 SQL Server 2012 - Windows Server Core | 35 | ||
1.3.13 PHP-Treiber | 35 | ||
1.3.14 LocalDB-Laufzeitumgebung | 35 | ||
1.3.15 SQL Server Data Tools (SSDT) | 35 | ||
1.3.16 Data Quality Services | 36 | ||
1.3.17 PowerView - Report- und Analysetool | 36 | ||
1.3.18 Reporting als SharePoint Shared Service | 37 | ||
1.3.19 SSIS-Bereitstellung von Projekten und Paketen | 37 | ||
1.3.20 Tabellarische Projekte in SQL Server Data Tools | 37 | ||
2 Zukunftssicherheit, Stabilität und Performance im Enterprise-Bereich | 38 | ||
2.1 Kapazitätsplanung von Prozessor, Speicher und I/O | 38 | ||
2.2 Erfassen von Leistungs- und Baseline-Daten | 39 | ||
2.3 Sequenzieller und Random I/O | 41 | ||
2.4 Dimensionierung des E/A-Subsystems | 42 | ||
2.4.1 Bestimmen der Größe der Auslagerungsdatei | 43 | ||
2.5 RAID und SAN - Konfiguration | 43 | ||
2.5.1 RAID 0: Stripe Set | 44 | ||
2.5.2 RAID 1: Spiegelung | 44 | ||
2.5.3 RAID 5: Stripe Set mit Parität | 45 | ||
2.5.4 RAID 01 | 46 | ||
2.5.5 RAID 10 | 47 | ||
2.5.6 Hardwareschnittstellen | 47 | ||
2.6 SQL Server und virtuelle Umgebungen - Was ist zu beachten? | 48 | ||
2.7 Ausblick auf zukünftige Technologien - Storage im Netz | 48 | ||
2.7.1 Windows Azure: Der SQL Server in der Cloud | 49 | ||
3 Die SQL-Server-Editionen im Überblick | 52 | ||
3.1 Standard Edition | 52 | ||
3.2 Business Intelligence Edition | 52 | ||
3.3 Enterprise Edition | 53 | ||
3.4 Parallel Data Warehouse und Fast Track Data Warehouse Edition | 53 | ||
3.5 Spezielle Editionen | 54 | ||
3.5.1 Developer Edition | 54 | ||
3.5.2 Web Edition | 54 | ||
3.5.3 Express Edition | 54 | ||
3.5.4 LocalDB | 54 | ||
3.5.5 Compact Edition | 55 | ||
3.5.6 Windows Azure SQL-Datenbank (früher SQL Azure) | 55 | ||
3.6 Windows und Windows Azure SQL-Datenbank | 56 | ||
3.6.1 Überblick | 56 | ||
3.6.2 Technologie und Zugriff | 58 | ||
3.7 Zusammenfassung | 60 | ||
4 Installation von und Aktualisierung auf SQL Server 2012 | 62 | ||
4.1 Überlegungen zur Installation | 63 | ||
4.1.1 Sprachen und landesspezifische Anpassungen - Sortierreihenfolge | 63 | ||
4.1.2 Windows- versus SQL-Server-Authentifizierung | 64 | ||
4.1.3 Sicherheitsbetrachtungen - die Wahl der richtigen Dienstkonten | 64 | ||
4.1.4 Aktualisierung auf SQL Server 2012 | 66 | ||
4.2 Die Installation einer Standardinstanz | 66 | ||
4.2.1 Der Installationsprozess im Detail | 66 | ||
4.2.2 SQL Server und mehrere Instanzen | 80 | ||
4.3 Workshop: Durchführen einer unbeaufsichtigten Installation und Sysprep | 83 | ||
4.3.1 Vorbereiten einer Installation mit Sysprep | 84 | ||
4.3.2 Abschließen einer mit Sysprep vorbereiteten Installation | 87 | ||
5 Konfigurieren von SQL Server 2012 | 88 | ||
5.1 Der SQL-Server-Konfigurationsmanager | 88 | ||
5.1.1 Die Dienste des SQL Servers 2012 | 88 | ||
5.1.2 Client-Konfiguration, Alias und Protokolle | 89 | ||
5.1.3 Deaktivieren nicht benötigter Dienste | 90 | ||
5.1.4 Ausblenden einer Instanz des SQL-Server-Datenbankmoduls | 90 | ||
5.2 Die SQL-Server-Protokolle | 90 | ||
5.2.1 Shared Memory | 90 | ||
5.2.2 TCP/IP | 91 | ||
5.2.3 Erweiterter Schutz | 92 | ||
5.2.4 Service Principal Name (SPN) | 92 | ||
5.2.5 Named Pipes | 93 | ||
5.2.6 Verschlüsselung der Kommunikation | 93 | ||
5.3 SQL-Server-Startparameter | 96 | ||
5.4 »sqlcmd« - Das Tool für die Kommandozeile | 99 | ||
5.5 Die Konfiguration der Instanz | 100 | ||
5.5.1 Serveroptionen mit dem Management Studio konfigurieren | 100 | ||
5.5.2 Serveroptionen mithilfe der Prozedur SP_CONFIGURE konfigurieren | 102 | ||
5.6 Konfigurieren von SQL Server mit PowerShell | 104 | ||
5.7 SQL-Server-Agent-Grundkonfiguration | 106 | ||
5.8 Konfiguration von SQL Server mithilfe der Richtlinienverwaltung | 108 | ||
5.9 Hilfsprogramm-Kontrollpunkte (Utility Control Point, UCP) | 112 | ||
5.9.1 Technologie von Utility Control Points | 113 | ||
5.9.2 Der Hilfsprogramm-Explorer | 113 | ||
5.9.3 Einrichten eines Utility Control Points auf einer Instanz von SQL Server | 113 | ||
5.9.4 Workshop: Registrieren eines Service Principal Names (SPN) | 119 | ||
5.9.5 Workshop: Konfiguration der Windows-Firewall für eine Standardinstanz von SQL Server | 121 | ||
6 Die SQL-Server-Systemdatenbanken im Überblick | 126 | ||
6.1 Aufbau und Funktionsweise von SQL-Server-Systemdatenbanken | 127 | ||
6.1.1 Zusammenhänge - Wiederherstellungsmodell, Sicherung der Datenbank und Transaktionsprotokoll | 127 | ||
6.1.2 Die Ressourcen- und Distributionsdatenbank | 128 | ||
6.2 Verschieben von Systemdatenbanken | 129 | ||
6.3 Neuerstellen von Systemdatenbanken | 131 | ||
7 Grundlegendes Know-how für Administratoren und Entwickler | 136 | ||
7.1 SQL Server verwalten - Überblick über das SQL Server Management Studio | 136 | ||
7.1.1 Starten des SQL Server Management Studios | 137 | ||
7.1.2 Grundlegender Aufbau des SQL Server Management Studios | 137 | ||
7.1.3 Der Objekt-Explorer | 138 | ||
7.1.4 Abfrage-Editor-Fenster | 139 | ||
7.1.5 Management-Studio-Berichte | 140 | ||
7.1.6 Verwalten verschiedener SQL-Server-Instanzen und -Versionen | 141 | ||
7.1.7 Vorlagen-Explorer und Vorlagenparameter - Schablonen erleichtern die Arbeit | 142 | ||
7.1.8 Der »Skript«-Button - Eigentlich ist alles T-SQL | 144 | ||
7.1.9 IntelliSense - Unterstützung zur passenden Zeit | 146 | ||
7.2 Dynamische Verwaltungssichten, Katalogsichten | 147 | ||
7.2.1 Katalogsichten | 148 | ||
7.2.2 Dynamische Verwaltungssichten | 148 | ||
7.2.3 Informationen und Leistungsdaten rundherum | 149 | ||
7.2.4 Scripting mit T-SQL | 149 | ||
7.3 Datenbanken anlegen | 152 | ||
7.3.1 Was geschieht beim Erstellen einer Datenbank? | 154 | ||
7.3.2 Tipps zur Vergabe von Datenbanknamen | 154 | ||
7.3.3 Dateigruppen - Strategie zur Verteilung von Objekten auf Datenträgern | 155 | ||
7.3.4 Fehler finden - Debuggen von T-SQL | 157 | ||
7.4 T-SQL: Die wichtigsten Befehle für den Administrator | 159 | ||
7.4.1 DML - Select, Insert, Update, Delete | 159 | ||
7.4.2 DDL - Create, Alter, Drop | 160 | ||
7.5 Views/Sichten - Daten aus anderen Perspektiven | 161 | ||
7.6 Benutzerdefinierte Funktionen | 163 | ||
7.6.1 Anlegen, Anzeigen und Löschen von benutzerdefinierten Funktionen | 163 | ||
7.6.2 Aufrufen von benutzerdefinierten Funktionen | 164 | ||
7.7 Gespeicherte Prozeduren | 165 | ||
7.7.1 Erstellen von gespeicherten Prozeduren | 166 | ||
7.7.2 Anzeigen und Löschen von gespeicherten Prozeduren im SQL Server Management Studio | 167 | ||
7.7.3 Gespeicherte Prozeduren, Parameter und Rückgabewerte | 167 | ||
7.7.4 Gespeicherte Prozeduren ausführen | 171 | ||
7.8 Wichtige gespeicherte Prozeduren | 171 | ||
7.8.1 sp_help | 171 | ||
7.8.2 sp_helpdb | 172 | ||
7.8.3 sp_monitor | 172 | ||
7.8.4 Erweiterte Systemprozeduren | 173 | ||
7.8.5 Wichtige Funktionen | 173 | ||
7.8.6 Die »Identity«-Eigenschaft | 174 | ||
7.9 Trigger | 175 | ||
7.9.1 DML-Trigger | 175 | ||
7.9.2 Die Trigger-Tabellen »inserted« und »deleted« | 176 | ||
7.9.3 Ein Trigger für alle Fälle | 178 | ||
7.9.4 Trigger und Cursorschleifen | 179 | ||
7.9.5 Die UPDATE()-Funktion | 182 | ||
7.9.6 DDL-Trigger | 183 | ||
7.9.7 Zum richtigen Umgang mit Triggern | 183 | ||
7.10 Interessante T-SQL-Neuerungen für Entwickler | 184 | ||
7.11 Sequenzen | 184 | ||
8 PowerShell | 186 | ||
8.1 Warum PowerShell? | 186 | ||
8.2 Was bietet PowerShell? | 187 | ||
8.2.1 Cmdlets (Commandlets) | 187 | ||
8.2.2 PowerShell-Anbieter (Provider) | 188 | ||
8.2.3 PowerShell-Skripte | 188 | ||
8.3 Wie wird PowerShell installiert und aufgerufen? | 188 | ||
8.3.1 PowerShell aus SQL Server Management Studio aufrufen | 189 | ||
8.3.2 PowerShell über »sqlps« aufrufen | 189 | ||
8.3.3 PowerShell über die Windows PowerShell aufrufen | 190 | ||
8.3.4 PowerShell über den Agent ausführen | 191 | ||
8.4 Beispiel: Anzeigen der Instanzen von SQL Server in HTML | 192 | ||
9 Backup und Restore | 194 | ||
9.1 Sicherungsverfahren | 194 | ||
9.1.1 Vollständige Sicherung | 195 | ||
9.1.2 Differenzielle Sicherung | 195 | ||
9.1.3 Transaktionsprotokoll-Sicherung | 195 | ||
9.1.4 Sicherung des Protokollfragments | 195 | ||
9.1.5 Teilsicherung | 195 | ||
9.1.6 Dateigruppensicherung | 196 | ||
9.2 Wiederherstellungsmodelle: Ein Überblick über die Backup-Möglichkeiten | 196 | ||
9.2.1 Das Wiederherstellungsmodell »Einfach« | 197 | ||
9.2.2 Das Wiederherstellungsmodell »Vollständig« | 197 | ||
9.2.3 Massenprotokolliert | 200 | ||
9.3 Sicherung von Dateigruppen | 200 | ||
9.4 Systemdatenbanken richtig sichern und wiederherstellen | 201 | ||
9.5 Datenbank-Snapshots: Datenbankzustände konservieren und wiederherstellen | 201 | ||
9.5.1 Wie wird ein Snapshot erzeugt? | 203 | ||
9.5.2 Wie ist die Snapshot-Technologie mit Sicherung und Wiederherstellung in Einklang zu bringen? | 204 | ||
9.5.3 Überlegungen zum Einsatz von Snapshots | 204 | ||
9.6 Backup-Strategie | 205 | ||
9.6.1 Strategie für vollständige Datenbanksicherungen | 206 | ||
9.6.2 Strategie für Datenbank- und Transaktionsprotokoll-Sicherung | 207 | ||
9.6.3 Weitere Backup-Strategien | 208 | ||
9.7 Medien | 208 | ||
9.7.1 Logische Sicherungsmedien | 210 | ||
9.7.2 Datenträgersicherungsmedien | 211 | ||
9.7.3 Zusammenfassung | 211 | ||
9.8 Workshops: Datenbanken mit verschiedenen Methoden richtig sichern | 211 | ||
9.8.1 Szenario 1: Einfache, vollständige Sicherung einer Datenbank | 212 | ||
9.8.2 Szenario 2: Wiederherstellen einer Datenbank aus einer Vollsicherung | 215 | ||
9.8.3 Szenario 3: Wiederherstellen der Systemdatenbank »master« aus einer Sicherung | 218 | ||
9.8.4 Szenario 4: Sichern und Wiederherstellen einer Datenbank im vollständigen Wiederherstellungsmodus und Nachziehen der zugehörigen Transaktionsprotokoll-Sicherungen | 222 | ||
10 SQL-Server-Sicherheit | 230 | ||
10.1 Das SQL-Server-Authentifizierungskonzept | 230 | ||
10.1.1 Authentifizierungsstufe »Server«: Serverberechtigungen | 231 | ||
10.1.2 Windows-Authentifizierung | 234 | ||
10.1.3 SQL-Server-Authentifizierung | 235 | ||
10.2 Serverrollen | 237 | ||
10.2.1 Was sind Serverrollen? | 237 | ||
10.2.2 Die Rolle »public« | 238 | ||
10.2.3 Eigene Serverrollen | 239 | ||
10.2.4 Workshop I: Zuweisen einer SQL-Anmeldung zu einer festen Serverrolle | 239 | ||
10.2.5 Workshop II: Zuweisen von separaten Berechtigungen zu SQL-Server-Anmeldungen | 241 | ||
10.3 Authentifizierungsstufe »Datenbank«: Datenbankberechtigungen | 243 | ||
10.3.1 Direkte Zuordnung von Datenbanken zu einer SQL-Server-Anmeldung | 245 | ||
10.3.2 Datenbankbenutzer nachträglich anlegen und zuordnen | 247 | ||
10.3.3 Datenbankbenutzer »guest« | 248 | ||
10.3.4 Der Datenbankbenutzer dbo | 249 | ||
10.3.5 Das Problem der verwaisten Benutzer (Orphaned Users) | 249 | ||
10.4 Eigenständige Datenbanken | 254 | ||
10.4.1 Was sind eigenständige Datenbanken | 254 | ||
10.4.2 Workshop: Aktivieren der Unterstützung von eigenständigen Datenbanken | 255 | ||
10.4.3 Anlegen eines Datenbankbenutzers für eigenständige Datenbanken | 256 | ||
10.4.4 Workshop: Anmelden an Management Studio mit einem enthaltenen Datenbankbenutzer | 257 | ||
10.5 Berechtigungen auf allen Ebenen | 259 | ||
10.5.1 Datenbank-Zugriffsberechtigungen setzen | 259 | ||
10.5.2 Zugriffsberechtigungen aus Perspektive des Datenbankbenutzers setzen | 262 | ||
10.5.3 Datenbankrollen | 265 | ||
10.5.4 Workshop: Anlegen einer Datenbankrolle | 268 | ||
10.6 Schemas | 273 | ||
10.6.1 Workshop: Anlegen eines Schemas - Buchhaltung mit dem Management Studio | 274 | ||
10.7 Datenverschlüsselung mit Zertifikaten und Schlüsseln | 276 | ||
10.7.1 Schlüssel, Zertifikate und Algorithmen | 276 | ||
10.7.2 Datenverschlüsselung | 277 | ||
10.7.3 Workshops: Verschlüsseln und Entschlüsseln von Daten | 279 | ||
10.7.4 Transparente Datenverschlüsselung (Transparent Data Encryption, TDE) | 283 | ||
10.7.5 Kommunikationsverschlüsselung | 286 | ||
10.7.6 Sichern und Wiederherstellen von Zertifikaten und Schlüsseln | 288 | ||
10.8 Verbindungsserver/Delegation | 289 | ||
10.8.1 Anlegen eines Verbindungsservers mit Zugriff auf eine weitere SQL-Server-Instanz mit Management Studio | 289 | ||
10.8.2 Delegation | 294 | ||
11 ETL-Prozesse mit den Integration Services | 296 | ||
11.1 Möglichkeiten zum Massenimport | 297 | ||
11.1.1 Bulk Copy (bcp) - schnell im- und exportieren | 297 | ||
11.1.2 BULK INSERT | 298 | ||
11.1.3 OPENROWSET | 298 | ||
11.2 Der Import/Export-Assistent | 299 | ||
11.3 SSIS-Anwendungen: Erstellen von DTSX-Paketen mit den SQL Server Data Tools | 303 | ||
11.3.1 Der Datenflusstask | 305 | ||
11.3.2 Ereignishandler | 315 | ||
11.3.3 SSIS-Paketkonfiguration | 317 | ||
11.3.4 Protokollierung | 321 | ||
11.3.5 Bereitstellen von Paketen | 323 | ||
11.3.6 SSIS-Pakete auf SQL Server 2012 aktualisieren | 325 | ||
11.4 Bereitstellen von Projekten und Paketen | 327 | ||
11.4.1 Das Projektbereitstellungsmodell | 327 | ||
11.4.2 Das Paketbereitstellungsmodell | 328 | ||
11.4.3 Der Bereitstellungsassistent | 328 | ||
11.4.4 Der Integration-Services-Katalog | 332 | ||
11.4.5 Bereitstellungsmodell konvertieren | 333 | ||
11.5 Erstellen von Wartungsplänen mit den SQL Server Data Tools | 338 | ||
12 Automatisieren von administrativen Aufgaben | 340 | ||
12.1 Der SQL-Server-Agent | 340 | ||
12.2 Erstellen von Aufträgen und Ausführen von SSIS-Paketen | 341 | ||
12.2.1 Workshop: Anlegen eines Agent-Auftrags | 342 | ||
12.3 Wartungspläne und T-SQL-Skripte | 348 | ||
12.4 Konfigurieren des SQL-Server-Agents | 354 | ||
12.5 Was sind Proxy-Konten, und welche Bedeutung kommt ihnen zu? | 356 | ||
13 Einrichten von Warnungen und Benachrichtigungen | 358 | ||
13.1 Konfigurieren von Datenbank-E-Mail | 358 | ||
13.1.1 Aktivieren von Datenbank-E-Mail | 359 | ||
13.1.2 Einrichten eines E-Mail-Profils | 360 | ||
13.2 Einrichten von Warnungen | 368 | ||
13.3 Anlegen von Operatoren | 372 | ||
13.4 Warnungen zu Leistungsstatus, Fehlernummern und WMI | 374 | ||
13.4.1 SQL-Server-Ereigniswarnung | 374 | ||
13.4.2 SQL-Server-Leistungsstatuswarnung | 374 | ||
13.4.3 WMI-Ereigniswarnung | 375 | ||
14 Skalierbarkeit von SQL Server | 376 | ||
14.1 Verteilen der SQL-Server-Dienste | 376 | ||
14.2 SQL Server und NLB-Cluster | 377 | ||
14.2.1 Reporting Services und Lastenausgleich | 378 | ||
14.2.2 Failover-Cluster | 379 | ||
14.2.3 SQL-Server-Protokollversand | 379 | ||
14.3 Skalierung der Analysis Services | 380 | ||
14.4 Skalierbare freigegebene Datenbanken | 381 | ||
14.5 Skalierbarkeit von Datenbanken mithilfe der Peer-to-Peer-Transaktionsreplikation | 382 | ||
14.6 AlwaysOn - Nicht nur ein Thema für Hochverfügbarkeit | 383 | ||
14.7 Service Broker - Skalierung für Entwickler | 383 | ||
14.7.1 Nachrichtentypen | 384 | ||
14.7.2 Verträge | 385 | ||
14.7.3 Warteschlangen | 385 | ||
14.7.4 Dienste | 385 | ||
15 Verteilung von Daten: Replikation ist kein Hexenwerk | 390 | ||
15.1 Einführung in die Replikation | 390 | ||
15.1.1 Replikations-Agent | 392 | ||
15.1.2 Speicherplatz und Zeitpläne | 394 | ||
15.2 Die Rollenverteilung bei einer Replikation | 394 | ||
15.2.1 Verleger | 395 | ||
15.2.2 Verteiler | 395 | ||
15.2.3 Abonnent | 395 | ||
15.3 Replikationsarten | 396 | ||
15.3.1 Die Snapshot-Replikation | 396 | ||
15.3.2 Die Transaktionsreplikation | 396 | ||
15.3.3 Die Merge-Replikation | 398 | ||
15.3.4 HTTP-Merge-Replikation - Websynchronisierung | 399 | ||
15.3.5 Die Peer-to-Peer-Replikation | 399 | ||
15.3.6 Entscheidungsfaktoren für eine Replikationsart | 400 | ||
15.3.7 Workshop: Einrichten einer Transaktionsreplikation | 400 | ||
16 Hochverfügbarkeitslösungen | 414 | ||
16.1 Hochverfügbarkeit - was ist das eigentlich genau? | 414 | ||
16.1.1 Definition der Hochverfügbarkeit (High Availability/HA) | 415 | ||
16.1.2 Einteilung der Verfügbarkeitsklassen | 415 | ||
16.2 Lastenausgleich durch Network Load Balancing (NLB) | 416 | ||
16.3 Failover-Cluster | 417 | ||
16.3.1 iSCSI und Fibre Channel (FC) | 419 | ||
16.3.2 Cluster-Ressourcen | 420 | ||
16.3.3 Quorumdatenträger | 420 | ||
16.3.4 Cluster-Knoten | 420 | ||
16.3.5 Verhindern von Netzwerkausfällen beim Failover-Cluster | 421 | ||
16.4 Cluster-Arten | 421 | ||
16.4.1 Standard-Cluster | 421 | ||
16.4.2 Hauptknotensatz-Cluster | 422 | ||
16.5 Datenbankspiegelung | 423 | ||
16.5.1 Betriebsarten einer Datenbankspiegelung | 424 | ||
16.5.2 Der Client-Zugriff | 425 | ||
16.5.3 SQL-Server-Endpunkte | 426 | ||
16.5.4 Erzwingen eines Failovers auf die Spiegeldatenbank | 428 | ||
16.5.5 Reparatur fehlerverdächtiger Seiten | 429 | ||
16.5.6 Überlegungen zum Schutz der Datenbankspiegelung | 429 | ||
16.5.7 Fazit | 430 | ||
16.6 Protokollversand | 430 | ||
16.6.1 Einsatzszenarien für eine Lösung mit dem Protokollversand | 431 | ||
16.6.2 Grundlagen einer Protokollversandlösung | 432 | ||
16.7 Kombinieren von Lösungen für hohe Verfügbarkeit | 433 | ||
16.7.1 Kombination Protokollversand und Lastenausgleich | 433 | ||
16.7.2 Kombination Protokollversand, Datenbankspiegelung und Lastenausgleich | 434 | ||
16.8 AlwaysOn: Mission Critical, die neue Hochverfügbarkeitslösung | 434 | ||
16.8.1 Failover | 436 | ||
16.8.2 Voraussetzungen und Einschränkungen | 436 | ||
16.8.3 Vorrausetzungen und Einschränkungen SQL Server 2012 | 436 | ||
16.9 Workshop I: Einrichten einer Datenbankspiegelung | 438 | ||
16.10 Workshop II: Einrichten des Protokollversands | 447 | ||
17 Überwachen von SQL Server 2012 | 454 | ||
17.1 Überwachen der SQL-Server-Aktivität mit SQL Server Monitor | 454 | ||
17.1.1 Bereich »Übersicht« | 455 | ||
17.1.2 Bereich »Prozesse« | 455 | ||
17.1.3 Bereich »Ressourcenwartevorgänge« | 456 | ||
17.1.4 Bereich »Datendatei-E/A« | 456 | ||
17.1.5 Bereich »Aktuelle wertvolle Abfragen« | 456 | ||
17.2 Ablaufverfolgung von SQL Server mit dem Profiler | 456 | ||
17.3 Die Windows-Leistungsüberwachung | 461 | ||
17.4 Synchronisation von Windows-Leistungsüberwachungs- und SQL-Server-Profiler-Dateien | 464 | ||
17.5 SQLdiag | 466 | ||
17.6 SQL Server Auditing | 469 | ||
17.6.1 Überwachen der Login-Aktivität | 469 | ||
17.6.2 SQL-Server-Überwachung | 470 | ||
17.6.3 C2-Überwachung mit SQL Server | 474 | ||
17.6.4 Common Criteria | 474 | ||
17.7 Konfigurieren des Datenauflisters | 476 | ||
17.7.1 Was ist ein VDWH? | 476 | ||
17.7.2 Einrichten eines Verwaltungs-Data-Warehouses | 476 | ||
17.7.3 Anzeige und Auswertung der Daten | 480 | ||
17.7.4 Arbeiten mit dem Extended Event Profiler | 481 | ||
18 Problembehebung und Performance-Tuning | 486 | ||
18.1 Richtiges Verwalten von Daten | 486 | ||
18.2 Daten lesen und schreiben | 488 | ||
18.2.1 Lesen von Daten | 488 | ||
18.2.2 Aktualisieren von Daten | 489 | ||
18.3 Wie werden Abfragen ausgeführt? | 490 | ||
18.3.1 Erstellung eines Ausführungsplans | 490 | ||
18.3.2 Der Plancache und die Wiederverwendung von Ausführungsplänen | 491 | ||
18.3.3 SQL-Ausführungspläne richtig lesen | 492 | ||
18.4 Der Datenbankoptimierungsratgeber | 493 | ||
18.4.1 Beschreibung der Vorgehensweise | 496 | ||
18.4.2 Registerkarte »Allgemein« | 497 | ||
18.4.3 Registerkarte »Optimierungsoptionen« | 498 | ||
18.4.4 Registerkarte »Status« | 502 | ||
18.4.5 Registerkarte »Empfehlungen« | 504 | ||
18.4.6 Registerkarte »Berichte« | 506 | ||
18.4.7 Fragen und Antworten | 507 | ||
18.5 Ressourcenkontrolle Resource Governor | 511 | ||
18.5.1 Ressourcenpools | 511 | ||
18.5.2 Arbeitsauslastungsgruppen | 511 | ||
18.5.3 Klassifizierungsfunktion | 512 | ||
18.6 Indizes: wichtiges Mittel für eine gute Performance | 515 | ||
18.6.1 Was ist ein Index? | 515 | ||
18.6.2 Gruppierte Indizes (Clustered Indexes) | 516 | ||
18.6.3 Nicht gruppierte Indizes (Nonclustered Indexes) | 517 | ||
18.6.4 Gefilterte Indizes | 517 | ||
18.6.5 Columnstore-Indizes - Spaltenbasierte Indizes | 517 | ||
18.6.6 Anlegen von Indizes | 519 | ||
18.6.7 Anzeigen von Indizes im Management Studio | 520 | ||
18.6.8 Indizierte Sichten | 520 | ||
18.6.9 Ermitteln fehlender Indizes | 521 | ||
18.7 Statistiken und Wartungspläne | 524 | ||
18.8 Datenkomprimierung | 525 | ||
18.8.1 Zeilenkomprimierung | 526 | ||
18.8.2 Seitenkomprimierung | 527 | ||
18.8.3 Unicode-Komprimierung | 527 | ||
18.8.4 Komprimierung aktivieren | 527 | ||
18.9 Change Data Capture | 528 | ||
18.10 Datenbankoperationen | 531 | ||
18.10.1 Transaktionen | 531 | ||
18.10.2 Isolation Level | 534 | ||
18.11 Parallelitätsprobleme (Deadlocks) | 538 | ||
18.11.1 Erzeugen eines Deadlocks | 539 | ||
18.12 Partitionierung - wenn Tabellen sehr groß werden | 543 | ||
19 Applikations- und Multiserver-Verwaltung | 546 | ||
19.1 Vorteile und Einsatz der Multiserver-Verwaltung | 546 | ||
19.1.1 Einrichten eines Masterservers | 546 | ||
19.1.2 Definieren von Wartungsplänen und Aufträgen für Masterserver | 551 | ||
19.1.3 Verwalten von Ziel- und Masterservern | 552 | ||
19.2 DAC (Data Tier Application) | 552 | ||
19.2.1 Registrieren einer DAC-Anwendung im Management Studio | 554 | ||
19.2.2 Datenebenenanwendung im Management Studio aktualisieren | 560 | ||
19.3 Registrierte SQL Server und Servergruppen | 561 | ||
20 SQL Server 2012 - weitere Komponenten für Entwickler und Anwender | 566 | ||
20.1 Master Data Services | 566 | ||
20.1.1 Master Data Services installieren | 567 | ||
20.2 StreamInsight | 569 | ||
20.2.1 Die Architektur von StreamInsight | 571 | ||
20.2.2 StreamInsight installieren | 573 | ||
20.2.3 Weiterführende Informationen | 576 | ||
20.3 Data Quality Services | 576 | ||
20.3.1 Was sind die Data Quality Services? | 576 | ||
20.3.2 Installation und Einrichtung | 578 | ||
20.3.3 Der Data Quality Client | 579 | ||
21 Parallel Data Warehouse | 580 | ||
21.1 Grundlagen und Schlüsselmerkmale | 580 | ||
21.2 Symmetrisches Multiprocessing | 581 | ||
21.3 Massive parallele Verarbeitung | 581 | ||
21.3.1 Datenzugriff | 582 | ||
21.3.2 Parallele Verarbeitung | 583 | ||
21.4 Parallel Data Warehouse - Architektur | 584 | ||
21.4.1 Hub-and-Spoke-Architektur | 584 | ||
21.5 Parallel Data Warehouse - Knoten | 585 | ||
21.5.1 Kontrollknoten | 587 | ||
21.5.2 Rechenknoten | 587 | ||
21.5.3 ETL-Prozessknoten | 587 | ||
21.5.4 Backup-Knoten | 588 | ||
21.6 Datenlayout - PDW-Schemadesign | 588 | ||
21.6.1 Verteilung von Datenbanken und Tabellen | 588 | ||
21.6.2 Tabellen, Sichten und Indizes | 589 | ||
21.6.3 Daten laden | 590 | ||
21.6.4 Backup von Daten | 590 | ||
21.7 Verwaltung | 590 | ||
22 Die Reporting Services | 592 | ||
22.1 Neuerungen in den Reporting Services 2012 | 592 | ||
22.2 Bereitstellung und Skalierung der Reporting Services | 593 | ||
22.3 Installation und Konfiguration im einheitlichen Modus | 597 | ||
22.3.1 Die Installation | 597 | ||
22.3.2 Die Konfiguration | 597 | ||
22.4 Workshops | 606 | ||
22.4.1 Erstellen und Veröffentlichen eines Berichts mit Visual Studio | 606 | ||
22.4.2 Erstellen und Veröffentlichen eines Berichts mit dem Report Builder 3.0 | 617 | ||
22.4.3 Erstellen einer Karte mit dem Kartenassistent des Report Builders | 624 | ||
23 Analysis Services - Datenanalyse für jedermann | 628 | ||
23.1 Beispielszenario für ein Analysis-Services-Projekt | 628 | ||
23.1.1 Analyse aus Sicht eines Fachanwenders | 628 | ||
23.1.2 Analyse aus Sicht eines Entwicklers | 629 | ||
23.2 Data Warehouse - einige Begriffsdefinitionen | 630 | ||
23.2.1 OLTP- und OLAP-Datenbanken | 630 | ||
23.2.2 Dimensions- und Faktentabellen | 631 | ||
23.2.3 Cube | 632 | ||
23.2.4 Cube-Operationen | 633 | ||
23.2.5 MOLAP, ROLAP und HOLAP | 633 | ||
23.3 Erstellen eines OLAP-Projektes | 633 | ||
23.3.1 Cubestruktur und Dimensionsdesigner | 650 | ||
23.3.2 Attribute, Hierarchien und Datenquellenansicht | 650 | ||
23.3.3 Dimensionsverwendung | 656 | ||
23.3.4 Dimensionsbeziehungen und Tabellendesign | 661 | ||
23.3.5 Berechnungen in Analysis Services | 663 | ||
23.3.6 Key Perfomance Indicators | 665 | ||
23.3.7 Aktionen | 665 | ||
23.3.8 Partitionen | 665 | ||
23.3.9 Aggregationen | 666 | ||
23.3.10 Perspektiven | 668 | ||
23.3.11 Übersetzungen | 669 | ||
23.4 Microsoft Excel und Analysis Services | 670 | ||
23.5 Das Sicherheitskonzept von Analysis Services | 673 | ||
23.6 SQL Server 2012 - PowerPivot und DAX | 677 | ||
24 Workshops zu SharePoint 2010 und SQL Server 2012 | 686 | ||
24.1 Installation und Konfiguration von SharePoint 2010, SQL Server 2012 und PowerPivot | 686 | ||
24.1.1 Einrichten der erforderlichen Benutzerkonten für die Dienstinfrastruktur | 686 | ||
24.1.2 Delegieren der Verwaltung des SharePoint-Servers auf einem Mitgliedsserver | 687 | ||
24.1.3 Delegieren der Verwaltung des SharePoint-Servers auf einem Domänen-Controller | 688 | ||
24.1.4 Berechtigungen im SQL Server erteilen | 688 | ||
24.1.5 Installation von SharePoint 2010 | 689 | ||
24.1.6 Installation von SQL Server 2012 BI Edition | 692 | ||
24.1.7 Konfiguration von PowerPivot für SharePoint | 696 | ||
24.2 Installation und Konfiguration der Reporting Services für SharePoint | 702 | ||
24.3 Erstellen einer Reporting-Services-Anwendung | 705 | ||
24.3.1 Aktivieren von PowerView für die Webseitensammlung | 706 | ||
Index | 708 |