Síntomas
Imagine la siguiente situación:
-
Ejecute un servidor que hospede varias instancias con diferentes versiones principales, entre las que se incluyen no solo 2008 de Microsoft SQL Server, 2008 R2, 2012 o 2014, sino también SQL Server 2016 o 2017 (incluye instancias de las versiones ligeras, como SQL Express).
-
Instale la actualización acumulativa 2 (Cu 2) para SQL server 2016 SP2 y la actualización acumulativa 10 (Cu 10) para SQL Server 2017.
-
Use una aplicación de servicio de instantáneas de volumen (VSS) para realizar una copia de seguridad de cualquier base de datos de una instancia de SQL Server de la versión 2008, 2008 R2, 2012 o 2014.
-
O bien, inicia una copia de seguridad habilitada para VSS de la VM en el nivel de host de virtualización cuando el servidor es una máquina virtual.
En este caso, es posible que la aplicación VSS no recopile correctamente las bases de datos de SQL Server. Además, puede recibir un mensaje de error en los registros de eventos de aplicación de Windows que se parezcan a los siguientes:
Para una instancia de SQL Server 2008 o 2008 R2
Estado del error: 1, gravedad: 16 Origen: Microsoft SQL Server Native Client 11,0 Mensaje de error: el nombre de objeto ' master.sys.availability_replicas ' no es válido. Nota: El error se producirá cuando ejecute la consulta siguiente: declare @sql nvarchar (MAX) declare @DatabaseName VARCHAR (256) set @DatabaseName = N'master'set @sql = seleccione 1 de Master.sys.availability_replicas como INNER JOIN de ar Master. sys. Databases as d on DB_ID (' ' ' + @DatabaseName + ' ' ') = d.database_id y ar.replica_id = d.replica_id de unmaster.sys.dm_hadr_availability_replica_states "exec (ar.replica_id)
Para una instancia de SQL Server 2012 o SQL Server 2014 que hospede bases de datos secundarias del grupo de disponibilidad AlwaysOn
Estado del error: 1, gravedad: 16 Origen: Microsoft SQL Server Native Client 11,0 Mensaje de error: nombre de columna no válido 'basic_features'.
Y en este caso, la consulta que ha alcanzado el error será la siguiente:
' Select database_id, ar.replica_id, replica_server_name, is_primary_replica, ar.group_id, basic_features de Master.sys.availability_replicas ar, master.sys.dm_hadr_database_replica_states RS, master.sys.availability_groups AG donde database_id = DB_ID (' ' ' + @DatabaseName + ' ' ') y replica_server_name = ' ' + @INSTANCENAME + ' ' ' y ar.replica_id = rs.replica_id y ar.group_id = AG.group_id '
Resolución
Este problema se ha corregido en las siguientes actualizaciones acumulativas para SQL Server:
Cada actualización acumulativa nueva para SQL Server contiene todas las revisiones y correcciones de seguridad que se incluyeron con la actualización acumulativa anterior. Consulte las últimas actualizaciones acumulativas para SQL Server:
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft recogidos en la sección "Se aplica a".
Referencias
Obtenga más información sobre la terminología que Microsoft usa para describir las actualizaciones de software.