Servicio del objeto de escritura de SQL
Se aplica a: SQL Server: solo Windows
El Servicio del objeto de escritura de SQL proporciona funcionalidad adicional para la copia de seguridad y restauración de SQL Server mediante el marco del Servicio de instantáneas de volumen.
El Servicio del objeto de escritura de SQL se instala automáticamente. Se debe ejecutar cuando la aplicación Servicio de instantáneas de volumen (VSS) solicita una copia de seguridad o una restauración. Para configurar el servicio, utilice el applet Servicios de Microsoft Windows. El Servicio del objeto de escritura de SQL se instala en todos los sistemas operativos Windows.
Propósito
El Motor de base de datos bloquea los archivos de base de datos y tiene acceso exclusivo a estos. Cuando el Servicio del objeto de escritura de SQL no está en ejecución, los programas de copia de seguridad que se ejecutan en Windows no tienen acceso a los archivos de datos y las copias de seguridad se deben hacer mediante la copia de seguridad nativa de SQL Server. Utilice el Servicio del objeto de escritura de SQL para permitir que los programas de copia de seguridad de Windows copien los archivos de base de datos de SQL Server mientras SQL Server está en ejecución y mantiene bloqueos exclusivos en esos archivos.
Servicio de instantáneas de volumen
VSS es un conjunto de API COM que implementa un marco para permitir la realización de copias de seguridad de los volúmenes mientras las aplicaciones siguen escribiendo en dichos volúmenes. VSS ayuda en la coordinación entre las aplicaciones de usuario que escriben datos en disco (escritores) y las aplicaciones que hacen una copia de seguridad de esos datos (solicitantes).
VSS captura y copia imágenes estables para la creación de copias de seguridad en sistemas en ejecución, especialmente servidores, sin degradar innecesariamente el rendimiento y la estabilidad de los servicios que proporcionan. Para obtener más información acerca de VSS, vea la documentación de Windows.
Nota
Cuando se utiliza VSS para hacer copias de seguridad de una máquina virtual que hospeda un grupo de disponibilidad Básico, si la máquina virtual hospeda actualmente bases de datos que se encuentran en un estado secundario, a partir de SQL Server 2016 (13.x) SP2 CU2 y SQL Server 2017 (14.x) CU9, no se hará la copia de seguridad de esas bases de datos con la máquina virtual. Esto se debe a que un grupo de disponibilidad Básico no admite hacer copias de seguridad de las bases de datos en la réplica secundaria. Antes de estas versiones de SQL Server, la copia de seguridad podría producir un error.
Interfaz del dispositivo de copia de seguridad virtual (VDI)
SQL Server ofrece una API llamada interfaz de dispositivo de copia de seguridad virtual (VDI) que permite a los proveedores de software independientes integrar SQL Server en sus productos de copia de seguridad y restauración. Estas API están diseñadas para ofrecer una confiabilidad y rendimiento máximos, así como para ser compatibles con todas las funciones relativas a las copias de seguridad y restauración de SQL Server , incluidas todas las capacidades de copias de seguridad interactivas y de instantáneas. Si una aplicación de un proveedor externo solicita una copia de seguridad de instantánea (VSS), el Servicio del objeto de escritura de SQL llama a las funciones de la API de VDI para hacer las copias de seguridad reales. La API de VDI es independiente de VSS y se usa con frecuencia en las soluciones de software que no emplean las API de VSS.
Permisos
El servicio del objeto de escritura de SQL debe ejecutarse en la cuenta Sistema local . El servicio del objeto de escritura de SQL usa el inicio de sesión NT Service\SQLWriter para conectarse a SQL Server. El uso del inicio de sesión NT Service\SQLWriter permite que el proceso del objeto de escritura de SQL se ejecute en un nivel de privilegios menor en una cuenta designada como ningún inicio de sesión, lo que limita la vulnerabilidad. Si el Servicio del objeto de escritura de SQL está deshabilitado, cualquier utilidad que se base en instantáneas de VSS puede interrumpirse y puede darse el riesgo de hacer copias de seguridad de bases de datos que no sean coherentes. Algunos ejemplos son Data Protection Manager de System Center, así como otros productos de terceros.
Si ni SQL Server, el sistema en el que se ejecuta o el sistema host (en el caso de una máquina virtual) necesitan usar otra cosa que no sea la copia de seguridad de Transact-SQL, se puede deshabilitar de forma segura el Servicio del objeto de escritura de SQL y quitar el inicio de sesión. Una copia de seguridad de nivel del sistema o de volumen puede invocar al Servicio del objeto de escritura de SQL, tanto si la copia de seguridad se basa directamente en instantáneas como si no. Algunos productos de copia de seguridad del sistema usan VSS para evitar quedar bloqueados por archivos abiertos o bloqueados. El Servicio del objeto de escritura de SQL necesita permisos de sysadmin en SQL Server porque en el transcurso de sus actividades inmoviliza brevemente toda la E/S de la instancia de SQL Server.
Características
El objeto de escritura de SQL es compatible con las operaciones siguientes:
- Copias de seguridad y restauración completas de la base de datos, incluidos los catálogos de texto completo
- Copias de seguridad y restauración diferenciales
- Restauración con desplazamiento
- Cambio de nombre de una base de datos
- Copia de seguridad de solo copia
- Recuperación automática de instantánea de base de datos
El objeto de escritura de SQL no admite lo siguiente:
- Copias de seguridad de registros
- Copia de seguridad de archivos y grupos de archivos
- Restauración de página
Actualización y mantenimiento del servicio
El Servicio del objeto de escritura de SQL es un servicio independiente del Motor de base de datos de SQL Server y se comparte entre diferentes versiones e instancias de SQL Server en el mismo servidor. El archivo del Servicio del objeto de escritura de SQL se suministra como parte del paquete de instalación de SQL Server y se marca con el mismo número de versión que el motor de SQL Server con el que se suministra.
Cuando se instala una nueva instancia de SQL Server en un servidor o se actualiza una instancia existente, si el número de versión de la instancia que se instala o actualiza es mayor que el número de versión del Servicio del objeto de escritura de SQL que hay actualmente en el servidor, ese archivo se reemplazará por el del paquete de instalación.
Si el Servicio del objeto de escritura de SQL se actualizó mediante un Service Pack o una actualización acumulativa y se está instalando una versión más reciente de SQL Server, puede sustituir una versión más reciente del Servicio del objeto de escritura de SQL por otra más antigua, siempre que la instalación tenga un número de versión principal mayor. Por ejemplo, el servicio SQL Writer se actualizó en SQL Server 2016 (13.x) SP2 CU2. Si esa instancia se actualiza a SQL Server 2017 (14.x) RTM, el Servicio del objeto de escritura de SQL actualizado se reemplazará por una versión anterior. En este caso, necesitaría aplicar la última actualización acumulativa a la nueva instancia para obtener la versión más reciente del servicio SQL Writer.