Sintomas
Suponha que utiliza um grupo de elevada disponibilidade (AG) Always On como uma réplica secundária. Quando tenta atualizar o Microsoft SQL Server 2016 para o Service Pack 2 (SP2) Atualização Cumulativa 11 (CU11) ou versões posteriores, o script de atualização falha e poderá receber as seguintes mensagens de erro:
DateTime spidSpidId Definições da subscrição e objetos de sistema na base de dados [DatabaseName].
DateTime spidSpidId Falha ao atualizar a base de dados "NomeDa Base de Dados" porque a base de dados é só de leitura.
DateTime spidSpidId Erro ao executar sp_vupgrade_replication.
Causa
Quando uma atualização é efetuada na réplica secundária de uma SQL AG, existe uma corrida entre a recuperação da base de dados e a execução de scripts de atualização. Portanto, o cursor que utiliza no sp_vupgrade_replication não consegue filtrar corretamente as bases de dados só de leitura. Por um curto período de tempo, as bases de dados secundárias na fase de recuperação são incluídas na lista de bases de dados editáveis. Assim, quando tenta atualizar estas bases de dados, é devolvida uma exceção porque as bases de dados são só de leitura.
Estado
A Microsoft confirmou que este problema ocorre nos produtos da Microsoft listados na secção "Aplica-se a".
Resolução
Este problema foi corrigido nas seguintes atualizações cumulativas para SQL Server:
Acerca das atualizações cumulativas para SQL Server:
Cada nova atualização cumulativa para o SQL Server contém todas as correções de segurança incluídas na atualização cumulativa anterior. Consulte as atualizações cumulativas mais recentes para SQL Server:
Referências
Saiba mais sobre a terminologia que a Microsoft utiliza para descrever atualizações de software.