Служба записи SQL

Применимо к:SQL Server — только Windows

Служба записи SQL предоставляет дополнительные функции для резервного копирования и восстановления SQL Server с помощью платформы службы теневого копирования томов.

Служба записи SQL устанавливается автоматически. Она должна запускаться при запросе службы теневого копирования томов (VSS) резервного копирования или восстановления. Служба настраивается с помощью оснастки «Службы» Microsoft Windows. Служба записи SQL устанавливается во всех операционных системах Windows.

Назначение

Ядро СУБД блокирует файлы базы данных и имеет монопольный доступ к файлам базы данных. Если служба записи SQL не запущена, программы резервного копирования, работающие в Windows, не имеют доступа к файлам данных, и резервное копирование должно выполняться с помощью собственного SQL Server резервного копирования. Используйте службу записи SQL, чтобы программы резервного копирования Windows копировать SQL Server файлы базы данных во время выполнения SQL Server и сохранения монопольных блокировок для этих файлов.

служба «Теневое копирование томов»

VSS — это набор API COM, реализующий платформу, которая позволяет выполнять резервное копирование томов, пока приложения продолжают записывать данные на эти тома. VSS помогает координировать действия между пользовательскими приложениями, которые записывают данные на диск (записи), и приложениями, которые резервную копию данных (инициаторы запроса).

Служба теневого копирования томов захватывает и копирует стабильные образы для резервного копирования в работающих системах, особенно на серверах. При этом не происходит чрезмерного понижения производительности и стабильности работы служб. Дополнительные сведения о службе теневого копирования томов см. в документации по Windows.

Примечание

При использовании VSS для резервного копирования виртуальной машины, на которых размещена группа доступности уровня "Базовый", если на виртуальной машине сейчас размещаются базы данных, находящиеся в дополнительном состоянии, начиная с SQL Server 2016 (13.x) с пакетом обновления 2 (SP2) и SQL Server 2017 (14.x) с накопительным пакетом обновления 9 (CU9), эти базы данных не будут резервное копирование на виртуальной машине. Это связано с тем, что группы доступности уровня "Базовый" не поддерживают резервное копирование баз данных на реплика-получателе. В более ранних версиях SQL Server резервное копирование будет завершаться ошибкой.

Интерфейс виртуальных устройств резервного копирования (VDI)

SQL Server предоставляет API под названием Виртуальный интерфейс устройства резервного копирования (VDI), который позволяет независимым поставщикам программного обеспечения интегрировать SQL Server в свои продукты резервного копирования и восстановления. Эти функции API обеспечивают максимальную надежность и производительность, а также поддерживают все функции резервного копирования и восстановления SQL Server , включая полный набор возможностей оперативного и моментального резервного копирования. Если приложение стороннего поставщика запрашивает резервную копию snapshot (VSS), служба записи SQL вызывает функции API VDI для выполнения фактических резервных копий. API VDI не зависит от VSS и часто используется в программных решениях, которые не используют API VSS.

Разрешения

Служба «Модуль записи SQL» должна запускаться под учетной записью Local System . Модуль записи SQL использует имя входа NT Service\SQLWriter при подключении к SQL Server. С помощью имени входа NT Service\SQLWriter процесс записи SQL может запускаться на более низком уровне прав доступа в учетной записи, помеченной как без имени входа, что снижает потенциальную уязвимость. Если служба записи SQL отключена, любая служебная программа, которая использует моментальные снимки VSS, может выйти из строя и может привести к риску создания резервных копий баз данных, которые не являются согласованными. Например, System Center Data Protection Manager, а также некоторые другие сторонние продукты.

Если SQL Server, системе, в которой она работает, и системе узла (в случае виртуальной машины) не требуется ничего, кроме резервного копирования Transact-SQL, то службу записи SQL можно безопасно отключить и удалить имя входа. Служба записи SQL может вызываться резервным копированием на уровне системы или тома, независимо от того, напрямую ли эта резервная копия snapshot или нет. Некоторые продукты для резервного копирования системы используют службу VSS во избежание блокировки по открытым или заблокированным файлам. Службе записи SQL требуются разрешения sysadmin в SQL Server, так как в ходе своих действий она кратко замораживает все операции ввода-вывода для экземпляра SQL Server.

Компоненты

Служба «Модуль записи SQL» поддерживает:

  • полное резервное копирование и восстановление баз данных, включая полнотекстовые каталоги;
  • разностное резервное копирование и восстановление;
  • восстановление с перемещением;
  • переименование базы данных;
  • резервная копия, предназначенная только для копирования;
  • Автоматическое восстановление snapshot базы данных

Модуль записи SQL не поддерживает:

  • Резервные копии журналов;
  • Резервное копирование файлов и файловых групп;
  • Восстановление страницы

Обновление и обслуживание служб

Служба записи SQL является отдельной службой ядра СУБД SQL Server и совместно используется в разных версиях и экземплярах SQL Server на одном сервере. Файл службы записи SQL поставляется как часть пакета установки SQL Server и помечается тем же номером версии, что и модуль SQL Server, с которым он поставляется.

При установке нового экземпляра SQL Server на сервере или обновлении существующего экземпляра, если номер версии устанавливаемого или обновляемого экземпляра превышает номер версии службы записи SQL, которая в настоящее время находится на сервере, этот файл заменяется на версию из пакета установки.

Если служба записи SQL была обновлена пакетом обновления или накопительным пакетом обновления и установлена более новая версия SQL Server, вы можете заменить более новую версию службы записи SQL более старой версией при условии, что у установки более высокий номер основной версии. Например, служба модуля записи SQL обновлена в SQL Server 2016 (13.x); SP2 CU2. Если этот экземпляр обновлен до SQL Server 2017 (14.x) RTM, обновленная служба записи SQL заменяется более старой версией. В этом случае потребуется применить последний выпуск накопительного пакета обновлений для нового экземпляра, чтобы получить более новую версию службы модуля записи SQL.

Дальнейшие действия