Share via


Einschränkungen für Datenbanksnapshots

Ein Datenbanksnapshot erfasst den Zeitpunkt, zu dem die Erstellung des Snapshots begann, abzüglich etwaiger Transaktionen, für die kein Commit ausgeführt wurde. Bevor Sie Datenbanksnapshots verwenden, sollten Sie die Auswirkungen von Datenbanksnapshots auf die Quelldatenbank und die Systemumgebung sowie Einschränkungen für die Snapshots selbst verstanden haben.

Wichtiger HinweisWichtig

Datenbanksnapshots sind nur in MicrosoftSQL Server 2005 Enterprise Edition und späteren Versionen verfügbar.

Einschränkungen für die Quelldatenbank

Solange ein Datenbanksnapshot vorhanden ist, sind die folgenden Einschränkungen für die Quelldatenbank des Snapshots vorhanden:

  • Die Datenbank kann nicht gelöscht, getrennt oder wiederhergestellt werden. Informationen zur Vorgehensweise beim Löschen eines Snapshots finden Sie unter Löschen eines Datenbanksnapshots.

    HinweisHinweis

    Das Sichern der Quelldatenbank arbeitet normal. Datenbanksnapshots haben hierauf keine Auswirkungen.

  • Die Leistung ist aufgrund einer Erhöhung der E/A-Vorgänge in der Quelldatenbank reduziert. Diese Erhöhung wird dadurch verursacht, dass bei jeder Aktualisierung einer Seite ein Kopie-bei-Schreibvorgang im Snapshot ausgeführt wird.

  • In der Quelldatenbank oder in den Snapshots können keine Dateien gelöscht werden.

  • Die Quelldatenbank muss online sein, es sei denn, bei der Datenbank handelt es sich um eine Spiegeldatenbank innerhalb einer Datenbank-Spiegelungssitzung.

    HinweisHinweis

    Alle Wiederherstellungsmodelle unterstützen Datenbanksnapshots.

  • Die Quelldatenbank kann nicht als skalierbare freigegebene Datenbank konfiguriert werden.

  • Zum Erstellen eines Datenbanksnapshots in einer Spiegeldatenbank muss sich die Datenbank im Spiegelungsstatus SYNCHRONIZED befinden.

Einschränkungen für Datenbanksnapshots

Für Datenbanksnapshots gelten die folgenden Einschränkungen:

  • Ein Datenbanksnapshot muss auf der gleichen Serverinstanz erstellt und gespeichert werden, auf der sich auch die Quelldatenbank befindet.

  • Datenbanksnapshots gelten immer für die gesamte Datenbank.

  • Datenbanksnapshots sind von der Quelldatenbank abhängig. Die Wiederherstellung von Datenbanken mithilfe von Datenbanksnapshots stellt daher keinen Ersatz für eine reguläre Sicherungs- und Wiederherstellungsstrategie dar. Daher ist es wichtig, dass Sie die Sicherungen wie geplant ausführen. Wenn Sie die Quelldatenbank zu dem Zeitpunkt wiederherstellen müssen, an dem Sie einen Datenbanksnapshot erstellt haben, implementieren Sie eine Sicherungsrichtlinie, die Ihnen dies ermöglicht.

  • Wenn eine Seite, die gerade in der Quelldatenbank aktualisiert wird, mithilfe von Push in einen Snapshot übertragen wird und für den Snapshot dabei nicht genügend Speicherplatz vorhanden ist oder ein anderer Fehler im Snapshot auftritt, wird der Snapshot fehlerverdächtig und muss gelöscht werden.

  • Snapshots sind schreibgeschützt.

  • Snapshots der Datenbanken model, master und tempdb sind nicht zulässig.

  • Sie können die Spezifikationen der Datenbank-Snapshotdateien nicht ändern.

  • Sie können in einem Datenbanksnapshot keine Dateien löschen.

  • Sie können Datenbanksnapshots nicht sichern oder wiederherstellen.

  • Sie können Datenbanksnapshots nicht anfügen oder trennen.

  • Sie können keine Datenbanksnapshots auf Partitionen mit dem FAT32-Dateisystem oder auf RAW-Partitionen erstellen. Die von Datenbanksnapshots verwendeten Dateien mit geringer Dichte werden vom NTFS-Dateisystem bereitgestellt.

  • Die Volltextindizierung wird für Datenbanksnapshots nicht unterstützt. Volltextkataloge werden nicht von der Quelldatenbank aus weitergegeben.

  • Ein Datenbanksnapshot erbt die Sicherheitseinschränkungen seiner Quelldatenbank zum Zeitpunkt der Erstellung des Snapshots. Da Snapshots schreibgeschützt sind, können geerbte Berechtigungen nicht geändert werden, und an der Quelle vorgenommene Berechtigungsänderungen werden nicht in vorhandenen Snapshots wiedergegeben.

  • Ein Snapshot gibt stets den Status von Dateigruppen zum Zeitpunkt der Erstellung des Snapshots wieder: Onlinedateigruppen bleiben online und Offlinedateigruppen offline. Weitere Informationen finden Sie unter "Datenbanksnapshots mit Offlinedateigruppen" weiter unten in diesem Thema.

  • Wenn eine Quelldatenbank den Status RECOVERY_PENDING erhält, kann auf ihre Datenbanksnapshots möglicherweise nicht mehr zugegriffen werden. Nachdem das Problem mit der Quelldatenbank gelöst wurde, sollten ihre Snapshots jedoch wieder verfügbar werden.

  • Die Wiederherstellung wird für schreibgeschützte Dateigruppen und für komprimierte Dateigruppen nicht unterstützt. Wiederherstellungsversuche für eine Datenbank mit diesen Typen von Dateigruppen sind fehlerhaft. Weitere Informationen zum Wiederherstellen finden Sie unter Zurückkehren zu einem Datenbanksnapshot.

  • In einer Protokollversandkonfiguration können Datenbanksnapshots nur für die primäre Datenbank erstellt werden, nicht für eine sekundäre Datenbank. Falls Sie die Rollen zwischen der primären Serverinstanz und einer sekundären Serverinstanz vertauschen, müssen Sie alle Datenbanksnapshots löschen, bevor Sie die primäre Datenbank als sekundäre Datenbank einrichten können.

  • Ein Datenbanksnapshot kann nicht als skalierbare freigegebene Datenbank konfiguriert werden.

  • FILESTREAM-Dateigruppen werden von Datenbanksnapshots nicht unterstützt. Wenn in einer Quelldatenbank FILESTREAM-Dateigruppen vorhanden sind, werden diese in den entsprechenden Datenbanksnapshots als offline markiert, und die Datenbanksnapshots können nicht für das Zurückversetzen der Datenbank in den früheren Zustand verwendet werden.

    HinweisHinweis

    In einer SELECT-Anweisung, die für einen Datenbanksnapshot ausgeführt wird, darf keine FILESTREAM-Spalte angegeben werden, da andernfalls die folgende Fehlermeldung zurückgegeben wird: Scan mit NOLOCK konnte aufgrund einer Datenverschiebung nicht fortgesetzt werden.

