9783866459861.book Seite 131 Donnerstag, 6. September 2012 2:24 14 131 K A P I T E L 3 Konfigurieren von SQL Server 2012-Komponenten n Konfigurieren zusätzlicher SQL Server-Komponenten is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 – Prüfungsziele in diesem Kapitel: Verwalten und Konfigurieren von Datenbanken Datenbankadministratoren für Microsoft SQL Server 2012 müssen nicht nur das Datenbankmodul bereitstellen können, sondern auch Analysis Services und Reporting Services, und zwar sowohl im systemeigenen als auch im SharePoint-Modus. In diesem Kapitel lernen Sie die Funktion der FileTables kennen und erfahren, wie Sie die Sicherheit für Integration Services und die Unterstützung für FILESTREAM einrichten. Als Datenbankadministrator müssen Sie darüber hinaus auch wissen, wie Sie Volltextindizes erstellen, Dateigruppen, Partitionstabellen und Indizes entwerfen und wie Sie die transparente Datenverschlüsselung und Datenkomprimierung einrichten. Die Lektionen in diesem Kapitel Lektion 1: Konfigurieren zusätzlicher SQL Server-Komponenten . . . . . . . . . . . . . . 132 Lektion 2: Verwalten und Konfigurieren von Datenbanken . . . . . . . . . . . . . . . . . . . 152 Bevor Sie beginnen A dm in Damit Sie die Übungen in diesem Kapitel durchführen können, müssen folgende Voraussetzungen erfüllt sein: Sie müssen die Computer DC, SQL-A, SQL-B und SQL-CORE wie in der Einleitung dieses Buches beschrieben eingerichtet haben. Sie müssen die Installationsaufgaben aus den Übungen am Ende der Lektionen von Kapitel 1, »Planen und Installieren von SQL Server 2012«, und Kapitel 2, »Konfigurieren und Verwalten von SQL Server-Instanzen«, durchgeführt haben. Für dieses Kapitel sind keine weiteren Konfigurationsarbeiten erforderlich. 9783866459861.book Seite 132 Donnerstag, 6. September 2012 2:24 14 132 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten Lektion 1: Konfigurieren zusätzlicher SQL Server-Komponenten SQL Server 2012 umfasst mehr als nur das Datenbankmodul. In dieser Lektion lernen Sie, wie Sie SQL Server 2012 Analysis Services, Reporting Services und Integration Services sowie die SharePoint-Integration und die Volltextindizierung bereitstellen und wie Sie FILESTREAM und FileTables einrichten. Bereitstellen und Konfigurieren von Analysis Services Bereitstellen und Konfigurieren von Reporting Services Bereitstellen und Konfigurieren der SharePoint-Integration Verwalten der Volltextindizierung Konfigurieren der Sicherheit von SQL Server Integration Services Konfigurieren von FILESTREAM und FileTables is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – Nach dieser Lektion werden Sie in der Lage sein, die folgenden Aufgaben auszuführen: Veranschlagte Zeit für die Lektion: 60 Minuten Bereitstellen und Konfigurieren von Analysis Services Bei der Installation von Analysis Services können Sie zwischen dem mehrdimensionalen und Data-Mining-Modus und dem Tabellenmodus wählen, wie Abbildung 3.1 zeigt. Der Modus ist instanzspezifisch. Wenn Sie mehr als einen Modus benötigen, müssen Sie mehrere Instanzen von Analysis Services installieren. Zwischen den Modi besteht folgender Unterschied: Mehrdimensionaler und Data-Mining-Modus Dies ist der Standardmodus von Analysis Services. Er unterstützt OLAP-Datenbanken (Online Analytical Processing) und DataMining-Modelle. Tabellarischer Modus Unterstützt die neuen Funktionen zur tabellarischen Modellierung. In diesem Modus kann Analysis die im Tabellenmodelldesigner eingebauten Lösungen ausführen. Wenn Sie über ein Netzwerk auf tabellarische Modelldaten zugreifen wollen, müssen Sie Analysis Services im Tabellenmodus verwenden. Mit der Option /FEATURES=AS können Sie Analysis Services auch an der Befehlszeile installieren. Die Option /ASSERVERMODE können Sie dabei auf MULTIDIMENSIONAL, TABULAR oder POWERPIVOT setzen. Um beispielsweise die Analysis Services-Instanz ASMulti im mehrdimensionalen und Data-Mining-Modus zu installieren, den Netzwerkdienst als Konto zu verwenden und contoso\kim_akers als Administratorkonto für Analysis Services festzulegen, verwenden Sie folgenden Befehl: A dm in Setup.exe /q /IAcceptSQLServerLicenseTerms /Action=install /Features=AS /ASSERVERMODE=MULTIDIMENSIONAL /INSTANCENAME=ASMulti /ASSVCACCOUNT=NetworkService /ASSYSADMINACCOUNTS=contoso\kim_akers 9783866459861.book Seite 133 Donnerstag, 6. September 2012 2:24 14 133 is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – Lektion 1: Konfigurieren zusätzlicher SQL Server-Komponenten Abbildung 3.1 Auswahl zwischen mehrdimensionalem und Data-Mining-Modus und dem tabellarischen Modus Um die Analysis Services-Instanz ASTabular im tabellarischen Modus, mit dem Netzwerkdienst als Dienst- und contoso\kim_akers als Administratorkonto zu erstellen, verwenden Sie folgenden Befehl: Setup.exe /q /IAcceptSQLServerLicenseTerms /Action=install /Features=AS /ASSERVERMODE=TABULAR /INSTANCENAME=ASTabular /ASSVCACCOUNT=NetworkService /ASSYSADMINACCOUNTS=contoso\kim_akers Mit der Installationsoption /ASSERVERMODE=POWERPIVOT können Sie Analysis Services auch im PowerPivot-Modus für SharePoint installieren. In dem Dialogfeld aus Abbildung 3.1 wird eine solche Möglichkeit allerdings nicht geboten. Weitere Informationen: Installieren von Analysis Services A dm in Mehr über die Installation von Analysis Services erfahren Sie auf http://msdn.microsoft.com/ de-de/library/hh231722(SQL.110).aspx. 9783866459861.book Seite 134 Donnerstag, 6. September 2012 2:24 14 134 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten Standardmäßig verwendet Analysis Services bei der Installation ein verwaltetes Dienstkonto. Sie können Analysis Services jedoch auch zur Nutzung eines lokalen oder Domänenbenutzerkontos einrichten. Wenn Analysis Services im Sicherheitskontext des Anmeldekontos Verbindung mit Netzwerkressourcen aufnehmen muss, erstellen Sie für die Funktion ein Domänenbenutzerkonto. Sie können aber auch das Konto Netzwerkdienst (NetworkService) verwenden. In diesem Fall werden Remoteservern die Anmeldeinformationen des lokalen Computers übergeben. Um Zugriff auf dieses Konto zu gewähren, verwenden Sie das Computerkonto des Hostrechners von Analysis Services. Braucht Analysis Services keine Verbindungen zu externen Netzwerkressourcen, kann die Funktion mithilfe eines lokalen Benutzerkontos, eines Domänenbenutzerkontos, eines virtuellen Kontos oder eines verwalteten Dienstkontos ausgeführt werden. is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – Am besten ist es, Analysis Services mit einem Konto auszuführen, dem die geringstmöglichen Berechtigungen zugewiesen sind. In Hochsicherheitsumgebungen sollten Sie die Verwendung der Konten LocalService und NetworkService vermeiden, da die Verbindungszeichenfolgen und Kennwörter von Analysis Services entschlüsselt werden können und für das Anmeldekonto der Funktion zugänglich sind. Weitere Informationen: Analysis Services-Konten Mehr über die Konten für Analysis Services erfahren Sie auf http://msdn.microsoft.com/en-us/ library/ms174905(SQL.110).aspx. Bereitstellen und Konfigurieren von Reporting Services Um einen reinen Berichtsserver mit einer Instanz von SQL Server Reporting Services (SSRS) im systemeigenen Modus zu installieren, gehen Sie im SQL Server-Installationscenter folgendermaßen vor: 1. Öffnen Sie das SQL Server-Installationscenter im Ordner Konfigurationstools. 2. Klicken Sie auf Installation und wählen Sie dort Neue eigenständige SQL Server-Installation oder Hinzufügen von Funktionen zu einer vorhandenen Installation aus. Geben Sie den Speicherort der SQL Server 2012-Installationsdateien an. 3. Klicken Sie auf OK, nachdem die Überprüfung der Setupunterstützungsregeln abgeschlossen ist. 4. Klicken Sie auf der Seite Produktupdates auf Weiter. 5. Klicken Sie auf der Seite Setupunterstützungsregeln auf Weiter. 6. Wählen Sie auf der Seite Installationstyp die Option SQL Server 2012 neu installieren. A dm in 7. Geben Sie auf der Seite Product Key den Product Key ein. 9783866459861.book Seite 135 Donnerstag, 6. September 2012 2:24 14 Lektion 1: Konfigurieren zusätzlicher SQL Server-Komponenten 135 8. Aktivieren Sie auf der Seite Lizenzbedingungen die Option Ich akzeptiere die Lizenzbedingungen. 9. Wählen Sie auf der Seite Setuprolle die Option SQL Server-Funktionsinstallation. is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – 10. Wählen Sie auf der Seite Funktionsauswahl wie in Abbildung 3.2 gezeigt, Reporting Services – Systemeigen und Datenbankmoduldienste. Klicken Sie auf Weiter. Abbildung 3.2 Installieren von Reporting Services 11. Klicken Sie auf der Seite Installationsregeln auf Weiter. 12. Geben Sie auf der Seite Instanzkonfiguration einen Namen für die Reporting ServicesInstanz an. 13. Klicken Sie auf der Seite Erforderlicher Speicherplatz auf Weiter. 14. Überprüfen Sie auf der Seite Serverkonfiguration die Dienstkonten und klicken Sie auf Weiter. A dm in 15. Fügen Sie auf der Seite Datenbankmodulkonfiguraton die Benutzer hinzu, die die Rolle des SQL Server-Administrators übernehmen sollen, und klicken Sie auf Weiter. 9783866459861.book Seite 136 Donnerstag, 6. September 2012 2:24 14 136 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – 16. Wählen Sie auf der Seite Reporting Services-Konfiguration aus Abbildung 3.3 die Option Installieren und konfigurieren. Diese Option steht nur dann zur Verfügung, wenn die erforderlichen Webserverkomponenten bereits installiert sind. Abbildung 3.3 Installieren und Konfigurieren von Reporting Services 17. Klicken Sie auf der Seite Fehlerberichterstattung auf Weiter, auf der nächsten Seite ebenfalls, und wählen Sie dann Installiern. Klicken Sie auf Schließen, um den Installationsassistenten zu beenden. Prüfungstipp A dm in Die Option Installieren und konfigurieren können Sie nur dann auswählen, wenn Sie zuvor die Webserverrolle installiert haben. Außerdem müssen Sie das Datenbankmodul in derselben Instanz installieren. Um Reporting Services in der Standardkonfiguration für den systemeigenen Modus an der Befehlszeile zu installieren, verwenden Sie den folgenden Befehl. In diesem Beispiel wird NetworkService als Dienstkonto sowohl für Reporting Services als auch für SQL Server verwendet, die Mitglieder von BUILTIN\Administrators erhalten Systemadministratorzugriff auf SQL Server und die Instanz bekommt den Namen RPTSVR: 9783866459861.book Seite 137 Donnerstag, 6. September 2012 2:24 14 Lektion 1: Konfigurieren zusätzlicher SQL Server-Komponenten 137 setup /q /IAcceptSQLServerLicenseTerms /ACTION=install /FEATURES=SQL,RS,TOOLS /INSTANCENAME=RPTSVR /SQLSYSADMINACCOUNTS="BUILTIN\ADMINISTRATORS" /RSSVCACCOUNT=NetworkService /SQLSVCACCOUNT=NetworkService /AGTSVCACCOUNT=NetworkService /RSSVCSTARTUPTYPE="Manual" /RSINSTALLMODE="DefaultNativeMode" Weitere Informationen: Reporting Services Mehr über die Installation von Reporting Services erfahren Sie auf http://msdn.microsoft.comde-de/library/ms143711(SQL.110).aspx. is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – Wenn Sie mithilfe der Option Installieren und konfigurieren den Konfigurations-Manager für Reporting Services installieren, wird die Funktion automatisch für sie konfiguriert. Installieren Sie dagegen nur die Dateien von Reporting Services, müssen Sie den Konfigurations-Manager für diese Funktion ausführen (siehe Abbildung 3.4), um sie einzurichten. A dm in Abbildung 3.4 Der Konfigurations-Manager für Reporting Services 9783866459861.book Seite 138 Donnerstag, 6. September 2012 2:24 14 138 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten Den Konfigurations-Manager für Reporting Services können Sie über das Menü Konfiguration starten. Mit diesem Programm können Sie folgende Aufgaben erledigen: Konfigurieren des Dienstkontos für Reporting Services Konfigurieren des Webdienst-URLs. Dazu gehören die Einstellungen für das virtuelle Verzeichnis, die IP-Adresse, den TCP-Port, das SSL-Zertifikat und den SSL-Port. Konfigurieren der Berichtsserver-Datenbank und ihrer Anmeldeinformationen Konfigurieren des Berichts-Manager-URLs Konfigurieren der E-Mail-Einstellungen wie Absenderadresse, aktuelle SMTP-Übermittlungsmethode und SMTP-Server Einrichten des Ausführungskontos. Dies ist gewöhnlich ein Domänenkonto mit minimalen Berechtigungen und dient zum Abruf von externen Berichtsdatenquellen, die keine Authentifizierung verlangen, und zur unbeaufsichtigten Verarbeitung von Berichten. Einrichten von Sicherung und Wiederherstellung und Aktualisieren der Verschlüsselungsschlüssel für Reporting Services is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – Einrichten der horizontalen Skalierung Weitere Informationen: Konfiguration von Reporting Services Mehr über die Konfiguration von Reporting Services erfahren Sie auf http://msdn.microsoft.com/de-de/library/ms157412(SQL.110).aspx. Bereitstellen und Konfigurieren der SharePoint-Integration Sie können Analysis Services und Reporting Services auch als freigegebene Dienste in einer SharePoint-Farm bereitstellen. Dadurch können Sie Funktionen wie PowerPivot für Microsoft SharePoint und Power View nutzen, einen interaktiven Berichtsdesigner für Reporting Services. Um Reporting Services, Power View und PowerPivot für SharePoint bereitstellen zu können, müssen Sie die folgenden Produkte installieren: SharePoint Server 2010 Enterprise Edition mit Service Pack 1 SQL Server 2012-Datenbankmodul SQL Server 2012 Reporting Services und Reporting Services-Add-In SQL Server 2012 PowerPivot für SharePoint A dm in Der Hostcomputer muss Mitglied der Domäne sein. Außerdem müssen Sie Domänenbenutzerkonten für die folgenden Dienste einrichten: SharePoint Web Services und Administrative Services Reporting Services Analysis Services 9783866459861.book Seite 139 Donnerstag, 6. September 2012 2:24 14 Lektion 1: Konfigurieren zusätzlicher SQL Server-Komponenten Microsoft Excel Services Secure Store Services PowerPivot System Service 139 Das Datenbankmodul von SQL Server 2012 kann ein virtuelles oder ein verwaltetes Dienstkonto nutzen. Um die Integration von SQL Server 2012 in SharePoint 2010 einzurichten, führen Sie die folgenden Schritte durch: 1. Installieren Sie eine Farm mit SharePoint Server 2010 SP1 Enterprise Edition. Wählen Sie Option, die Farm später zu konfigurieren. Führen Sie nicht den ProduktkonfigurationsAssistenten von SharePoint 2010 aus. Dadurch können Sie später das SQL Server 2012Datenbankmodul als Datenbankserver der Farm verwenden. is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – 2. Installieren Sie das SQL Server 2012-Datenbankmodul und PowerPivot für SharePoint (siehe Abbildung 3.5). Abbildung 3.5 Installieren von SQL Server PowerPivot für SharePoint A dm in 3. Übernehmen Sie die vorgegebene Instanz-ID von PowerPivot und schließen Sie den Installationsassistenten von SQL Server 2012 ab. 9783866459861.book Seite 140 Donnerstag, 6. September 2012 2:24 14 140 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten n Das PowerPivot-Konfigurationstool is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 Abbildung 3.6 – 4. Erstellen Sie mithilfe des PowerPivot-Konfigurationstools, das im Ordner Konfigurationstools zur Verfügung steht, die Farm, eine Standard-Webanwendung und eine Stammwebsitesammlung (siehe Abbildung 3.6). 5. Wechseln Sie zu Zentralverwaltung, um sich zu vergewissern, dass die Farm betriebsbereit ist. 6. Führen Sie das Setupprogramm von SQL Server 2012 erneut durch, um Reporting Services und das Reporting Services-Add-In zu installieren und zu konfigurieren. 7. SharePoint-Websiteadministratoren können die SharePoint-Dokumentbibliotheken erweitern, um auch BI-Inhaltstypen (Business Intelligence) zu verwenden. Dazu dienen die folgenden Schritte: a. Klicken Sie in Freigegebene Dokumente oder einer anderen Dokumentbibliothek auf die Registerkarte Bibliothek und dann auf Bibliothekseinstellungen. Klicken Sie unter Allgemeine Einstellungen auf Erweiterte Einstellungen. Klicken Sie unter Inhaltstypen auf Ja, um die Verwaltung der Inhaltstypen zu ermöglichen. b. Klicken Sie auf der Registerkarte Bibliothek auf Bibliothekseinstellungen. Klicken Sie unter Inhaltstypen auf Aus vorhandenen Websiteinhaltstypen hinzufügen. Suchen Sie die Inhaltstypgruppe Business Intelligence und fügen Sie BI-Semantikmodellverbindung und Berichtsdatenquelle hinzu. 8. SharePoint-Websiteadministratoren können Datenverbindungsdateien erstellen, um Power View zu starten. Dazu müssen Sie eine BI-Semantikmodellverbindung (.bism) oder eine freigegebene Reporting Services-Datenquelle (.rsds) als Datenquelle für Power View anlegen. Weitere Informationen: SharePoint-Integration A dm in Mehr über die Integration von SharePoint 2010 in SQL Server 2012 erfahren Sie auf http://msdn.microsoft.com/de-de/library/hh231671(SQL.110).aspx. 9783866459861.book Seite 141 Donnerstag, 6. September 2012 2:24 14 Lektion 1: Konfigurieren zusätzlicher SQL Server-Komponenten 141 Schnelltest Welchen Modus müssen Sie bei der Installation von Analysis Services auswählen, wenn Sie OLAP-Datenbanken unterstützen möchten? Antwort Um OLAP-Datenbanken zu verwenden, müssen Sie Analysis Services im mehrdimensionalen und Data-Mining-Modus installieren. Konfigurieren der Sicherheit von SQL Server Integration Services n – Mit Integration Services können Sie Integration Services-Pakete in SQL Server Management Studio ausführen und zeitlich planen. Integration Services kann nur einmal auf einem Computer installiert werden, selbst wenn dieser Computer mehrere Instanzen beherbergt. Die Installation kann als freigegebene Funktion im SQL Server-Setupassistenten erfolgen, aber auch an der Befehlszeile. Verwenden Sie dazu folgenden Befehl: is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 Setup.exe /q /IAcceptSQLServerLicenseTerms /Action=Install /Features=IS In früheren Versionen von SQL Server hatten alle Mitglieder der Gruppe Benutzer Zugriff auf die Dienste von Integration Services. In SQL Server 2012 dagegen ist der Dienst standardmäßig abgesichert: Nur Mitglieder der integrierten Gruppe Administratoren können Integration Services ausführen. Um einzelnen Benutzern Zugriff auf SQL Server Integration Services (SSIS) zu gewähren, müssen Sie das DCOM-Konfigurationstool (dcomcnfg.exe) verwenden. Führen Sie dazu die folgenden Schritte aus: 1. Führen Sie Dcomdnfg.exe über das Textfeld Programme/Dateien durchsuchen im Startmenü aus. 2. Erweitern Sie die Knoten Komponentendienste, Computer, Arbeitsplatz und DCOMKonfiguration. 3. Rechtsklicken Sie auf Microsoft SQL Server Integration Services 11.0 und wählen Sie Eigenschaften. 4. Klicken Sie auf der Registerkarte Sicherheit, die Sie in Abbildung 3.7 sehen, im Bereich Start- und Aktivierungsberechtigungen auf Bearbeiten. A dm in 5. Fügen Sie Benutzer hinzu und weisen Sie ihnen Berechtigungen zu. Die folgenden Berechtigungen sind möglich: Lokaler Start Remotestart Lokale Aktivierung Remoteaktivierung 9783866459861.book Seite 142 Donnerstag, 6. September 2012 2:24 14 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – 142 Abbildung 3.7 Einrichten der Berechtigungen für Integration Services mit Dcomcnfg.exe Weitere Informationen: Integration Services Mehr über Integration Services erfahren Sie auf http://msdn.microsoft.com/de-de/library/ ms143731(SQL.110).aspx. Verwalten der Volltextindizierung Volltextindizes enthalten Informationen über wichtige Wörter und deren Speicherort innerhalb der Spalten einer Datentabelle. In SQL Server 2012 ist das Volltextmodul kein eigenständiger Dienst, sondern Teil des SQL Server-Prozesses. Für jede Tabelle oder indizierte Sicht kann nur ein Volltextindex erstellt werden. Ein Volltextindex kann bis zu 1024 Spalten umfassen. In SQL Server Management Studio können Sie Volltextindizes wie folgt erstellen: 1. Rechtsklicken Sie auf die Tabelle, für die Sie den Volltextindex anlegen möchten, und wählen Sie Entwerfen. A dm in 2. Klicken Sie im Menü Tabellen-Designer auf Volltextindex, um das gleichnamige Dialogfeld zu öffnen. Klicken Sie auf Hinzufügen und richten Sie die Eigenschaften des Index wie in Abbildung 3.8 ein. 9783866459861.book Seite 143 Donnerstag, 6. September 2012 2:24 14 Lektion 1: Konfigurieren zusätzlicher SQL Server-Komponenten Erstellen eines Volltextindex – Abbildung 3.8 143 is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n Statt des Tabellen-Designers können Sie auch wie folgt den Assistenten für die Volltextindizierung ausführen: 1. Rechtsklicken Sie auf die Tabelle, für die Sie einen Volltextindex anlegen möchten, und wählen Sie Volltextindex und dann Volltextindex definieren. Dadurch wird der Assistent für die Volltextindizierung gestartet. 2. Wählen Sie auf der Seite Index auswählen einen eindeutigen Index für die Tabelle aus. A dm in 3. Wählen Sie auf der Seite Tabellenspalten auswählen die Spalten aus, die sich für Volltextabfragen eignen (siehe Abbildung 3.9). Abbildung 3.9 Spalten eines Volltextindex 9783866459861.book Seite 144 Donnerstag, 6. September 2012 2:24 14 144 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten 4. Geben Sie auf der Seite Änderungsnachverfolgung auswählen an, ob Änderungen automatisch, manuell oder gar nicht nachverfolgt werden sollen. is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – 5. Auf der Seite Katalog, Indexdateigruppe und Stoppliste auswählen haben Sie die Gelegenheit, einen vorhandenen Volltextkatalog auszuwählen oder einen neuen zu erstellen. Außerdem können Sie die Indexdateigruppe und die Volltext-Stoppliste auswählen. Abbildung 3.10 zeigt, wie Sie einen neuen Katalog namens NEWCATALAOG erstellen. Abbildung 3.10 Erstellen eines neuen Volltextkatalogs 6. Auf der Seite Auffüllungszeitpläne definieren können Sie einen Zeitplan zum Auffüllen des Volltextkatalogs festlegen. 7. Klicken Sie auf der Seite mit der Übersicht auf Fertig stellen, um den neuen Volltextindex anzulegen. Um einen Volltextindex für eine Tabelle zu erstellen, können Sie auch die Anweisung CREATE FULLTEXT INDEX verwenden. Das folgende Beispiel zeigt den Code, um dies für die Tabelle Production.ProductReview in der Datenbank AdventureWorks2012 zu tun. Dabei werden die Spalten ReviewerName, Email Address und Comments des vorhandenen eindeutigen Index PK_ProductReview_ProductReviewID verwendet und der neue Volltextkatalog production_catalog erstellt. A dm in USE AdventureWorks2012; GO CREATE FULLTEXT CATALOG production_catalog; GO CREATE FULLTEXT INDEX ON Production.ProductReview 9783866459861.book Seite 145 Donnerstag, 6. September 2012 2:24 14 Lektion 1: Konfigurieren zusätzlicher SQL Server-Komponenten 145 ( ReviewerName, EmailAddress, Comments ) KEY INDEX PK_ProductReview_ProductReviewID ON production_catalog; GO Um einen Volltextindex zu löschen, rechtsklicken Sie auf die zugehörige Tabelle, wählen Volltextindex und dann Volltextindex löschen. Eine andere Möglichkeit besteht darin, die Anweisung DROP FULLTEXT INDEX zu verwenden. Beispielsweise können Sie den im vorherigen Beispiel erstellten Index mit der folgenden Abfrage entfernen: DROP FULLTEXT INDEX ON Production.ProductReview Weitere Informationen: Volltextindizes is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – Mehr über Volltextindizes erfahren Sie auf http://msdn.microsoft.com/de-de/library/ cc879306(v=SQL.110).aspx. Einrichten von FILESTREAM FILESTREAM versetzt SQL Server-gestützte Anwendungen in die Lage, unstrukturierte Daten wie Bilder und Dokumente im Dateisystem des Hostcomputers zu speichern. Um FILESTREAM nutzen zu können, müssen Sie eine Datenbank so erstellen oder ändern, dass sie eine besondere Art von Dateigruppe umfasst. Anschließend erstellen oder ändern Sie die Tabellen so, dass sie Spalten vom Typ varbinary(max) mit dem Attribut FILESTREAM verwenden können. Setzen Sie FILESTREAM unter den folgenden Umständen ein: Wenn Sie Objekte speichern möchten, die größer als 1 MB sind. Der herkömmliche Grenzwert von 2 GB für varbinary(max) gilt nicht für BLOBs (Binary Large Objects), die im Dateisystem gespeichert sind. Ein schneller Lesezugriff ist wichtig. Verwenden Sie für Objekte, die kleiner als 1 MB sind, den BLOB-Datentyp varbinary (max). Wenn Sie eine 32-Bit-Version von SQL Server 2012 auf einem 64-Bit-Betriebssystem ausführen, können Sie FILESTREAM nicht aktivieren. Führen Sie folgende Schritte aus, um FILESTREAM einzuschalten: 1. Öffnen Sie den SQL Server-Konfigurations-Manager im Ordner Konfigurationstools. A dm in 2. Klicken Sie auf SQL Server-Dienste, und rechtsklicken Sie dann auf der rechten Seite des Fensters auf die Instanz, auf der Sie FILESTREAM aktivieren möchten, und zeigen Sie ihre Eigenschaftenseite an. 9783866459861.book Seite 146 Donnerstag, 6. September 2012 2:24 14 146 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – 3. Aktivieren Sie auf der Registerkarte FILESTREAM das Kontrollkästchen FIELSTREAM für Transact-SQL-Zugriff aktivieren. In diesem Dialogfeld können Sie auch FILESTREAM für den E/A-Datenzugriff aktivieren und den Remoteclientzugriff auf FILESTREAM-Daten zulassen (siehe Abbildung 3.11). Abbildung 3.11 Aktivieren von FILESTREAM 4. Führen Sie in SQL Server Management Studio die folgende Abfrage aus: EXEC sp_configure filestream_access_level, 2 RECONFIGURE Hinweis: filestream_access_level Wenn Sie filstream_access_level auf 0 setzen, wird der FILESTREAM-Zugriff deaktiviert. Die Einstellung 1 lässt nur den Transact-SQL-Zugriff zu, Einstellung 2 erlaubt Transact-SQL und Win32-Streaming. 5. Starten Sie den SQL Server-Dienst der Instanz, auf der Sie FILESTREAM aktiviert haben, im SQL Server-Konfigurations-Manager neu. A dm in 6. Erstellen Sie eine FILESTREAM-Dateigruppe für die Datenbank. Um beispielsweise die FILESTREAM-Dateigruppe FileStreamFileGroup für die Datenbank Litware2012 anzulegen, verwenden Sie folgende Abfrage: USE master GO ALTER DATABASE Litware2012 ADD 9783866459861.book Seite 147 Donnerstag, 6. September 2012 2:24 14 Lektion 1: Konfigurieren zusätzlicher SQL Server-Komponenten 147 FILEGROUP FileStreamFileGroup CONTAINS FILESTREAM; GO 7. Fügen Sie der FILESTREAM-Dateigruppe FILESTREAM-Dateien hinzu, indem Sie einen Ordner angeben, der noch nicht existiert. Um beispielsweise das Verzeichnis C:\FSTRM zu erstellen und mit der FILESTREAM-Datei FileStrmFile in der FILESTREAM-Dateigruppe FileStreamFileGroup für die Datenbank Litware2012 zu erstellen, verwenden Sie folgende Abfrage: n Weitere Informationen: FILESTREAM – USE master GO ALTER DATABASE Litware2012 ADD FILE ( NAME = FileStrmFile, FILENAME = 'C:\FSTRM' TO FILEGROUP FileStreamFileGroup is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 Mehr über FILESTREAM erfahren Sie auf http://msdn.microsoft.com/de-de/library/ gg471497(SQL.110).aspx. Konfigurieren von FileTables FileTables sind eine besondere Form von Tabelle, mit der Sie Dateien und Dokumente innerhalb von SQL Server 2012 speichern können. Diese Dateien und Dokumente sind von WindowsAnwendungen aus zugänglich, als wären sie ganz normal im Dateisystem abgelegt. So können Sie Dateien und Ordner beispielsweise mit der Maus in Windows Explorer in die FileTable hineinziehen und auf ebensolche Weise auch wieder daraus entfernen. Eine FileTable weist folgende Eigenschaften auf: Eine FileTable stellt eine Hierarchie von Dateien und Verzeichnissen bereit. Jede Zeile in einer FileTable steht für eine Datei oder ein Verzeichnis. Jede Zeile enthält die folgenden Elemente: A dm in Eine FILESTREAM-Spalte für Streaming-Daten und den global eindeutigen Bezeichner (GUID) file_id. Die Spalten path_locator und parent_path_locator, die die Datei- und die Verzeichnishierarchie angeben. Zehn Dateiattribute, darunter das Erstell- und das Änderungsdatum. Eine Typspalte, die die Volltext- und die semantische Suche ermöglicht. FileTables können mit normalen Transact-SQL-Abfragen aktualisiert werden. 9783866459861.book Seite 148 Donnerstag, 6. September 2012 2:24 14 148 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten Führen Sie folgende Schritte aus, um die FileTable-Funktion zu aktivieren: 1. Aktivieren Sie FILESTREAM in der Instanz. Dazu können Sie folgende Anweisung verwenden: EXEC sp_configure filestream_access_level, 2 RECONFIGURE 2. Aktivieren Sie in der Datenbank den Nichttransaktionszugriff. Das können Sie beim Erstellen einer Datenbank mit der Anweisung CREATE DATABASE tun, indem Sie die Option FILESTREAM NON_TRANSACTED_ACCESS angeben: CREATE DATABASE Datenbankname WITH FILESTREAM ( NON_TRANSACTED_ACCESS = FULL, DIRECTORY_NAME = N'dir_name') Bei einer bestehenden Datenbank verwenden Sie die Anweisung ALTER DATABASE mit der Option SET FILESTREAM: is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – ALTER DATABASE Datenbankname SET FILESTREAM (NON_TRANSACTED_ACCESS = FULL, DIRECTORY_NAME = N'directory_name') 3. Geben Sie in der Datenbank ein Verzeichnis für FileTables an, falls Sie das nicht schon bei der Einrichtung des Nichttransaktionszugriffs getan haben. Den Verzeichnisnamen können Sie mit der Option SET FILESTREAM der Anweisung ALTER DATABASE ändern, aber auch auf der Seite Optionen des Dialogfelds Datenbankeigenschaften aus Abbildung 3.12. Um in SQL Server Management Studio eine FileTable zu erstellen, rechtsklicken Sie auf den Knoten Tabellen und wählen Neue FileTable. Dadurch wird ein Fenster mit einer TransactSQL-Skriptvorlage geöffnet, die Sie ändern können. FileTables können Sie auch mit der Anweisung CREATE TABLE anlegen, indem Sie die Option AS FILETABLE angeben. Um beispielsweise die neue FileTable DocStore zu erstellen, verwenden Sie folgende Abfrage: CREATE TABLE DocStore as FileTable; GO A dm in Das Erstellen von FileTables unterliegt folgenden Bedingungen: Bereits vorhandene Tabellen lassen sich nicht in FileTables umwandeln. Sie müssen auf Datenbankebene ein übergeordnetes Verzeichnis angegeben haben. Es muss eine gültige FILESTREAM-Dateigruppe vorhanden sein. Wenn Sie keine Dateigruppe angeben, wird die FILESTREAM-Standarddateigruppe verwendet. Beim Erstellen der Tabelle können Sie keine Tabelleneinschränkungen angeben. Sie können sie aber anschließend hinzufügen. In der Datenbank tempdb können keine FileTables angelegt werden. FileTables haben ein vordefiniertes, festes Schema, sodass es nicht möglich ist, Spalten hinzuzufügen oder zu ändern. Sie können jedoch benutzerdefinierte Indizes, Trigger und Einschränkungen hinzufügen. Wenn Sie eine FileTable löschen, werden auch das Verzeichnis und die darin enthaltenen Unterverzeichnisse entfernt. 9783866459861.book Seite 149 Donnerstag, 6. September 2012 2:24 14 149 is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – Lektion 1: Konfigurieren zusätzlicher SQL Server-Komponenten Abbildung 3.12 Festlegen des Verzeichnisses für FileTables Weitere Informationen: FileTables Mehr über FileTables erfahren Sie auf http://msdn.microsoft.com/de-de/library/ ff929144(SQL.110).aspx. Übung: Installieren von Analysis Services und Reporting Services In dieser Übung stellen Sie zwei Instanzen von Analysis Services in unterschiedlicher Konfiguration sowie eine Instanz von Reporting Services bereit. Übung 1: Installieren von Analysis Services In dieser Übung installieren Sie zwei Instanzen von Analysis Services, die erste im multidimensionalen und Data-Mining-Modus, die zweite im tabellarischen Modus. Führen Sie dazu die folgenden Schritte aus: A dm in 1. Melden Sie sich mit dem Benutzerkonto Contoso\Kim_Akers an SQL-A an. 9783866459861.book Seite 150 Donnerstag, 6. September 2012 2:24 14 150 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten 2. Installieren Sie an der Befehlszeile eine neue Instanz von Analysis Services auf Server SQL-A mit folgenden Eigenschaften: Installationsmodus: Mehrdimensionaler und Data-Mining-Modus Instanzname: ASMulti Dienstkonto für Analysis Services: NetworkService Serveradministrator für Analysis Services: contoso\kim_akers 3. Installieren Sie an der Befehlszeile eine weitere Instanz von Analysis Services auf Server SQL-A mit folgenden Eigenschaften: Installationsmodus: Tabellarischer Modus Instanzname: ASTabular Dienstkonto für Analysis Services: NetworkService Serveradministrator für Analysis Services: contoso\kim_akers n is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 Übung 2: Installieren von Reporting Services – In dieser Übung installieren Sie mit Windows PowerShell die Webserverrolle, auf die Reporting Services zurückgreift, und stellen dann an der Befehlszeile eine neue Reporting ServicesInstanz bereit. Führen Sie dazu die folgenden Schritte aus: 1. Öffnen Sie eine PowerShell-Eingabeaufforderung mit erhöhten Rechten und führen Sie folgenden Befehl aus: Import-module ServerManager 2. Führen Sie den folgenden Befehl aus: Add-WindowsFeature Web-Server -IncludeAllSubFeature A dm in 3. Installieren Sie an der Befehlszeile eine neue Instanz von Reporting Services. Verwenden Sie dabei die folgenden Optionen, sodass es nicht mehr erforderlich ist, die Instanz nach der Installation mit dem Konfigurations-Manager für Reporting Services einzurichten: Installieren Sie Datenbankmoduldienste, Reporting Services und Tools. Nennen Sie die Instanz RPTSVR. Verwenden Sie NetworkService als Dienstkonto für Reporting Services, SQL Server und den SQL Server-Agent. Richten Sie Reporting Services für den manuellen Start ein. Verwenden Sie den standardmäßigen Installationsmodus von Reporting Services im systemeigenen Modus. Nehmen Sie für die Systemadministratorkonten von SQL Server die Gruppe BUILTIN\ Administrators. 4. Öffnen Sie nach Abschluss der Installation den Konfigurations-Manager für Reporting Services und vergewissern Sie sich, dass Reporting Services korrekt bereitgestellt und der Dienst gestartet wurde. 9783866459861.book Seite 151 Donnerstag, 6. September 2012 2:24 14 Lektion 1: Konfigurieren zusätzlicher SQL Server-Komponenten 151 Zusammenfassung der Lektion Eine Analysis Services-Instanz im mehrdimensionalen und Data-Mining-Modus unterstützt OLAP-Datenbanken. Eine Analysis Services-Instanz im tabellarischen Modus unterstützt die neue Funktion der tabellarischen Modellierung. Wenn Sie nur die Dateien für Reporting Services bereitstellen, müssen Sie anschließend den Konfigurations-Manager für Reporting Services ausführen. Mit FILESTREAM können Sie BLOB-Objekte im Dateisystem speichern. FileTables sind Tabellen einer besonderen Art, in denen Sie Dateien und Verzeichnisse direkt in der Datenbank speichern können, wobei sie jedoch trotzdem über das WindowsDateisystem zugänglich sind. Die Möglichkeiten von Analysis Services und Reporting Services können durch die Kombination mit SharePoint erweitert werden. Die Sicherheit von Integration Services können Sie mit dem DCOM-Konfigurationstool einrichten. is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – Lernzielkontrolle Beantworten Sie die folgenden Fragen, um zu prüfen, wie gut Sie den Stoff aus dieser Lektion beherrschen. Antworten auf diese Fragen und Erklärungen darüber, warum eine bestimmte Antwort falsch oder richtig ist, finden Sie im Abschnitt »Antworten« am Ende dieses Kapitels. 1. Welches Programm setzen Sie ein, um Benutzern Zugriff auf Integration Services zu gewähren? a. SQL Server Management Studio b. SQL Server-Konfigurations-Manager c. SQL Server-Datentools d. DCOM-Konfigurationstool (Dcomcnfg.exe) 2. Mit welchem Programm ändern Sie das Ausführungskonto von Reporting Services? a. SQL Server Management Studio b. Konfigurations-Manager für Reporting Services c. SQL Server-Konfigurations-Manager d. SQL Server-Installationscenter 3. Wie viele Volltextindizes können Sie für eine partitionierte Tabelle höchstens einrichten? a. 1 A dm in b. 32 c. 1024 d. 2048 9783866459861.book Seite 152 Donnerstag, 6. September 2012 2:24 14 152 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten 4. Welche der folgenden Schritte müssen Sie durchführen, um FILESTREAM auf einer SQL Server 2012-Instnaz mit Datenbankmodul und Analysis Services zu aktivieren? (Die vollständige Lösung besteht aus mehreren Antworten. Wählen Sie zwei aus.) a. Bearbeiten Sie die Eigenschaften des SQL Server-Dienstes im SQL Server-Konfigurations-Manager. b. Bearbeiten Sie die Eigenschaften des Analysis Services-Dienstes im SQL Server-Konfigurations-Manager. c. Führen Sie sp_configure filestream_access_level, 2 aus. d. Führen Sie sp_configure filestream_access_level, 0 aus. Lektion 2: Verwalten und Konfigurieren von Datenbanken is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – Häufig sind Datenbankadministratoren dafür verantwortlich, die Datenbank-Infrastruktur einzurichten und zu verwalten. Dazu gehören z.B. der Speicherort der Datenbankdateien oder die Datenbankverschlüsselung, die sich direkt auf die Benutzer der Datenbank auswirken. In dieser Lektion geht es um die Verwaltung und Konfiguration der Eigenschaften von Datenbank: Dateigruppen, Standardisierung von Datenbanken, eigenständige Datenbanken, Datenkomprimierung, transparente Datenverschlüsselung, Partitionierung, Verwaltung von Protokolldateien und Befehle der Datenbankkonsole. Nach dieser Lektion werden Sie in der Lage sein, die folgenden Aufgaben auszuführen: Entwerfen und Verwalten von Dateigruppen Standardisieren und Konfigurieren von Datenbanken Implementieren und Konfigurieren eigenständiger Datenbanken Einrichten der Datenkomprimierung Verwalten der transparenten Datenverschlüsselung Einrichten der Tabellen- und Indexpartitionierung Verwalten des Wachstums von Protokolldateien Verwenden von Befehlen der Datenbankkonsole Veranschlagte Zeit für die Lektion: 60 Minuten A dm in Entwerfen und Verwalten von Dateigruppen Jede Datenbank hat eine primäre Dateigruppe. Sie enthält die primäre Datendatei und alle sekundären Dateien, die Sie keinen anderen Dateigruppen zugewiesen haben. Auch die Systemtabellen sind in der primären Dateigruppe untergebracht. Es gibt verschiedene Gründe, um Dateigruppen zur gemeinsamen Speicherung von Datendateien zu erstellen, beispielsweise die Gliederung der Daten, die Verwaltung oder die räumliche Aufteilung. Sekundäre Datendateien weisen die Endung .ndf auf. Diese Dateien können Sie verschiedenen Dateigruppen 9783866459861.book Seite 153 Donnerstag, 6. September 2012 2:24 14 Lektion 2: Verwalten und Konfigurieren von Datenbanken 153 zuweisen. Dabei können sekundäre Datendateien, die auf verschiedenen Volumes untergebracht sind, ein und derselben Dateigruppe angehören. Wenn Sie eine Tabelle oder einen Index erstellen, können Sie angeben, welche Dateigruppe genutzt werden soll. Enthält eine Dateigruppe mehr als eine Datei, schreibt das Datenbankmodul die Daten gleichmäßig in alle Dateien. Die genaue Verteilung hängt davon ab, wie viel Platz in den einzelnen Dateien frei ist. Weitere Informationen: Dateigruppen Mehr über Dateigruppen erfahren Sie auf http://msdn.microsoft.com/de-de/library/ ms189563(SQL.110).aspx. Hinzufügen von neuen Dateigruppen n – In SQL Server Management Studio können Sie einer Datenbank wie folgt eine neue Dateigruppe hinzufügen: is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 1. Rechtsklicken Sie in SQL Server Management Studio auf die gewünschte Datenbank und wählen Sie Eigenschaften. A dm in 2. Klicken Sie auf der Seite Dateigruppen auf Hinzufügen und geben Sie den Namen der neuen Dateigruppe ein (siehe Abbildung 3.13). Abbildung 3.13 Hinzufügen einer Dateigruppe 9783866459861.book Seite 154 Donnerstag, 6. September 2012 2:24 14 154 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten 3. Auf der Seite Dateien des Dialogfelds Datenbankeigenschaften können Sie der Dateigruppe neue Dateien hinzufügen. Sie können auch die Anweisung ALTER DATABASE mit der Option ADD FILEGROUP verwenden, um einer Datenbank Dateigruppen hinzuzufügen. Um der Datenbank AdventureWorks2012 beispielsweise die Dateigruppe Tertiary hinzuzufügen, verwenden Sie folgende Abfrage: USE [master] GO ALTER DATABASE [AdventureWorks2012] ADD FILEGROUP [Tertiary] GO Verschieben eines Index in eine andere Dateigruppe – Um einen Index in SQL Server Management Studio in eine andere Dateigruppe oder ein anderes Partitionsschema zu verschieben, gehen Sie folgendermaßen vor: is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n 1. Rechtsklicken Sie in SQL Server Management Studio auf den Index, den Sie verschieben möchten, und wählen Sie Eigenschaften. 2. Wählen Sie auf der Seite Speicher im Dropdownmenü Dateigruppe die Dateigruppe aus, zu der Sie den Index verschieben möchten (siehe Abbildung 3.14). Abbildung 3.14 Verschieben eines Index A dm in Zum Verschieben von Indizes gelten folgende Bedingungen: In SQL Server Management Studio ist es nicht möglich, Indizes zu verschieben, die mit einer UNIQUE- oder PRIMARY KEY-Einschränkung erstellt wurden. Hierzu müssen Sie die Anweisung CREATE INDEX mit der Option DROP_EXISTING=ON verwenden. 9783866459861.book Seite 155 Donnerstag, 6. September 2012 2:24 14 Lektion 2: Verwalten und Konfigurieren von Datenbanken 155 Ist die Tabelle oder der Index partitioniert, müssen Sie das Partitionsschema auswählen, in das der Index verschoben werden soll. Gruppierte Indizes können Sie nur online verschieben, wobei der Benutzerzugriff während des Vorgangs gestattet ist. Um einen Index mit Transact-SQL zu verschieben, verwenden Sie die Anweisung CREATE INDEX mit der Option DROP_EXISTING=ON und geben die Zieldateigruppe an. Weitere Informationen: Verschieben von Indizes Mehr über das Verschieben von Indizes in andere Dateigruppen erfahren Sie auf http://msdn.microsoft.com/de-de/library/ms175905(SQL.110).aspx. Konfigurieren und Standardisieren von Datenbanken A dm in is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – Die Konfiguration von Datenbanken können Sie standardisieren, indem Sie Einstellungen wie das automatische Schließen, die automatische Verkleinerung oder das Wiederherstellungsmodell in der Systemdatenbank model vornehmen. Wie Sie in Kapitel 2 gelernt haben, dient model als Vorlage für alle neuen Datenbanken, die Sie in der Instanz erstellen. Die Eigenschaften der Datenbank model können Sie wie in Abbildung 3.15 gezeigt in SQL Server Management Studio bearbeiten, aber auch mit der Anweisung ALTER DATABASE. Abbildung 3.15 Eigenschaften der Datenbank model 9783866459861.book Seite 156 Donnerstag, 6. September 2012 2:24 14 156 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten Weitere Informationen: Die Datenbank »model« Mehr über die Datenbank model erfahren Sie unter http://msdn.microsoft.com/de-de/library/ ms186388.aspx. Grundlagen von eigenständigen Datenbanken – Eigenständige Datenbanken enthalten sämtliche Einstellungen und Metadaten, die zu ihrer Definition erforderlich sind. Es bestehen keine Konfigurationsabhängigkeiten von der Instanz des Datenbankmoduls, auf der sie bereitgestellt sind. Benutzer können daher Verbindung mit einer eigenständigen Datenbank aufnehmen, ohne sich am Datenbankmodul zu authentifizieren. Ein Vorteil eigenständiger Datenbanken besteht darin, dass Sie sie auf einfache Weise zu anderen Instanzen oder zu SQL Server 2012 Azure verschieben können. Da alle Konfigurationseinstellungen in der Datenbank selbst enthalten sind, können die Besitzer der Datenbank diese Einstellungen verwalten. is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n SQL Server 2012 unterstützt neben eigenständigen auch teilweise eigenständige Datenbanken, die nicht vollständig unabhängig, aber schon sehr stark von der Instanz des Datenbankmoduls getrennt sind. Dabei handelt es sich um eine Übergangsform zu eigenständigen Datenbanken. In der SQL Server 2012-Implementierung von teilweise eigenständigen Datenbanken ist Folgendes nicht möglich: Nummerierte Prozeduren Schemagebundene Objekte, die von integrierten Funktionen mit Sortierungsänderungen abhängig sind Eine Änderung der Bindung als Ergebnis einer Sortierungsänderung, einschließlich Verweisen auf Objekte, Spalten, Symbole oder Typen Replikation, Erfassung von Änderungsdaten und Änderungsablaufverfolgung In den Sichten sys.dm_db_uncontained_entities und sys.sql_modules (Transact-SQL) finden Sie Informationen über die nicht eigenständigen Objekte und Funktionen. Damit können Sie den Grad der Eigenständigkeit von Anwendungen ermitteln und herausfinden, welche Objekte oder Funktionen Sie beim Übergang zu einer vollständig eigenständigen Datenbank ersetzen oder ändern müssen. Sie sollten auch das Ereignis database_uncontained_usage beobachten, um zu bestimmen, ob in einer Datenbank nicht eigenständige Funktionen genutzt werden. Die Verwendung eigenständiger Datenbanken ermöglichen Sie in SQL Server Management Studio auf der Seite Erweitert der Eigenschaften einer Instanz. Setzen Sie dort die Option Eigenständige Datenbanken aktivieren auf True, wie Sie in Abbildung 3.16 sehen. A dm in In Transact-SQL verwenden Sie für diesen Zweck folgende Abfrage: sp_configure 'contained database authentication', 1; GO RECONFIGURE ; GO 9783866459861.book Seite 157 Donnerstag, 6. September 2012 2:24 14 157 is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – Lektion 2: Verwalten und Konfigurieren von Datenbanken Abbildung 3.16 Aktivieren eigenständiger Datenbanken Um eine Datenbank in eine vollständig oder teilweise eigenständige Datenbank umzuwandeln, bearbeiten Sie in SQL Server Management Studio ihre Eigenschaften. Ändern Sie auf der Seite Optionen den Einschlusstyp in Teilweise oder Vollständig (siehe Abbildung 3.17). Nachdem Sie die Möglichkeit der Eigenständigkeit innerhalb der Datenbankinstanz aktiviert haben, können Sie einzelne Datenbanken mit der Option SET CONTAINMENT der Anweisung ALTER DATABASE eigenständig machen. Um beispielsweise aus AdventureWorks2012 eine teilweise eigenständige Datenbank zu machen, verwenden Sie folgende Abfrage: USE [master] GO ALTER DATABASE [AdventureWorks2012] SET CONTAINMENT = PARTIAL GO Weitere Informationen: Teilweise eigenständige Datenbanken A dm in Mehr über teilweise eigenständige Datenbanken erfahren Sie auf http://msdn.microsoft.com/ de-de/library/ff929071(SQL.110).aspx. 9783866459861.book Seite 158 Donnerstag, 6. September 2012 2:24 14 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – 158 Abbildung 3.17 Einschlusstyp von Datenbanken Datenkomprimierung Durch die Zeilen- und Seitenkomprimierung von Tabellen und Indizes können Sie die Größe einer Datenbank verringern und somit Speicherplatz sparen. Als Nachteil wird dadurch jedoch die CPU-Nutzung erhöht, da die Daten komprimiert und bei jedem Zugriff wieder entkomprimiert werden müssen. Für Systemtabellen ist eine Datenkomprimierung nicht möglich. Außerdem steht diese Funktion nur in der Enterprise und der Developer Edition von SQL Server 2012 zur Verfügung. A dm in Folgende Elemente lassen sich komprimieren: Gruppierte Tabellen Heap-Tabellen (ein Heap ist eine Tabelle ohne gruppierten Index) Nicht gruppierte Indizes Indizierte Sichten Einzelne Partitionen einer partitionierten Tabelle oder eines partitionierten Index 5986K03.fm Seite 159 Donnerstag, 6. September 2012 2:37 14 Lektion 2: Verwalten und Konfigurieren von Datenbanken 159 In SQL Server 2012 gibt es drei Formen der Datenkomprimierung: die Zeilen-, die Unicodeund die Seitenkompirmierung. Weitere Informationen: Heaps Mehr über Heaps erfahren Sie auf http://msdn.microsoft.com/de-de/library/ hh213609(v=SQL.110).aspx. Zeilenkomprimierung Bei der Zeilenkomprimierung werden wirkungsvollere Speicherformate für Daten fester Länge verwendet. Dabei wird mithilfe der folgenden Vorgehensweisen Platz gespart: Numerische und CHAR-Datentypen fester Länge werden gespeichert wie Datentypen variabler Länge. NULL- und Null-Werte werden nicht gespeichert. Die Metadaten werden auf das Nötigste für die Datenspeicherung reduziert is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – Durch die Zeilenkomprimierung wird zwar die Menge an Platz verringert, den die Daten brauchen, doch bietet diese Vorgehensweise nicht die Verbesserungen der Speicherplatzanforderungen, die sich bei der Seitenkomprimierung ergeben. Der Vorteil der Zeilenkomprimierung besteht darin, dass sie weniger CPU-Ressourcen benötigt als die Seitenkomprimierung. Um die Zeilenkomprimierung für eine Tabelle durchzuführen, verwenden Sie folgende Syntax: ALTER TABLE Tabellenname REBUILD WITH (DATA_COMPRESSION=ROW) Um beispielsweise alle Partitionen der Tabelle Sales.Customer aus der Datenbank AdventureWorks2012 mithilfe der Zeilenkomprimierung neu zu erstellen, verwenden Sie folgende Abfrage: USE [AdventureWorks2012] ALTER TABLE [Sales].[Customer] REBUILD PARTITION = ALL WITH (DATA_COMPRESSION = ROW) Zur Einrichtung eines Index mit Zeilenkomprimierung verwenden Sie folgende Syntax: ALTER INDEX Indexname ON Tabellenname REBUILD PARTITION ALL WITH (DATA_COMPRESSION=ROW) Weitere Informationen: Zeilenkomprimierung A dm in Mehr über die Zeilenkomprimierung erfahren Sie auf http://msdn.microsoft.com/de-de/ library/cc280576(v=sql.110).aspx. 9783866459861.book Seite 160 Donnerstag, 6. September 2012 2:24 14 160 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten Unicode-Komprimierung Mithilfe der Unicode-Komprimierung kann das Datenbankmodul Unicode Werte in seitenoder zeilenkomprimierten Objekten komprimieren. Diese Art der Komprimierung kann für die Datentypen nchar(n) und nvarchar(n) fester Länge verwendet werden. Sie wird automatisch eingesetzt, wo es angemessen ist, sofern die Zeilen- und die Seitenkomprimierung aktiviert sind. Weitere Informationen: Unicode-Komprimierung Mehr über die Unicode-Komprimierung erfahren Sie auf http://msdn.microsoft.com/de-de/ library/ee240835(SQL.110).aspx. Seitenkomprimierung is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – Bei der Seitenkomprimierung werden wiederholte Werte und gängige Präfixe nur einmal gespeichert. Anschließend werden Verweise auf diese Werte von einer anderen Stelle innerhalb der Tabelle aus verwendet. Wird für eine Tabelle die Seitenkomprimierung durchgeführt, so werden auch die Techniken der Zeilenkomprimierung angewandt. Dabei werden folgende Richtlinien befolgt: Die Zeilenkomprimierung wird angewandt, um so viele Zeilen wie möglich auf einer Seite zu speichern. Es wird eine Spaltenpräfixkomprimierung durchgeführt, indem sich wiederholende Datenmuster durch Verweise ersetzt werden. Diese Daten werden im Seitenheader gespeichert. Die Wörterbuchkomprimierung sucht nach sich wiederholenden Werten und speichert diese Informationen ebenfalls im Seitenheader. Wie groß die Vorteile der Seitenkomprimierung sind, hängt von der Art der komprimierten Daten ab. Daten mit einer größeren Menge an sich wiederholenden Werten werden stärker komprimiert als Daten mit einem größeren Anteil an eindeutigen Werten. Zur Anwendung der Seitenkomprimierung dient folgende allgemeine Syntax: ALTER TABLE Tabellenname REBUILD WITH (DATA_COMPRESSION=PAGE) Um beispielsweise alle Partitionen der Tabelle Sales.Customer aus der Datenbank AdventureWorks2012 mithilfe der Seitenkomprimierung neu zu erstellen, verwenden Sie folgende Abfrage: USE [AdventureWorks2012] ALTER TABLE [Sales].[Customer] REBUILD PARTITION = ALL WITH (DATA_COMPRESSION = PAGE) Zur Einrichtung eines Index mit Seitenkomprimierung verwenden Sie folgende Syntax: A dm in ALTER INDEX Indexname ON Tabellenname REBUILD PARTITION ALL WITH (DATA_COMPRESSION=PAGE) 9783866459861.book Seite 161 Donnerstag, 6. September 2012 2:24 14 Lektion 2: Verwalten und Konfigurieren von Datenbanken 161 Weitere Informationen: Seitenkomprimierung Mehr über die Seitenkomprimierung erfahren Sie auf http://msdn.microsoft.com/de-de/ library/cc280464(v=sql.110).aspx. Partitionierte Tabellen und Indizes lassen sich partitionsweise komprimieren. Wenn Sie eine Partition mit der Anweisung ALTER PARTITION aufteilen, erbt die neue Partition die Datenkomprimierungseigenschaften der ursprünglichen. Die Vereinigung zweier Partitionen erhält die Komprimierungseigenschaften der Zielpartition. Durch die Komprimierung können zwar mehr Zeilen auf einer Seite gespeichert werden, allerdings ändert sich dadurch nicht die maximale Anzahl der Zeilen einer Tabelle oder eines Index. Wenn die maximale Zeilengröße und der Komprimierungsoverhead 8060 Byte übersteigen, kann die Komprimierung für eine Tabelle nicht aktiviert werden. is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – Die standardmäßige Komprimierungseinstellung für Indizes lautet NONE. Um eine andere Einstellung zu verwenden, müssen Sie sie beim Erstellen des Index angeben. Nicht gruppierte Indizes erben nicht die Komprimierungseigenschaften der zugehörigen Tabelle, gruppierte Indizes eines Heaps dagegen übernehmen dessen Komprimierungsstatus. Die Datenkomprimierung erfolgt nur an der Quelle. Wenn Sie also Daten aus einer komprimierten Quelle exportieren, gibt SQL Server sie im unkomprimierten Zeilenformat aus. Beim Import in eine Tabelle, für die die Komprimierung aktiviert ist, werden unkomprimierte Daten komprimiert. Weitere Informationen: Datenkomprimierung Mehr über die Datenbankomprimierung erfahren Sie auf http://msdn.microsoft.com/de-de/ library/cc280449(v=sql.110).aspx. Die Komprimierung von Tabellen und Indizes können Sie mit den bereits gezeigten TransactSQL-Anweisungen und mit dem Datenkomprimierungs-Assistenten von SQL Server Management Studio durchführen. Der Assistent erlaubt es Ihnen auch, die Komprimierung wieder zu entfernen. Um die Komprimierungseinstellungen für Tabellen und Indizes mithilfe des Assistenten zu ändern, gehen Sie folgendermaßen vor: 1. Rechtsklicken Sie in SQL Server Management Studio auf die gewünschte Tabelle bzw. den Index, wählen Sie Speicher und dann Komprimierung verwalten. 2. Klicken Sie auf der Seite Willkommen beim Datenkomprimierungs-Assistenten auf Weiter. A dm in 3. Auf der Seite Komprimierungstyp auswählen aus Abbildung 3.18 können Sie entweder festlegen, dass für alle Partitionen dieselbe Art der Komprimierung verwendet wird, oder partitionsweise die Zeilen- (Row), die Seiten- (Page) oder gar keine Komprimierung (None) auswählen. Klicken Sie auf Berechnen, um den Unterschied zwischen dem jetzigen Speicherplatzbedarf und dem der komprimierten Version zu bestimmen. 9783866459861.book Seite 162 Donnerstag, 6. September 2012 2:24 14 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – 162 Abbildung 3.18 Der Datenkomprimierungs-Assistent 4. Legen Sie auf der Seite Ausgabeoption auswählen fest, ob ein Skript erstellt, die Operation sofort ausgeführt oder nach Zeitplan erledigt werden soll. Klicken Sie auf Weiter und dann auf Fertig stellen, um den Assistenten abzuschließen. Weitere Informationen: Der Datenkomprimierungs-Assistent Mehr über den Datenkomprimierungs-Assistenten erfahren Sie auf http://msdn.microsoft.com/de-de/library/hh710070#SSMSProcedure. Abschätzen der Platzeinsparung durch die Komprimierung Die beste Möglichkeit, um die Vorteile der Komprimierung bei einem bestimmten Objekt zu bestimmen, besteht darin, die gespeicherte Prozedur sp_estimate_data_compression_savings auszuführen. Wie groß die Einsparungen sind, hängt von vielen Faktoren ab, z.B. der Einmaligkeit der Daten. Die gespeicherte Prozedur sp_estimate_data_compression_savings steht nur in SQL Server 2012 Enterprise Edition zur Verfügung. Sie weist folgende Syntax auf: A dm in sp_estimate_data_compression_savings[ @schema_name = ] 'Schemaname', [ @object_name = ] 'Objektname', [@index_id = ] Index-ID,[@partition_number = ] Partitionsnummer, [@data_compression = ] 'Komprimierungsart' 9783866459861.book Seite 163 Donnerstag, 6. September 2012 2:24 14 Lektion 2: Verwalten und Konfigurieren von Datenbanken 163 Um beispielsweise die Auswirkung der Zeilenkomprimierung auf die Tabelle HumanResources.Employee der Datenbank AdventureWorks2012 zu bestimmen, führen Sie folgende Transact-SQL-Anweisung aus: USE AdventureWorks2012; GO EXEC sp_estimate_data_compression_savings 'HumanResources', 'Employee', NULL, NULL, 'ROW'; GO Wollen Sie für dieselbe Tabelle die Platzersparnis durch die Seitenkomprimierung ermitteln, verwenden Sie folgende Anweisung: is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 Weitere Informationen: sp_estimate_data_compression_savings n – USE AdventureWorks2012; GO EXEC sp_estimate_data_compression_savings 'HumanResources', 'Employee', NULL, NULL, 'PAGE'; GO Mehr über die Bestimmung der Platzersparnis durch die Komprimierung erfahren Sie auf http://msdn.microsoft.com/de-de/library/cc280574(v=sql.110).aspx. Verschlüsseln von Datenbank mit transparenter Datenverschlüsselung Mit der transparenten Datenverschlüsselung (Transparent Data Encryption, TDE) können Sie ganze Datenbanken verschlüsseln. TDE schützt die Datenbank für den Fall, dass nicht autorisierte Dritte Zugriff auf die Festplatte oder auf Sicherungsdateien mit der Datenbank erhalten. Durch diese Funktion wird die Datenbank mit einem Datenbankverschlüsselungsschlüssel (Database Encryption Key, DEK) verschlüsselt, der im Boot-Eintrag der Datenbank abgelegt wird. Der DEK wiederum ist durch den Datenbankhauptschlüssel geschützt, und dieser durch den Diensthauptschlüssel. Auf Windows Server 2008 und Windows Server 2008 R2 können Sie auch das gesamte Volume mit der BitLocker-Laufwerksverschlüsselung verschlüsseln. Dabei ist allerdings nicht für eine Verschlüsselung der Datenbanksicherungen gesorgt. Hinweis: TDE und tempdb Wenn für irgendeine Datenbank der Instanz TDE eingesetzt wird, ist auch die Systemdatenbank tempdb verschlüsselt. Um eine Datenbank mit TDE zu verschlüsseln, gehen Sie folgendermaßen vor: 1. Erstellen Sie den Verschlüsselungs-Hauptschlüssel. 2. Erstellen Sie ein Zertifikat, das vom Hauptschlüssel geschützt wird. A dm in 3. Erstellen Sie einen DEK und schützen Sie ihn mit dem Zertifikat. 4. Verschlüsseln Sie die Datenbank. 9783866459861.book Seite 164 Donnerstag, 6. September 2012 2:24 14 164 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten Der erste Schritt beim Anwenden von TDE besteht darin, mit der Anweisung CREATE MASTER KEY ENCRYPTION BY PASSWORD einen Verschlüsselungs-Hauptschlüssel zu erstellen. Beispielsweise können Sie dazu folgende Abfrage verwenden: USE master; GO CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<Passwort für Hauptschlüssel>'; GO Nachdem Sie den Verschlüsselungs-Hauptschlüssel erstellt haben, müssen Sie als Nächstes das Zertifikat anlegen, das zur Verschlüsselung der Datenbank eingesetzt wird. Hierzu verwenden Sie die Anweisung CREATE CERTIFICATE. Um beispielsweise ein Zertifikat mit dem Namen ServerCertificate und dem Antragstellernamen Server Certificate zu erstellen, führen Sie folgende Abfrage aus: – CREATE CERTIFICATE ServerCertificate WITH SUBJECT = 'Server Certificate'; GO is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n Sind Hauptschlüssel und Zertifikat vorhanden, können Sie die DEK für die gewünschte Datenbank mit der Anweisung CREATE DATABASE ENCRYPTION KEY erstellen. Die folgende Abfrage legt beispielsweise einen DEK für die Datenbank AdventureWorks2012 an: USE AdventureWorks2012; GO CREATE DATABASE ENCRYPTION KEY WITH ALGORITHM = AES_128 ENCRYPTION BY SERVER CERTIFICATE ServerCertificate; GO Da Sie nun über alle erforderlichen Schlüssel und Zertifikate verfügen, können Sie die Datenbank mit der Anweisung ALTER DATABASE verschlüsseln. Um beispielsweise AdventureWorks2012 zu verschlüsseln, setzen Sie folgende Abfragen ein: ALTER DATABASE AdventureWorks2012 SET ENCRYPTION ON; GO A dm in Bei der Verwendung von TDE sollten Sie das Serverzertifikat in der Datenbank master sichern. Wenn der Datenbankserver nicht mehr zur Verfügung steht und Sie diese Information nicht gesichert haben, können Sie nicht mehr auf die Daten in den mit TDE geschützten Datenbanken zugreifen. Mit der Anweisung BACKUP CERTIFICATE können Sie eine Sicherung des Zertifikats und des privaten Schlüssels erstellen, die beide für die Wiederherstellung des Zertifikats erforderlich sind. Das Kennwort des privaten Schlüssels muss nicht mit dem des DatenbankHauptschlüssels identisch sein. Beispielsweise erstellt der folgende Code, der in der Systemdatenbank master ausgeführt werden muss, eine Sicherung des Zertifikats ServerCertificate in der Datei ServerCertExport und den privaten Schlüssel PrivateKeyFile: BACKUP CERTIFICATE ServerCertificate TO FILE = 'ServerCertExport' WITH PRIVATE KEY 9783866459861.book Seite 165 Donnerstag, 6. September 2012 2:24 14 Lektion 2: Verwalten und Konfigurieren von Datenbanken 165 ( FILE = 'PrivateKeyFile', ENCRYPTION BY PASSWORD = '<PrivateKeyPasswordHere>' ); GO SQL Server schreibt diese Sicherungsdateien in das Verzeichnis \MSSQL\DATA der Instanz. Weitere Informationen: Transparente Datenverschlüsselung Mehr über die transparente Datenverschlüsselung erfahren Sie auf http://msdn.microsoft.com/ de-de/library/bb934049(SQL.110).aspx. Schnelltest – Welche Transact-SQL-Anweisung verwenden Sie zum Verschlüsseln einer Datenbank, nachdem Sie die erforderlichen Schlüssel und Zertifikate erstellt haben? is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n Antwort ALTER DATABASE mit der Option SET ENCRYPTION ON. Partitionieren von Indizes und Tabellen Durch die Partitionierung werden Indizes und Tabellen auf mehrere Dateigruppen verteilt. Dabei werden Gruppen von Zeilen einzelnen Partitionen zugeteilt. Alle Partitionen einer Tabelle oder eines Index müssen sich in derselben Datenbank befinden. Partitionierte Indizes und Tabellen können Sie nur in der Entprise und der Developer Edition von SQL Server 2012 nutzen. Die x64Versionen von SQL Server 2012 lassen bis zu 15.000 Partitionen zu. Auf den x86-Versionen lassen sich im Grunde genommen mehr als 1000 Partitionen erstellen, allerdings wird dies nicht von Microsoft unterstützt. A dm in Bei der Partitionierung von Tabellen und Indizes spielen folgende Elemente eine Rolle: Partitionsfunktion Legt fest, wie die Zeilen eines Index oder einer Tabelle den einzelnen Partitionen zugewiesen wird. Grundlage dafür sind die Werte der Partitionierungsspalten. Partitionsschema Dateigruppen zu. Partitionierungsspalte Die Spalte eines Index oder einer Tabelle, die eine Partitionsfunktion zur Partitionierung dieses Objekts heranzieht. Ausgerichteter Index Ein Index, der dasselbe Partitionsschema verwendet wie die Tabelle, zu der er gehört. Nicht ausgerichteter Index partitioniert ist. Eliminieren einer Partition Der Vorgang, durch den der Abfrageoptimierer nur auf die Partitionen zugreift, die geeignet sind, um die Filterkriterien einer Abfrage zu erfüllen. Ordnet die Partitionen einer Partitionsfunktion einer Sammlung von Ein Index, der unabhängig von der zugehörigen Tabelle 9783866459861.book Seite 166 Donnerstag, 6. September 2012 2:24 14 166 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten Um partitionierte Tabellen oder Indizes zu erstellen, gehen Sie folgendermaßen vor: 1. Erstellen Sie die Dateigruppen, die die Partitionen aufnehmen sollen. 2. Erstellen Sie eine Partitionsfunktion, die die Zeilen der Tabelle oder des Index auf der Grundlage der Werte einer bestimmten Spalte den einzelnen Partitionen zuweist. 3. Erstellen Sie ein Partitionsschema, dass Partitionen zu Dateigruppen zuordnet. 4. Erstellen oder ändern Sie einen Index oder eine Tabelle und geben Sie dabei das Partitionsschema an. Zur Partitionierung von Tabellen und Indizes sind die folgenden Berechtigungen erforderlich: Damit ein Benutzer eine partitionierte Tabelle erstellen kann, benötigt er die Berechtigung CREATE TABLE für die Datenbank, die ALTER-Berechtigung für das Schema, in der die Tabelle angelegt wird, und eine der folgenden Berechtigungen: ALTER ANY DATASPACE CONTROL oder ALTER für die Datenbank CONTROL SERVER oder ALTER ANY DATABASE für die Instanz n – is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 Damit ein Benutzer einen partitionierten Index erstellen kann, benötigt er die ALTERBerechtigung für die Tabelle oder Sicht, die den Index aufnehmen soll, und eine der folgenden Berechtigungen: ALTER ANY DATASPACE CONTROL oder ALTER für die Datenbank CONTROL SERVER oder ALTER ANY DATABASE für die Instanz Um eine partitionierte Tabelle zu erstellen, gehen Sie folgendermaßen vor: 1. Rechtsklicken Sie in SQL Server Management Studio auf die gewünschte Tabelle, wählen Sie Speicher und dann Partition erstellen. 2. Klicken Sie auf der ersten Seite des Assistenten zum Erstellen von Partitionen auf Weiter. 3. Wählen Sie auf der Seite Partitionierungsspalte auswählen aus Abbildung 3.19 die Spalte aus, die Sie zur Partitionierung der Tabelle verwenden möchten. Außerdem können Sie hier die folgenden Optionen aktivieren: Diese Tabelle für die ausgewählte partitionierte Tabelle anordnen Diese Option kann die Effizienz von Abfragen erhöhen. Speicherausrichtung aller nicht eindeutigen Indizes und aller eindeutigen Indizes mit indizierter Partitionierungsspalte Mithilfe dieser Option können Sie Partitionen wirkungsvoller in partitionierte Tabellen hinein und aus ihnen heraus verschieben. A dm in 4. Wählen Sie auf der Seite Partitionsfunktion auswählen eine vorhandene Partitionsfunktion aus oder geben Sie den Namen einer neuen Funktion ein. 5. Wählen Sie auf der Seite Partitionsschema auswählen ein vorhandenes Partitionsschema aus oder geben Sie den Namen eines neuen Schemas ein. 9783866459861.book Seite 167 Donnerstag, 6. September 2012 2:24 14 167 is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – Lektion 2: Verwalten und Konfigurieren von Datenbanken Abbildung 3.19 Auswählen einer Partitionierungsspalte A dm in 6. Wählen Sie auf der Seite Partitionen zuordnen entweder die Option Linke Begrenzung oder Rechte Begrenzung, um den höchsten oder niedrigsten Grenzwert innerhalb jeder einzelnen Dateigruppe zu bestimmen. Geben Sie in der Spalte Begrenzung den Grenzwert an (siehe Abbildung 3.20). Abbildung 3.20 Zuordnen der Partitionen 9783866459861.book Seite 168 Donnerstag, 6. September 2012 2:24 14 168 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten Wenn Sie die Datumswerte in der Partitionierungsspalte verwenden wollen, können Sie auch auf Begrenzungen festlegen klicken. Das ist sinnvoll, wenn Sie Tabellendaten auf der Grundlage des Kalenderdatums in Dateigruppen aufteilen. Diese Möglichkeit steht daher nur für Partitionierungsspalten vom Typ date, datetime, smalldatetime, datetime2 und datetimeoffset zur Verfügung. 7. Entscheiden Sie sich auf der Seite Ausgabeoption wählen für die Möglichkeit Skript erstellen, Sofort ausführen oder Zeitplan. 8. Klicken Sie auf der Seite Zusammenfassung der Überprüfung auf Fertig stellen. Eine Partitionsfunktion können Sie mit der Anweisung CREATE PARTITION FUNCTION erstellen. Beispielsweise legen Sie mit der folgenden Anweisung die Funktion PartFunction an, die eine Tabelle am Grenzwert 50 in zwei Partitionen aufteilt: CREATE PARTITION FUNCTION PartFunction (int) as RANGE LEFT FOR VALUES (50); is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – Ein Partitionsschema können Sie mit der Anweisung CREATE PARTITION SCHEMA erstellen. Beispielsweise legen Sie mit der folgenden Abfrage das Partitionsschema PartScheme an, das die Partitionsfunktion PartFunction auf die Dateigruppen FgOne und FgTwo anwendet: CREATE PARTITION SCHEME PartScheme AS PARTITION PartFunction TO (FgOne, FgTwo); GO Eine Tabelle können Sie partitionieren, indem Sie das Partitionsschema angeben. Um beispielsweise die Tabelle Exemplar zu erstellen, die das Partitionsschema PartScheme zur Partitionierung von col1 verwendet, führen Sie folgende Abfrage aus: CREATE TABLE Exemplar (col1 int, col2 char(20)) ON PartScheme (col1); GO Mit der Anweisung ALTER PARTITION FUNCTION können Sie eine bestehende Partitionsfunktion ändern und dadurch entweder eine Partition in zwei aufteilen oder zwei zu einer vereinigen. Zur Änderung eines bestehenden Partitionsschemas nehmen Sie die Anweisung ALTER PARTITION SCHEME. Weitere Informationen: Partitionierte Indizes und Tabellen Mehr über partitionierte Indizes und Tabellen erfahren Sie auf http://msdn.microsoft.com/ de-de/library/ms190787(SQL.110).aspx. A dm in Verwalten von Protokolldateien Transaktionsprotokolldateien haben die Endung .ldf. Eine Datenbank kann zwar über mehrere Protokolldateien verfügen, allerdings behandelt SQL diese als eine einzige, durchgehende virtuelle Datei. Würden die Protokolleinträge niemals gelöscht, so würden die Protokolle schließ- 9783866459861.book Seite 169 Donnerstag, 6. September 2012 2:24 14 Lektion 2: Verwalten und Konfigurieren von Datenbanken 169 lich den gesamten Speicherplatz auf ihrem Volume einnehmen. Das Abschneiden des Protokolls ist der Vorgang, mit dem das Datenbankmodul Platz in der virtuellen Datei freigibt, sodass er wieder für das Transaktionsprotokoll genutzt werden kann. Dieser Vorgang erfolgt automatisch in den folgenden Situationen: Wenn eine Datenbank das einfache Wiederherstellungsmodell nutzt, schneidet das Datenbankmodul das Transaktionsprotokoll nach einem Prüfpunkt ab. Prüfpunkte werden automatisch jedes Mal gesetzt, wenn die Anzahl der Protokolleinträge den Betrag erreicht, den das Datenbankmodul während des Wiederherstellungsintervalls verarbeiten kann. Dieser Zeitraum wird als eine der Serverkonfigurationsoptionen festgelegt. Beim einfachen Wiederherstellungsmodell setzt das Datenbankmodul automatisch einen Prüfpunkt, wenn das virtuelle Protokoll zu 70% gefüllt ist. Mit der Anweisung CHECKPOINT können Sie auch manuell Prüfpunkte festlegen. Wenn eine Datenbank das vollständige oder das massenprotokollierte Wiederherstellungsmodell nutzt, schneidet das Datenbankmodul das Transaktionsprotokoll nach einer Protokollsicherung ab, sofern seit der letzten Sicherung ein Prüfpunkt aufgetreten ist. Mehr über das Sichern von Transaktionsprotokollen erfahren Sie in Kapitel 11, »Sicherung und Wiederherstellung«. is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – A dm in Mit dem Befehl DBCC SQLPERF (LOGSPACE) können Sie die Menge des belegten Protokollspeicherplatzes überwachen. Abbildung 3.21 zeigt die Ausgabe dieses Befehls. Abbildung 3.21 DBCC SQLPERF (LOGSPACE) 9783866459861.book Seite 170 Donnerstag, 6. September 2012 2:24 14 170 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten Um einer Datenbank Protokolldateien hinzuzufügen, verwenden Sie die Anweisung ALTER DATABASE mit der Option ADD LOG FILE. Die Größe einer Transaktionsprotokolldatei ändern Sie mit der Option MODIFY FILE der Anweisung ALTER DATABASE, wobei Sie Werte für SIZE und MAXSIZE angeben: Standardmäßig sind die Transaktionsprotokolldateien von SQL Server 2012 mit einem automatischen Wachstum von 10% bis zum Höchstwert von 2.097.152 MB eingerichtet. Weitere Informationen: Transaktionsprotokolldateien Mehr über Transaktionsprotokolle erfahren Sie auf http://msdn.microsoft.com/de-de/library/ ms190925(SQL.110).aspx. Verwenden von Befehlen der Datenbankkonsole is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – Mit Befehlen der Datenbankkonsole (Database Console Commands, DBCC) können Sie SQL Server 2012 durch Abfragen verwalten, anstatt die grafische Benutzeroberfläche von SQL Server Management Studio zu verwenden. Es gibt folgende Kategorien von DBCC-Befehlen: Wartung Befehle, die Wartungsaufgaben an Datenbanken, Indizes und Dateigruppen vornehmen. Informationen Validierung Befehle, mit denen Sie Operationen an Datenbanken, Tabellen, Indizes, Katalogen und Dateigruppen überprüfen können. Verschiedenes Befehle, mit denen Sie Ablaufverfolgungsflags aktivieren, die in den Arbeitsspeicher zu ladenden DLLs festlegen und ähnliche Aufgaben durchführen können. Befehle, die SQL Server-Informationen anzeigen. Wartungsanweisungen A dm in Die folgende Aufstellung nennt die DBCC-Wartungsanweisungen, ihren Zweck und die zu ihrer Ausführung erforderlichen Berechtigungen: DBCC CLEANTABLE Fordert Speicherplatz von gelöschten Spalten variabler Länge in indizierten Sichten und Tabellen zurück. Der Benutzer muss Besitzer der Tabelle oder indizierten Sicht, Mitglied der festen Serverrolle sysadmin oder Mitglied der festen Datenbankrolle db_owner oder db_ddladmin sein. DBCC DBREINDEX Erstellt einen oder mehrere Indizes für eine Tabelle neu. Der Benutzer muss Mitglied der festen Serverrolle sysadmin oder Mitglied der festen Datenbankrolle db_owner oder db_ddladmin sein. Diese Anweisung gilt in der jetzigen Version von SQL Server als veraltet. Für diese Aufgabe sollten Sie ALTER INDEX einsetzen. DBCC DROPCLEANBUFFERS Entfernt alle leeren Puffer aus dem Pufferpool. Der Benutzer muss Mitglied der festen Serverrolle sysadmin sein. DBCC FREEPROCCACHE Entfernt alle Elemente oder einen bestimmten Plan aus dem Plancache oder alle Cacheeinträge, die zu einem bestimmten Ressourcenpool gehören. Der Benutzer muss über die Berechtigung ALTER SERVER STATE für das Datenbankmodul verfügen. 9783866459861.book Seite 171 Donnerstag, 6. September 2012 2:24 14 Lektion 2: Verwalten und Konfigurieren von Datenbanken 171 DBCC INDEXDEFRAG Defragmentiert Indizes. Diese Funktion wird in zukünftigen Versionen von SQL Server entfernt. Verwenden Sie stattdessen ALTER INDEX. Der Benutzer muss Mitglied der festen Serverrolle sysadmin oder Mitglied der festen Datenbankrolle db_owner oder db_ddladmin sein. DBCC SHRINKDATABASE Verkleinert alle Daten- und Protokolldateien der angegebenen Datenbank. Der Benutzer muss Mitglied der festen Serverrolle sysadmin oder Mitglied der festen Datenbankrolle db_owner sein. DBCC SHRINKFILE Verkleinert die angegebene Daten- oder Protokolldatei. Der Benutzer muss Mitglied der festen Serverrolle sysadmin oder Mitglied der festen Datenbankrolle db_owner sein. DBCC UPDATEUSAGE Aktualisiert die Daten über die Seiten- und Zeilenzahl für Katalogsichten, um Ungenauigkeiten auszumerzen. Der Benutzer muss Mitglied der festen Serverrolle sysadmin oder Mitglied der festen Datenbankrolle db_owner sein. Diese Anweisung wird aus Gründen der Rückwärtskompatibilität zur Verfügung gestellt. n is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 Informative Anweisungen – A dm in Die folgende Aufstellung nennt die informativen DBCC-Anweisungen, ihren Zweck und die zu ihrer Ausführung erforderlichen Berechtigungen: DBCC INPUTBUFFER Zeigt die letzte Weiterleitung von Anweisungen vom Client zum Datenbankmodul. Der Benutzer muss Mitglied der festen Serverrolle sysadmin sein oder über die Berechtigung SERVER STATE verfügen. DBCC OPENTRAN Zeigt Informationen über die älteste laufende Transaktion, die älteste laufende verteilte Transaktion und die älteste laufende nicht verteilte Transaktion an. Der Benutzer muss Mitglied der festen Serverrolle sysadmin oder Mitglied der festen Datenbankrolle db_owner sein. DBCC OUTPUTBUFFER Zeigt den aktuellen Ausgabepuffer für eine angegebene session_id im Hexadezimal- und im ASCII-Format an. Der Benutzer muss Mitglied der festen Serverrolle sysadmin sein. DBCC PROCACHE Zeigt Informationen über den Prozedurcache an. Der Benutzer muss Mitglied der festen Serverrolle sysadmin oder Mitglied der festen Datenbankrolle db_owner sein. DBCC SHOW_STATISTICS Zeigt aktuelle Abfrageoptimierungsstatistiken für eine Tabelle oder indizierte Sicht an. Der Benutzer muss Mitglied der festen Serverrolle sysadmin oder Mitglied der festen Datenbankrolle db_owner oder db_ddladmin sein. DBCC SHOWCONFIG Zeigt Informationen über die Fragmentierung von Tabellen, Sichten und Indizes an. Der Benutzer muss Mitglied der festen Serverrolle sysadmin oder Mitglied der festen Datenbankrolle db_owner oder db_ddladmin sein Diese Anweisung gilt als veraltet. Um diese Informationen einzusehen, sollen Sie zur Verwendung der entsprechenden dynamischen Verwaltungssichten übergehen. 9783866459861.book Seite 172 Donnerstag, 6. September 2012 2:24 14 172 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten DBCC SQLPERF Zeigt Statistiken über die Speicherplatznutzung von Transaktionsprotokollen für alle Datenbanken in einer Instanz an. Für den Zugriff ist die Berechtigung VIEW SERVER STATE auf dem Server erforderlich. DBCC TRACESTATUS Zeigt Informationen über Ablaufverfolgungsflags an. Der Benutzer muss Mitglied der Rolle public sein. DBCC USEROPTIONS Zeigt Informationen über die zurzeit gültigen Optionen der Verbindung an. Der Benutzer muss Mitglied der Rolle public sein. Validierungsanweisungen Die folgende Aufstellung nennt die DBCC-Validierungsanweisungen, ihren Zweck und die zu ihrer Ausführung erforderlichen Berechtigungen: DBCC CHECKALLOC Führt eine Konsistenzprüfung der Strukturen für die Zuweisung von Festplattenspeicherplatz durch. Der Benutzer muss Mitglied der festen Serverrolle sysadmin oder Mitglied der festen Datenbankrolle db_owner sein. DBCC CHECKCATALOG Prüft die Konsistenz der Kataloge von Onlinedatenbanken. Der Benutzer muss Mitglied der festen Serverrolle sysadmin oder Mitglied der festen Datenbankrolle db_owner sein. is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – DBCC CHECKCONSTRAINTS Überprüft die Integrität einer bestimmten Einschränkung oder sämtlicher Einschränkungen einer Tabelle in der aktuellen Datenbank. Der Benutzer muss Mitglied der festen Serverrolle sysadmin oder Mitglied der festen Datenbankrolle db_owner sein. DBCC CHECKDB Prüft die physische und logische Integrität aller Objekte in einer gegebenen Datenbank; führt DBCC CHECKALLOC, DBCC CHECKTABLE und DBCC CHECKCATALOG aus; überprüft die Inhalte aller indizierten Sichten; überprüft die Konsistenz auf Linkebene zwischen Tabellenmetadaten, Dateisystemverzeichnissen und Dateien, wenn varbinary(max)-Daten mit FILESTREAM im Dateisystem gespeichert werden; validiert Service Broker-Daten. Der Benutzer muss Mitglied der festen Serverrolle sysadmin oder Mitglied der festen Datenbankrolle db_owner sein. Weitere Informationen: DBCC CHECKDB A dm in Mehr über DBCC CHECKDB erfahren Sie auf http://msdn.microsoft.com/de-de/library/ ms176064(SQL.110).aspx. DBCC CHECKFILEGROUP Überprüft die Zuweisung und strukturelle Integrität indizierter Sichten und Tabellen in einer gegebenen Dateigruppe. Der Benutzer muss Mitglied der festen Serverrolle sysadmin oder Mitglied der festen Datenbankrolle db_owner sein. DBCC CHECKIDENT Überprüft und ändert ggf. den Identitätswert einer gegebenen Tabelle. Der Benutzer muss Mitglied der festen Serverrolle sysadmin oder Mitglied der festen Datenbankrolle db_owner oder db_ddladmin sein. 9783866459861.book Seite 173 Donnerstag, 6. September 2012 2:24 14 Lektion 2: Verwalten und Konfigurieren von Datenbanken 173 DBCC CHECKTABLE Überprüft die Integrität aller Seiten und Strukturen, die eine Tabelle oder indizierte Sicht bilden. Der Benutzer muss Mitglied der festen Serverrolle sysadmin oder Mitglied der festen Datenbankrolle db_owner oder db_ddladmin sein. Prüfungstipp Machen Sie sich mit der Funktion von DBCC CHECKDB vertraut, bevor Sie die Prüfung 70-462 ablegen. Verschiedene weitere Anweisungen Die folgende Aufstellung nennt verschiedene weitere DBCC-Anweisungen, ihren Zweck und die zu ihrer Ausführung erforderlichen Berechtigungen: DBCC DLL-Name (FREE) Entfernt die angegebene DLL einer erweiterten gespeicherten Prozedur aus dem Arbeitsspeicher. Der Benutzer muss Mitglied der festen Serverrolle sysadmin oder Mitglied der festen Datenbankrolle db_owner sein. DBCC FREESESSIONCACHE Leert den Verbindungscache für verteilte Abfragen. Der Benutzer muss Mitglied der festen Serverrolle sysadmin sein. DBCC FREESYSTEMCACHE Leert alle nicht verwendeten Einträge aus sämtlichen Caches. Hierzu ist die Berechtigung ALTER SERVER STATE erforderlich. DBCC HELP Gibt Informationen über die angegebenen DBCC-Befehle. Der Benutzer muss Mitglied der festen Serverrolle sysadmin sein. DBCC TRACEOFF Deaktiviert die angegebenen Ablaufverfolgungsflags. Der Benutzer muss Mitglied der festen Serverrolle sysadmin sein. DBCC TRACEON Aktiviert die angegebenen Ablaufverfolgungsflags. Der Benutzer muss Mitglied der festen Serverrolle sysadmin sein. is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – Weitere Informationen: DBCC Mehr über DBCC erfahren Sie auf http://msdn.microsoft.com/de-de/library/ ms188796(SQL.110).aspx. Übung: Tabellenpartitionierung, Komprimierung, Verschlüsselung und Protokolldateien In dieser Übung partitionieren Sie Tabellen, richten die Verschlüsselung und Komprimierung ein und verwalten SQL Server-Protokolldateien. A dm in Übung 1: Partitionieren von Tabellen In dieser Übung fügen Sie Dateigruppen und Dateien zur Datenbank WingTipToys2012 hinzu. Außerdem erstellen Sie eine Partitionsfunktion und ein Partitionsschema und legen eine Tabelle an, die dieses Partitionsschema nutzt. Führen Sie dazu die folgenden Schritte aus: 9783866459861.book Seite 174 Donnerstag, 6. September 2012 2:24 14 174 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten 1. Melden Sie sich mit dem Benutzerkonto von Kim Akers an SQL-A an. 2. Erstellen Sie mithilfe von SQL Server Management Studio die Datenbank WingTipToys2012 in der Instanz SQL-A. 3. Fügen Sie der Datenbank WingTipToys2012 die Dateigruppen FgOne, FgTwo und FgThree hinzu. 4. Fügen Sie FgOne die Datenbankdatei file1 hinzu, FgTwo die Datei file2 und FgThree die Datei file3. 5. Erstellen Sie mithilfe von Transact-SQL die Partitionsfunktion WTPartFunction für die Datenbank WingTipToys2012. Diese Funktion soll für eine Partitionierung nach den RANGE LEFT-Werten 30 und 60 vom Datentyp integer sorgen. 6. Erstellen Sie mithilfe von Transact-SQL das Partitionsschema WTPartScheme für WTPartFunction und die Dateigruppen FgOne, FgTwo und FgThree. is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 Übung 2: Einrichten von Verschlüsselung und Komprimierung n – 7. Erstellen Sie die Tabelle Toys mit Spalte 1 vom Datentyp integer und Spalte 2 vom Typ char(30). Wenden Sie WTPartScheme auf Spalte 1 an. In dieser Übung stellen Sie eine Verbindung zur Instanz SQL-A\ALTERNATE her, erstellen eine neue Datenbank und verschlüsseln sie. Außerdem legen Sie neue Tabellen an und komprimieren sie. Führen Sie dazu die folgenden Schritte aus: 1. Stellen Sie in SQL Server Management Studio eine Verbindung zur Instanz SQL-A \ALTERNATE her. 2. Erstellen Sie die neue Datenbank WingTipToys2012 mit den Standardeinstellungen. 3. Verschlüsseln Sie WingTipToys2012 mithilfe der geeigneten Transact-SQL-Abfragen mit TDE. 4. Erstellen Sie in WingTipToys2012 die Tabelle Aeroplanes. Die Tabelle soll nur über eine einzige Spalte namens Model vom Datentyp varchar(max) verfügen. 5. Richten Sie für Aeroplanes die Zeilenkomprimierung ein. 6. Erstellen Sie in WingTipToys2012 die Tabelle Helicopters. Die Tabelle soll nur über eine einzige Spalte namens Model vom Datentyp varchar(max) verfügen. 7. Richten Sie für Helicopters die Seitenkomprimierung ein. Übung 3: Verwalten von Transaktionsprotokolldateien In dieser Übung verwalten Sie Transaktionsprotokolldateien. Führen Sie dazu die folgenden Schritte aus: 1. Fügen Sie auf der Standardinstanz von SQL-A eine Datei zum Transaktionsprotokoll der Datenbank WingTipToys2012 hinzu. A dm in 2. Setzen Sie einen Transaktionsprotokoll-Prüfpunkt in WintTipToys2012. 3. Bestimmen Sie mit den geeigneten Transact-SQL-Anweisungen, wie viel Platz in den Transaktionsprotokollen frei ist. 9783866459861.book Seite 175 Donnerstag, 6. September 2012 2:24 14 Lektion 2: Verwalten und Konfigurieren von Datenbanken 175 Zusammenfassung der Lektion Dateigruppen sind Sammlungen von Datenbankdateien, die es Ihnen ermöglichen, Tabellen und Indizes zu partitionieren. Um die Datenbanken auf einer Instanz zu standardisieren, richten Sie die Systemdatenbank model ein. Eigenständige Datenbanken weisen keine Abhängigkeiten vom Datenbankmodul auf. Dadurch können Sie zu anderen Datenbanken und zu Cloud-Bereitstellungen wie SQL Azure verschoben werden. Durch die Zeilenkomprimierung werden die Datentypen geändert, um den Betrag an verwendetem Speicherplatz zu verringern. Bei der Seitenkomprimierung werden WörterbuchKomprimierungstechniken eingesetzt. Dadurch wird noch mehr Speicherplatz eingespart, was allerdings auf Kosten der CPU-Nutzung geht. Mit der transparenten Datenverschlüsselung (Transparent Data Encryption, TDE) können Sie ganze Datenbanken verschlüsseln. Die Datenbank bleibt selbst bei der Sicherung verschlüsselt. is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – Wann das Transaktionsprotokoll abgeschnitten wird, hängt vom verwendeten Wiederherstellungsmodell ab. Mit der Anweisung CHECKPOINT können Sie das Setzen eines Prüfpunkts erzwingen. Lernzielkontrolle Beantworten Sie die folgenden Fragen, um zu prüfen, wie gut Sie den Stoff aus dieser Lektion beherrschen. Antworten auf diese Fragen und Erklärungen darüber, warum eine bestimmte Antwort falsch oder richtig ist, finden Sie im Abschnitt »Antworten« am Ende dieses Kapitels. 1. Mit welcher Anweisung fügen Sie eine Dateigruppe zu einer vorhanden Datenbank hinzu? a. ALTER DATABASE b. CREATE DATABASE c. ALTER TABLE d. CREATE TABLE 2. Die Tabelle Students enthält die Namen, Adressen und Kontaktinformationen von Studenten der örtlichen Universität. Sie umfasst die Spalten Student_Name, DOB, Telephone, Email, Street_Address, Town, State und Zip Code. IDX1 ist ein Index der Spalte Student_Name. Mit welcher der folgenden Anweisungen erreichen Sie die größte Reduzierung des erforderlichen Speicherplatzes für die Daten der Tabelle Students? a. ALTER TABLE STUDENTS REBUILD WITH (DATA_COMPRESSION=ROW) A dm in b. ALTER TABLE STUDENTS REBUILD WITH (DATA_COMPRESSION=PAGE) c. ALTER INDEX IDX1 ON STUDENTS REBUILD PARTITION ALL WITH (DATA_COMPRESSION=ROW) d. ALTER INDEX IDX1 ON STUDENTS REBUILD PARTITION ALL WITH (DATA_COMPRESSION=PAGE) 9783866459861.book Seite 176 Donnerstag, 6. September 2012 2:24 14 176 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten 3. Was müssen Sie tun, bevor Sie TDE für eine Datenbank aktivieren können? (Die vollständige Lösung besteht aus mehreren Antworten. Wählen Sie drei aus.) a. Erstellen Sie den Verschlüsselungs-Hauptschlüssel. b. Erstellen Sie ein Zertifikat. c. Erstellen Sie den Datenbank-Verschlüsselungsschlüssel. d. Aktivieren Sie die Seitenkomprimierung. 4. Welchen Befehl müssen Sie ausführen, um die physische und logische Integrität aller Objekte innerhalb einer gegebenen Datenbank zu überprüfen? a. DBCC CHECKFILEGROUP b. DBCC CHECKDB c. DBCC SQLPERF is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 Fallstudien n – d. DBCC SHRINKDATABASE Wenden Sie in den folgenden Fallstudien das an, was Sie über die Einrichtung zusätzlicher SQL Server-Komponenten und über die Verwaltung und Konfiguration von Datenbanken gelernt haben. Die Antworten auf die Fragen finden Sie im Abschnitt »Antworten« am Ende dieses Kapitels. Fallstudie 1: Konfigurieren von FILESTREAM und FileTables Sie haben gerade SQL Server 2012 auf dem Server SYDNEY-DB bereitgestellt. Auf diesem Server soll eine Menge an Bilddateien gespeichert werden, von denen die meisten eine Größe zwischen 10 und 20 MB aufweisen. Angesichts dessen wollen Sie für die Standardinstanz von SYDNEY-DB die FILESTREAM-Funktion einrichten. Außerdem möchten Sie die Verwendung von FileTables ermöglichen, um das Hinzufügen von Bilddateien zur Datenbank zu vereinfachen. Beantworten Sie unter Berücksichtigung dieser Voraussetzungen die folgenden Fragen: 1. Welche Schritte müssen Sie in groben Zügen unternehmen, um FILESTREAM auf der Standardinstanz von Server SYDNEY-DB zu aktivieren? 2. Welche Schritte müssen Sie in groben Zügen unternehmen, um eine FileTable zu erstellen, nachdem Sie FILESTREAM auf der Standardinstanz von Server SYDNEY-DB aktiviert haben? A dm in Fallstudie 2: Bereitstellen der transparenten Datenverschlüsselung Sie möchten die transparente Datenverschlüsselung (TDE) verwenden, um die Datenbank ContosoCars2012 auf einer der Instanzen des SQL Server 2012-Datenbankmoduls Ihrer Organisation zu schützen. Beantworten Sie unter Berücksichtigung dieser Voraussetzungen die folgenden Fragen: 9783866459861.book Seite 177 Donnerstag, 6. September 2012 2:24 14 Empfohlene Übungen 177 1. Welche Abfrage verwenden Sie, um einen Verschlüsselungs-Hauptschlüssel mit dem Kennwort P@ssw0rd zu erstellen? 2. Mit welcher Abfrage erstellen Sie das Zertifikat zur Verschlüsselung der Datenbank? Der Zertifikatname soll dabei ServerCertA und der Antragstellername Server Certificate A lauten. 3. Mit welcher Abfrage erstellen Sie den Datenbank-Verschlüsselungsschlüssel (DEK) für ContosoCars2012? Dabei sollen Sie den Verschlüsselungsalgorithmus AES-128 und das Zertifikat ServerCertA verwenden. 4. Mit welcher Abfrage verschlüsseln Sie die Datenbank ContosoCars2012? n is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 Empfohlene Übungen – 5. Welche Abfrage verwenden Sie, um das Serverzertifikat in der Datei CertExport und den privaten Schlüssel in der Datei PrivateKey mit dem Kennwort P@ssw0rd zu verschlüsseln? Damit Sie die in diesem Kapitel vorgestellten Prüfungsziele meistern können, sollten Sie die folgenden Übungsaufgaben durchführen. FILESTREAM und FileTable Führen Sie zunächst die einzelnen Schritte auf, durch die Sie die folgenden Aufgaben erledigen wollen, und gehen Sie erst dann die Übungen an. Überprüfen Sie anschließend, wie genau Sie die notwendigen Schritte vorausgesagt haben. Übung 1 Aktivieren Sie FILESTREAM auf der Instanz ALTERNATE von Server SQL-A. Übung 2 Erstellen Sie auf der Instanz ALTERNATE von Server SQL-A eine neue Datenbank. Erstellen Sie eine FileTable in dieser Datenbank und füllen Sie sie. Transparente Datenverschlüsselung und Tabellenpartitionierung A dm in Führen Sie zunächst die einzelnen Schritte auf, durch die Sie die folgenden Aufgaben erledigen wollen, und gehen Sie erst dann die Übungen an. Überprüfen Sie anschließend, wie genau Sie die notwendigen Schritte vorausgesagt haben. Übung 1 Verschlüsseln Sie die neue Datenbank auf der Instanz ALTERNATE von SQL-A mit TDE. Übung 2 Fügen Sie eine zweite Dateigruppe sowie Dateien zu der neuen Datenbank hinzu. Erstellen Sie eine partitionierte Tabelle, die die primäre und die sekundäre Dateigruppe nutzt. 9783866459861.book Seite 178 Donnerstag, 6. September 2012 2:24 14 178 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten Antworten Dieser Abschnitt enthält die Antworten auf die Fragen der Lernzielkontrolle und die Lösungen der Fallstudien in diesem Kapitel. Lektion 1 1. Richtige Antwort: D a. Falsch: Mit SQL Server Management Studio können Sie Benutzern keinen Zugriff auf Integration Services geben. b. Falsch: Mit dem SQL Server-Konfigurations-Manger können Sie Benutzern keinen Zugriff auf Integration Services geben. n – c. Falsch: Mit den SQL Server-Datentools können Sie Projekte in Analysis Services, Integration Services und Reporting Services erstellen. Es ist damit aber nicht möglich, Benutzern Zugriff auf Integration Services zu gewähren. is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 d. Richtig: Mit dem Programm Dcomcnfg.exe können Sie Benutzern, die keine Administratoren sind, Zugriff auf Integration Services gewähren. 2. Richtige Antwort: B a. Falsch: Mit SQL Server Management Studio können Sie das Ausführungskonto von Reporting Services nicht ändern. b. Richtig: Mit dem Konfigurations-Manager für Reporting Services können Sie das Ausführungskonto von Reporting Services ändern. c. Falsch: Mit dem SQL Server-Konfigurations-Manager können Sie das Ausführungskonto von Reporting Services nicht ändern. d. Falsch: Mit dem SQL Server-Installationscenter können Sie das Ausführungskonto von Reporting Services nicht ändern. 3. Richtige Antwort: A a. Richtig: Die maximale Anzahl von Volltextindizes für eine Tabelle beträgt 1. b. Falsch: Die maximale Anzahl von Volltextindizes für eine Tabelle beträgt 1. Eine partitionierte Tabelle kann keine 32 Volltextindizes haben. c. Falsch: Die maximale Anzahl von Volltextindizes für eine Tabelle beträgt 1. Eine partitionierte Tabelle kann keine 1024 Volltextindizes haben. d. Falsch: Die maximale Anzahl von Volltextindizes für eine Tabelle beträgt 1. Eine partitionierte Tabelle kann keine 2048 Volltextindizes haben. 4. Richtige Antworten: A und C A dm in a. Richtig: Um FILESTREAM zu aktivieren, müssen Sie die Eigenschaften des SQL Server-Dienstes im SQL Server-Konfigurations-Manager bearbeiten. b. Falsch: Um FILESTREAM zu aktivieren, müssen Sie die Eigenschaften des Analysis Services-Dienstes im SQL Server-Konfigurations-Manager nicht bearbeiten. 9783866459861.book Seite 179 Donnerstag, 6. September 2012 2:24 14 Antworten 179 c. Richtig: Um FILESTREAM zu aktivieren, müssen Sie die sp_configure filestream_access_level, X ausführen, wobei X ein von null verschiedener Wert ist. d. Falsch: Durch sp_configure filestream_access_level, 0 deaktivieren Sie FILESTREAM. Lektion 2 1. Richtige Antwort: A a. Richtig: Mit der Anweisung ALTER DATEBASE können Sie eine Dateigruppe zu einer vorhandenen Datenbank hinzufügen. b. Falsch: Mit der Anweisung CREATE DATABASE können Sie eine neue Datenbank erstellen, aber keine vorhandene ändern. – c. Falsch: Mit der Anweisung ALTER TABLE können Sie eine Tabelle bearbeiten, aber keine Datenbank. is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n d. Falsch: Mit der Anweisung CREATE TABLE können Sie eine Tabelle erstellen, aber keine Datenbank ändern. 2. Richtige Antwort: B a. Falsch: Angesichts der Eigenschaften der Tabelle sorgt die Seitenkomprimierung für eine stärkere Verringerung des erforderlichen Speicherplatzes als die Zeilenkomprimierung. b. Richtig: Sofern die Tabelle nicht aus lauter einmaligen Daten besteht, sorgt die Seitenkomprimierung für die stärkste Verkleinerung, was aber auf Kosten der CPU-Nutzung geht. c. Falsch: In diesem Fall sorgt die Zeilenkomprimierung des Index nicht für eine so große Platzersparnis wie die Komprimierung der gesamten Tabelle. d. Falsch: In diesem Fall sorgt die Seitenkomprimierung des Index nicht für eine so große Platzersparnis wie die Komprimierung der gesamten Tabelle. 3. Richtige Antworten: A, B und C a. Richtig: Bevor Sie TDE für eine Datenbank aktivieren können, müssen Sie einen Verschlüsselungs-Hauptschlüssel erstellen. b. Richtig: Bevor Sie TDE für eine Datenbank aktivieren können, müssen Sie ein Zertifikat erstellen. c. Richtig: Bevor Sie TDE für eine Datenbank aktivieren können, müssen Sie einen Datenbank-Verschlüsselungsschlüssel erstellen. A dm in d. Falsch: Um TDE für eine Datenbank aktivieren zu können, ist es nicht erforderlich, die Seitenkomprimierung zu aktivieren. 9783866459861.book Seite 180 Donnerstag, 6. September 2012 2:24 14 180 Kapitel 3 Konfigurieren von SQL Server 2012-Komponenten 4. Richtige Antwort: B a. Falsch: DBCC CHECKFILEGROUP überprüft die Zuweisung und strukturelle Integrität indizierter Sichten und Tabellen in einer gegebenen Dateigruppe, aber nicht für die gesamte Datenbank. b. Richtig: DBCC CHECKDB prüft die physische und logische Integrität aller Objekte in einer gegebenen Datenbank. c. Falsch: DBCC SQLPERF zeigt Statistiken über die Speicherplatznutzung durch Transaktionsprotokolle an. d. Falsch: DBCC SHRINKDATABASE verkleinert alle Daten- und Protokolldateien der angegebenen Datenbank. Fallstudie 1 is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – 1. Um FILESTREAM auf der Standardinstanz des Servers SYDNEY-DB zu aktivieren, müssen Sie folgende allgemeine Schritte durchführen: a. Bearbeiten Sie die Eigenschaften des SQL Server-Dienstes, um FILESTREAM zu aktivieren. b. Führen Sie die gespeicherte Prozedur sp_configure filestream_access_level, X aus, wobei Sie für X den Wert 1 oder 2 einsetzen. c. Starten Sie die SQL Server-Dienste neu. d. Erstellen Sie eine FILESTREAM-Dateigruppe. e. Fügen Sie eine Datei zur FILESTREAM-Dateigruppe hinzu. 2. Nachdem Sie FILESTREAM auf der Standardinstanz von Server SYDNEY-DB aktiviert haben, müssen Sie die folgenden allgemeinen Schritte durchführen, um eine FileTable zu erstellen: a. Aktivieren Sie in der Datenbank den Nichttransaktionszugriff. b. Geben Sie auf der Datenbankebene ein Verzeichnis für FileTables an. c. Erstellen Sie eine Tabelle als FileTable. Fallstudie 2 1. Um einen Verschlüsselungs-Hauptschlüssel mit dem Kennwort P@ssw0rd zu erstellen, verwenden Sie folgende Abfrage: A dm in USE master; GO CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'P@ssw0rd'; GO 9783866459861.book Seite 181 Donnerstag, 6. September 2012 2:24 14 Antworten 181 2. Verwenden Sie die folgende Abfrage, um das Zertifikat ServerCertA mit dem Antragstellernamen Server Certificate A zu erstellen: CREATE CERTIFICATE ServerCertA WITH SUBJECT = 'Server Certificate A'; GO 3. Verwenden Sie die folgende Abfrage, um einen DEK für die Datenbank ContosoCars2012 mit dem Verschlüsselungsalgorithmus AES-128 und dem Zertifikat ServerCertA zu erstellen: USE ContosoCars2012; GO CREATE DATABASE ENCRYPTION KEY WITH ALGORITHM = AES_128 ENCRYPTION BY SERVER CERTIFICATE ServerCertA; GO is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 n – 4. Verwenden Sie die folgende Anweisung zur Verschlüsselung der Datenbank ContosoCars2012 ALTER DATABASE ContosoCars2012 SET ENCRYPTION ON; GO 5. Verwenden Sie folgende Anweisung, um das Serverzertifikat in der Datei CertExport und den Privatschlüssel in der Datei PrivateKey mit dem Kennwort P@ssw0rd zu sichern: A dm in BACKUP CERTIFICATE ServerCertA TO FILE = 'CertExport' WITH PRIVATE KEY ( FILE = 'PrivateKeyFile', ENCRYPTION BY PASSWORD = 'P@ssw0rd' ); GO is tr O ier rig en in v O al on r M M Pe in ic ic bo te Th PD r os ro B r W om F- Prin s of o Ta a a E- tf t tS yl rd s B IS T or ra Q oo B i N L ni kng Se IS 97 B 8fü rve N 3 rE r 97 -86 xa 201 8- 64 3- 5 m 284 -9 en D 83 86 70 ate 4- -1 -4 nb 00 62 an 1ke 9 in dm A n – 9783866459861.book Seite 182 Donnerstag, 6. September 2012 2:24 14