SQL Writer-Dienst
Gilt für: SQL Server - nur Windows
Der SQL Writer-Dienst bietet zusätzliche Funktionalität zum Sichern und Wiederherstellen von SQL Server über das VSS-Framework (Volume Shadow Copy Service, Volumeschattenkopie-Dienst).
Der SQL Writer-Dienst wird automatisch installiert. Er muss ausgeführt werden, wenn die Anwendung des Volumenschattenkopie-Diensts (VSS, Volume Shadow Copy Service) eine Sicherung oder Wiederherstellung anfordert. Verwenden Sie das Microsoft Windows Services-Applet, um den Dienst zu konfigurieren. Der SQL Writer-Dienst kann unter allen Windows-Betriebssystemen installiert werden.
Zweck
Die Datenbank-Engine errichtet Sperren und verfügt über alleinigen Zugriff auf die Datenbankdateien. Wenn der SQL Writer-Dienst nicht ausgeführt wird, haben unter Windows ausgeführte Sicherungsprogramme keinen Zugriff auf die Datendateien, und Sicherungen müssen mithilfe der nativen SQL Server-Sicherung erfolgen. Verwenden Sie den SQL Writer-Dienst, um Windows-Sicherungsprogrammen das Kopieren von SQL Server-Datenbankdateien zu ermöglichen, während SQL Server ausgeführt wird und exklusive Sperren für diese Dateien verwaltet.
Volumenschattenkopie-Dienst
Die in VSS bereitgestellte Gruppe von COM APIs implementiert ein Framework, das die Sicherung von Volumes ermöglicht, während Anwendungen weiter Daten auf die betreffenden Datenträger schreiben. VSS unterstützt die Koordination zwischen Benutzeranwendungen, die Daten auf den Datenträger schreiben (Writer) und Anwendungen, die diese Daten sichern (Anforderer).
Der VSS kopiert und zeichnet dauerhafte Bilder zur Sicherung der laufenden Systeme, insbesondere der Server, auf, ohne dass dadurch Leistung und Stabilität der bereitgestellten Dienste übermäßig beeinträchtigt werden. Weitere Informationen zum VSS finden Sie in der Windows-Dokumentation.
Hinweis
Wenn Sie VSS zum Sichern einer VM verwenden, die eine Basisverfügbarkeitsgruppe und zurzeit Datenbanken hostet, die sich in einem sekundären Zustand befinden, werden diese Datenbanken ab SQL Server 2016 (13.x) SP2 CU2 und SQL Server 2017 (14.x) CU9 nicht mit der VM gesichert. Der Grund hierfür ist, dass für Basisverfügbarkeitsgruppen das Sichern von Datenbanken auf dem sekundären Replikat nicht unterstützt wird. Vor diesen Versionen von SQL Server wurde durch die Sicherung ein Fehler verursacht.
VDI (Virtual Backup Device Interface)
SQL Server stellt ein API namens VDI (Virtual Backup Device Interface) bereit, mit dem unabhängige Softwarehersteller SQL Server in ihre Sicherungs- und Wiederherstellungsprodukte integrieren können. Diese APIs wurden mit dem Ziel der maximalen Zuverlässigkeit und Leistung entworfen und unterstützen das gesamte Spektrum der in SQL Server bereitgestellten Sicherungs- und Wiederherstellungsfunktionen, einschließlich aller Funktionen von Hotbackups und Momentaufnahmesicherungen. Fordert die Anwendung eines Drittanbieters eine VSS-Momentaufnahmesicherung an, ruft der SQL Writer-Dienst die API-Funktionen der VDI auf, um die eigentlichen Sicherungen durchzuführen. Die API der VDI von VSS ist unabhängig und wird häufig in Softwarelösungen verwendet, die keine VSS-APIs verwenden.
Berechtigungen
Der SQL Writer-Dienst muss unter dem Konto Lokales System ausgeführt werden. Der SQL Writer-Dienst verwendet die Anmeldung für NT-Dienst\SQLWriter , um eine Verbindung mit SQL Serverherzustellen. Mithilfe der Anmeldung für NT-Dienst\SQLWriter kann der SQL Writer-Prozess mit einer niedrigeren Berechtigungsstufe unter einem Konto ausgeführt werden, das nicht als Anmeldekontogeführt wird. Auf diese Weise wird das Sicherheitsrisiko verringert. Wenn der SQL Writer-Dienst deaktiviert ist, kann jedes Hilfsprogramm, das auf VSS-Momentaufnahmen basiert, nicht mehr funktionieren, und es besteht die Gefahr, dass Sicherungen von Datenbanken erstellt werden, die nicht konsistent sind. Beispiele hierfür sind System Center Data Protection Manager sowie einige andere Produkte von Drittanbietern.
Wenn SQL Server, das System, auf dem die Software ausgeführt wird, und das Hostsystem (im Falle einer VM) keine anderen Komponenten als die Transact-SQL-Sicherung erfordern, kann der SQL Writer-Dienst gefahrlos deaktiviert und die Anmeldung entfernt werden. Der SQL Writer-Dienst kann durch eine Sicherung auf Volume- oder Systemebene initiiert werden, und zwar unabhängig davon, ob die Sicherung direkt auf einer Momentaufnahme basiert oder nicht. Einige Systemsicherungsprodukte verwenden VSS, um Blockierungen durch geöffnete oder gesperrte Dateien zu verhindern. Der SQL Writer-Dienst erfordert sysadmin-Berechtigungen in SQL Server, da im Verlauf der Dienstaktivitäten sämtliche E/A-Vorgänge für die Instanz von SQL Server kurzzeitig eingefroren werden.
Features
SQL Writer unterstützt:
- Vollständige Sicherung und Wiederherstellung von Datenbanken, einschließlich der Volltextkataloge
- Differenzielle Sicherung und Wiederherstellung
- Wiederherstellung mit MOVE-Klausel
- Datenbankumbenennung
- Kopiesicherung
- Automatische Wiederherstellung einer Datenbankmomentaufnahme
SQL Writer unterstützt Folgendes nicht:
- Protokollsicherungen
- Datei- und Dateigruppensicherung
- Seitenwiederherstellung
Dienstupgrade und -wartung
Der SQL Writer-Dienst ist ein von der SQL Server-Engine getrennter Dienst, der in den verschiedenen Versionen und Instanzen von SQL Server auf demselben Server gemeinsam genutzt wird. Die SQL Writer-Dienstdatei ist im Lieferumfang des SQL Server-Installationspakets enthalten und mit derselben Versionsnummer versehen wie die SQL Server-Engine, mit der sie ausgeliefert wird.
Wenn eine neue Instanz von SQL Server auf einem Server installiert oder eine vorhandene Instanz aktualisiert wird und die Versionsnummer der installierten oder aktualisierten Instanz höher als die Versionsnummer des auf dem Server befindlichen SQL Writer-Diensts ist, wird diese Datei durch die Datei aus dem Installationspaket ersetzt.
Wenn der SQL Writer-Dienst durch ein Service Pack oder ein kumulatives Update aktualisiert wurde und eine neuere Version von SQL Server installiert wird, können Sie eine neuere Version des SQL Writer-Diensts durch eine ältere ersetzen. Die Voraussetzung hierfür ist, dass die Installation eine höhere Hauptversionsnummer aufweist. Beispiel: Der SQL Writer-Dienst wurde in SQL Server 2016 (13.x) SP2 CU2 aktualisiert. Wenn diese Instanz auf SQL Server 2017 (14.x) RTM aktualisiert wird, wird der aktualisierte SQL Writer-Dienst durch eine ältere Version ersetzt. In diesem Fall müssten Sie das neueste kumulative Update auf die neue Instanz anwenden, um die neuere Version des SQL Writer-Dienst zu erhalten.