Benötigter Speicherplatz

Datenbanksnapshots belegen Datenträgerspeicher. Wenn für einen Datenbanksnapshot nicht genügend Speicherplatz vorhanden ist, wird er als fehlerverdächtig gekennzeichnet und muss gelöscht werden. (Auf die Quelldatenbank hat dies jedoch keine Auswirkungen. Aktionen in ihr werden normal fortgesetzt.) Im Vergleich zu einer vollständigen Kopie einer Datenbank sind Snapshots jedoch äußerst speicherplatzeffizient. Bei einem Snapshot ist nur genügend Speicher für die Seiten erforderlich, die während seiner Lebensdauer geändert werden. Im Allgemeinen werden Snapshots nur für eine begrenzte Zeit gespeichert. Daher spielt ihre Größe keine wesentliche Rolle.

Je länger ein Snapshot jedoch gespeichert wird, desto wahrscheinlicher belegt er verfügbaren Speicherplatz. Die maximale Größe, auf die eine Datei mit geringer Dichte anwachsen kann, ist die Größe der entsprechenden Quelldatenbankdatei zum Zeitpunkt der Erstellung des Snapshots. Weitere Informationen finden Sie unter Grundlegendes zur Größe von Dateien mit geringer Dichte in Datenbanksnapshots.

Wenn für einen Datenbanksnapshot nicht genügend Speicherplatz vorhanden ist, muss er gelöscht werden. Informationen zum Löschen eines Datenbanksnapshots finden Sie unter Löschen eines Datenbanksnapshots.

HinweisHinweis

Abgesehen vom Dateispeicherplatz nimmt ein Datenbanksnapshot ungefähr so viele Ressourcen in Anspruch wie eine Datenbank.

Datenbanksnapshots mit Offlinedateigruppen

Offlinedateigruppen in der Quelldatenbank haben Auswirkungen auf Datenbanksnapshots, wenn Sie versuchen, einen der folgenden Vorgänge auszuführen:

  • Erstellen eines Snapshots

    Wenn eine Quelldatenbank über eine oder mehrere Offlinedateigruppen verfügt, verläuft die Erstellung des Snapshots erfolgreich, wenn die Dateigruppen offline sind. Dateien mit geringer Dichte werden für die Offlinedateigruppen nicht erstellt.

    HinweisHinweis

    Informationen zur Rolle von Dateien mit geringer Dichte für Datenbanksnapshots finden Sie unter Funktionsweise von Datenbanksnapshots.

  • Offlineschalten einer Dateigruppe

    Sie können eine Datei in der Quelldatenbank offline schalten. Die Dateigruppe bleibt in Datenbanksnapshots jedoch online, wenn sie zum Zeitpunkt der Erstellung des Snapshots online war. Wenn die abgefragten Daten seit der Erstellung des Snapshots geändert wurden, kann im Snapshot auf die ursprüngliche Datenseite zugegriffen werden. Abfragen, die mithilfe des Snapshots auf ungeänderte Daten in der Dateigruppe zugreifen, schlagen jedoch wahrscheinlich mit E/A-Fehlern fehl.

  • Onlineschalten einer Dateigruppe

    Sie können eine Dateigruppe in einer Datenbank, die über einen Datenbanksnapshot verfügt, nicht online schalten. Wenn sich eine Dateigruppe während der Snapshoterstellung offline befindet oder offline geschaltet wird, während ein Datenbanksnapshot vorhanden ist, bleibt die Dateigruppe offline. Das liegt daran, dass eine Datei beim Onlineschalten wiederhergestellt wird; dies ist jedoch nicht möglich, wenn in der Datenbank ein Datenbanksnapshot vorhanden ist.

  • Wiederherstellen der Quelldatenbank mit dem Snapshot

    Für das Wiederherstellen einer Quelldatenbank aus einem Datenbanksnapshot ist es erforderlich, dass alle Dateigruppen online sind, mit Ausnahme der Dateigruppen, die zum Zeitpunkt der Erstellung des Snapshots offline waren.

Änderungsverlauf

Aktualisierter Inhalt

Dokumentiert, dass die FILESTREAM-Dateigruppen von Datenbanksnapshots nicht unterstützt werden (im Abschnitt "Einschränkungen für Datenbanksnapshots").