Erstellen bzw. Aktualisieren einer Berichtsdatenbank
Aktualisiert: 05. Dezember 2005
In diesem Thema wird das Erstellen bzw. Aktualisieren einer Berichtsdatenbank beschrieben, die Sie als skalierbare freigegebene Datenbank verwenden möchten. Eine Berichtsdatenbank kann, wie in dieser Abbildung dargestellt, eine Kopie einer Produktionsdatenbank sein, oder sie kann aus mindestens einer Produktionsdatenbank importierte Berichtsdaten enthalten. Der Vorgang des Erstellens bzw. Aktualisierens einer Berichtsdatenbank wird als Erstellungsphase bzw. als Aktualisierungsphase bezeichnet, je nachdem, ob eine neue Berichtsdatenbank erstellt oder eine veraltete Berichtsdatenbank aktualisiert wird.
Die Lebensdauer einer skalierbaren freigegebenen Datenbank beginnt mit dem Erstellen einer neuen Berichtsdatenbank auf einer Gruppe von Berichtsdatenträgern. Schließlich können die Berichtsdaten nicht verwendet werden, da sie mit der Zeit nicht mehr aktuell sind, und die Berichtsdatenbank gilt dann als veraltet. Eine veraltete Berichtsdatenbank wird als Teil der einzelnen Updatezyklen aktualisiert. Das Aktualisieren einer veralteten Berichtsdatenbank umfasst das Aktualisieren der Daten bzw. das Erstellen einer vollständig neuen Version der Datenbank.
Sie können die in SQL Server 2005 bereitgestellten Methoden zum Kopieren von Daten oder Datenbanken verwenden, um eine Berichtsdatenbank zu erstellen bzw. zu aktualisieren. Weitere Informationen finden Sie nachfolgend in diesem Thema unter "Methoden zum Erstellen bzw. Aktualisieren einer Berichtsdatenbank".
Methoden zum Erstellen bzw. Aktualisieren einer Berichtsdatenbank
Hinweis: |
---|
Bevor eine Berichtsdatenbank erstellt bzw. aktualisiert wird, müssen die zugehörigen Berichtsdatenträger auf dem Produktionsserver bereitgestellt und jeweils für den Lese-/Schreibzugriff markiert sein. Eine Beschreibung der in diesem Verfahren enthaltenen Schritte finden Sie weiter unten in diesem Thema unter "Schritte zum Erstellen bzw. Aktualisieren der Datenbank". |
SQL Server 2005 unterstützt derzeit die folgenden Methoden zum Erstellen bzw. Aktualisieren einer Berichtsdatenbank:
- SQL Server Integration Services (SSIS)
Sie können eine Datenbank erstellen bzw. kopieren, indem Sie SSIS-Pakete ausführen und den Task SQL ausführen oder den Task Datenbank übertragen verwenden.- Der Task SQL ausführen führt SQL-Anweisungen oder gespeicherte Prozeduren von einem Paket aus. Mithilfe des Tasks SQL ausführen können Sie eine Datenbank erstellen, indem Sie eine CREATE DATABASE-Anweisung ausführen und dann die Datenbank durch Kopieren in mindestens eine Tabelle oder Sicht auffüllen. Weitere Informationen finden Sie unter SQL ausführen (Task).
- Mithilfe des Tasks Datenbank übertragen können Sie eine Datenbank innerhalb derselben Serverinstanz oder zwischen mehreren Instanzen kopieren. Weitere Informationen finden Sie unter Datenbanken übertragen (Task).
Hinweis: Sie können eine Datenbank auch mithilfe des SQL Server-Import/Export-Assistenten erstellen. Hierzu muss jedoch mindestens eine Tabelle oder Sicht kopiert werden. Weitere Informationen finden Sie unter Erstellen von Paketen mit dem SQL Server-Import/Export-Assistenten. - Sichern und Wiederherstellen
Sie können die Sicherung einer Produktionsdatenbank auf dem Berichtsdatenträger wiederherstellen. Dieser Vorgang umfasst die Wiederherstellung einer vollständigen Datenbanksicherung auf dem Berichtsdatenträger.- Wenn Sie für den Produktions- und Berichtsdatenträger denselben Laufwerkbuchstaben verwenden, stellen Sie den Berichtsdatenträger auf einem anderen Host bereit. Stellen Sie dann eine Verbindung mit einer Serverinstanz her, um die Datenbank wiederherzustellen.
- Wenn Sie für den Berichts- und Produktionsdatenträger unterschiedliche Laufwerkbuchstaben verwenden, müssen Sie der RESTORE DATABASE-Anweisung eine WITH MOVE-Klausel hinzufügen, die den Laufwerkbuchstaben des Berichtsdatenträgers im Pfadnamen der wiederhergestellten Datenbank angibt.
Weitere Informationen zum Sichern und Wiederherstellen zum Zweck des Kopierens einer Datenbank finden Sie unter Kopieren von Datenbanken durch Sichern und Wiederherstellen.
- Kopieren der Produktionsdatenbank
Bevor Sie eine Datenbank manuell kopieren bzw. die Methode zum Trennen und Anfügen des Assistenten zum Kopieren von Datenbanken verwenden können, müssen Sie die Datenbank offline schalten und nach dem Kopieren der Datenbank wieder online schalten. Der Assistent zum Kopieren von Datenbanken bietet allerdings eine alternative Methode, die SMO-Übertragungsmethode, mit der die Datenbank im Onlinestatus kopiert wird. Obwohl die SMO-Übertragungsmethode langsamer als die Methode zum Trennen und Anfügen ist, bietet sie den Vorteil, dass sämtliche aktive Verbindungen zur Datenbank beibehalten werden.
Weitere Informationen finden Sie unter Verwenden des Assistenten zum Kopieren von Datenbanken.
Hinweis: |
---|
Sie sollten beim Erstellen einer Berichtsdatenbank für die Produktions- und Berichtsdatenbank unbedingt denselben Pfadnamen und nach Möglichkeit denselben Laufwerkbuchstaben für den Produktions- und Berichtsdatenträger (nach Bereitstellung auf den Berichtsservern) verwenden. |
Es kann sich als vorteilhaft erweisen, die Berichtsdatenbank für die erwartete Arbeitsauslastung von Abfragen zu optimieren. Zu diesen Optimierungen gehören z. B.:
- Aktualisieren bzw. Neuerstellen von Statistiken in betroffenen Tabellen und Indizes (je nach Bedarf).
- Neuerstellen von Indizes mit dem FILL-Faktor 100.
- Festlegen des einfachen Wiederherstellungsmodells für die Berichtsdatenbank und Ausführen eines Prüfpunkts zum Abschneiden des Transaktionsprotokolls sowie zur Freigabe zusätzlichen Speicherplatzes.
Hinweis: |
---|
Richtlinien zum Verwenden einer Berichtsdatenbank als skalierbare, freigegebene Datenbank finden Sie unter Sicherstellen einer richtigen Umgebung für skalierbare freigegebene Datenbanken. |
Wenn eine Datenbank für die Verwendung bereit ist, müssen Sie die Berichtsdatenträger als schreibgeschützt markieren und diese vom Produktionsserver entfernen. Weitere Informationen finden Sie nachstehend in diesem Thema unter "Schritte der Erstellungs- bzw. Aktualisierungsphase".
Schritte der Erstellungs- bzw. Aktualisierungsphase
Hinweis: |
---|
Bevor Sie eine Berichtsdatenbank aktualisieren können, müssen zunächst die zugehörigen Berichtsdatenträger von allen Berichtsservern entfernt werden. Weitere Informationen finden Sie unter Trennen einer skalierbaren gemeinsam genutzten Datenbank. |
Führen Sie auf dem Produktionsserver folgende Aktion aus, um eine Berichtsdatenbank zu erstellen bzw. zu aktualisieren:
Finden Sie mithilfe der Hardwaredienstprogramme des Herstellers die logische Gerätenummer (LUN, Logical Unit Number) des jeweiligen Berichtsdatenträgers heraus, damit der Produktionsserver auf diese zugreifen kann. Führen Sie diesen Schritt für die einzelnen Datenträger aus, wenn die Datenbank mehrere Berichtsdatenträger verwendet.
Stellen Sie die einzelnen Berichtsdatenträger bereit, und markieren Sie sie jeweils für den Lese-/Schreibzugriff. Der DiskPart-Befehl list volumes, in dem alle Datenträger eines Computers angezeigt werden, enthält hilfreiche Datenträgerinformationen. Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, um mit dem DiskPart-Dienstprogramm den Datenträger bereitzustellen:
DiskPart
DISKPART> select volume=<drive-number>
DISKPART> assign letter=<drive-letter>
DISKPART> attribute clear readonly
DISKPART> exit
Dabei ist <drive-number> die vom Windows-Betriebssystem zugewiesene Datenträgernummer und <drive-letter> der für den Berichtsdatenträger zugewiesene Buchstabe. Führen Sie diesen Schritt für die einzelnen Datenträger aus, wenn die Datenbank mehrere Berichtsdatenträger verwendet.Beim Aktualisieren einer vorhandenen Berichtsdatenbank:
Fügen Sie die Datenbank einer Serverinstanz an (in der Regel an die Produktionsserverinstanz).
Weitere Informationen finden Sie unter CREATE DATABASE (Transact-SQL) oder Vorgehensweise: Anfügen einer Datenbank (SQL Server Management Studio).Legen Sie für die Datenbank den Lese-/Schreibzugriff fest.
Dies erreichen Sie mithilfe der folgenden Transact-SQL-Anweisung:ALTER DATABASE <database_name> SET READ_WRITE
Erstellen bzw. aktualisieren Sie die Datenbank.
Der Administrator erstellt bzw. aktualisiert die Datenbank mithilfe der von SQL Server 2005 bereitgestellten Methoden zum Kopieren von Daten oder Datenbanken. Die Berichtsdatenbank kann einen beliebigen gültigen Datenbanknamen verwenden. Weitere Informationen finden Sie weiter vorne in diesem Thema unter "Methoden zum Erstellen bzw. Aktualisieren einer Berichtsdatenbank".Hinweis: Für Berichtsdatenbanken wird die CHECKSUM-Standardeinstellung für PAGE_VERIFY empfohlen. Weitere Informationen finden Sie unter ALTER DATABASE (Transact-SQL). Trennen Sie die Datenbank von der Produktionsserverinstanz.
Sie können dies mithilfe der folgenden Transact-SQL-Anweisung ausführen:sp_detach_db @dbname='<database_name>'
Dabei ist <database_name> der Name der Datenbank.
Hinweis: Standardmäßig wird mit sp_detach_db UPDATE STATISTICS ausgeführt, um eine neue Stichprobe für die Statistiken zu erstellen. Einige Implementierungen erfordern jedoch das getrennte Ausführen von UPDATE STATISTICS mithilfe der FULL SCAN-Option. Markieren Sie die einzelnen Berichtsdatenbanken als schreibgeschützt, und entfernen Sie sie vom Produktionsserver.
Geben Sie an der Eingabeaufforderung die folgenden Befehle ein, um mit dem DiskPart-Dienstprogramm den Datenträger entfernen:
DiskPart
DISKPART> select volume=<drive-number>
DISKPART> attribute set readonly
DISKPART> remove
Dabei ist <drive-number> die vom Windows-Betriebssystem zugewiesene Datenträgernummer und <drive-letter> der für den Berichtsdatenträger zugewiesene Buchstabe. Führen Sie diesen Schritt für die einzelnen Datenträger aus, wenn die Datenbank mehrere Berichtsdatenträger verwendet.Wichtig: Berichtsdatenträger müssen schreibgeschützt sein, bevor sie vom Produktionsserver entfernt werden.
Die Berichtsdatenbank kann nun als skalierbare freigegebene Datenbank zur Verfügung gestellt werden. Weitere Informationen finden Sie unter Anfügen einer Berichtsdatenbank als eine skalierbare freigegebene Datenbank.
Siehe auch
Konzepte
Anfügen einer Berichtsdatenbank als eine skalierbare freigegebene Datenbank
Trennen einer skalierbaren gemeinsam genutzten Datenbank
Sicherstellen einer richtigen Umgebung für skalierbare freigegebene Datenbanken
Maximieren der Verfügbarkeit einer skalierbaren, freigegebenen Datenbank
Übersicht über skalierbare freigegebene Datenbanken
Andere Ressourcen
ALTER DATABASE (Transact-SQL)
sp_detach_db (Transact-SQL)