Sintomas
Tenha em conta o seguinte cenário:
- Executar um servidor que hospeda várias instâncias com diferentes versões principais, incluindo não apenas o Microsoft SQL Server 2008, 2008 R2, 2012 ou 2014, mas também o SQL Server 2016 ou 2017 (isso inclui instâncias de edições leves, como o SQL Express).
- Instalar a atualização cumulativa 2 (2) para SQL Server 2016 SP2 e atualização cumulativa 10 (10) para SQL Server 2017.
- Você usa um aplicativo VSS (Serviço de Cópias de Sombra de Volume) para fazer backup de qualquer banco de dados em uma instância SQL Server da versão 2008, 2008 R2, 2012 ou 2014.
- Ou, você inicia um backup habilitado para VSS da VM no nível do host de virtualização quando o servidor é uma máquina virtual.
Nesse cenário, o aplicativo VSS pode não coletar com êxito bancos de dados SQL Server. Além disso, poderá receber uma mensagem de erro nos registos de eventos de aplicações do Windows que é semelhante à seguinte:
Para uma instância do SQL Server 2008 OR 2008 R2
Nota
Estado de erro: 1, gravidade: 16
Fonte: Microsoft SQL Server Native Client 11.0
Mensagem de erro: nome de objeto inválido 'master.sys.availability_replicas'.
Observação: O erro ocorrerá ao executar a seguinte consulta:
declare @sql nvarchar(MAX)DECLARE @DatabaseName VARCHAR(256)set @DatabaseName =N'master'set @sql = SELECT 1 FROM master.sys.availability_replicas AS ar INNER JOIN master.sys.databases AS d ON DB_ID(''' + @DatabaseName + ''') = d.database_id E ar.replica_id = d.replica_id INNER JOIN master.sys.dm_hadr_availability_replica_states AS st ON ar.replica_id = st.replica_id AND st.role = 2'EXEC(@sql)
Para uma instância do SQL Server 2012 ou SQL Server 2014 que hospeda bancos de dados secundários do grupo de disponibilidade AlwaysOn
Nota
Estado de erro: 1, gravidade: 16
Fonte: Microsoft SQL Server Native Client 11.0
Mensagem de erro: o nome da coluna "basic_features" é inválido.
E, neste caso, a consulta que atinge o erro será:
Nota
'select database_id, ar.replica_id, replica_server_name, is_primary_replica, ar.group_id, basic_features from master.sys.availability_replicas ar, master.sys.dm_hadr_database_replica_states rs, master.sys.availability_groups ag where database_id = DB_ID(''' + @DatabaseName + ''' ) E replica_server_name = ''' + @INSTANCENAME + ''' E ar.replica_id = rs.replica_id E ar.group_id = ag.group_id'
Resolução
Este problema foi corrigido nas seguintes atualizações cumulativas para SQL Server:
Atualização cumulativa 12 para SQL Server 2017
Atualização cumulativa 4 para SQL Server 2016 SP2
Acerca das atualizações cumulativas para SQL Server
Cada nova atualização cumulativa para SQL Server contém todos os hotfixes e correções de segurança que foram incluídos com a atualização cumulativa anterior. Consulte as atualizações cumulativas mais recentes para SQL Server:
Atualização cumulativa mais recente para o SQL Server 2017
Atualização cumulativa mais recente para o SQL Server 2016
Estado
A Microsoft confirmou que se trata de um problema nos produtos Microsoft listados na secção "Aplica-se a".
Referências
Saiba mais sobre a terminologia que a Microsoft utiliza para descrever as atualizações de software.