Проблемы
Рассмотрим следующий сценарий.
-
Вы запускаете сервер, на котором размещается несколько экземпляров с разными основными версиями, включая не только Microsoft SQL Server 2008, 2008 R2, 2012 или 2014, но также SQL Server 2016 или 2017 (это относится к экземплярам для облегченных выпусков, например SQL Express).
-
Вы установили накопительное обновление 2 (SP1 2) для SQL server 2016 SP2 и накопительного обновления 10 (SP1 10) для SQL Server 2017.
-
Для резервного копирования базы данных в экземпляре SQL Server версии 2008, 2008 R2, 2012 или 2014 вы используете приложение службы теневого копирования томов (VSS).
-
Кроме того, вы запускаете резервную копию виртуальной машины с поддержкой VSS на уровне узла виртуализации, когда сервер является виртуальной машиной.
В этом сценарии приложение VSS не может успешно собирать базы данных SQL Server. Кроме того, в журналах событий приложений Windows может появиться сообщение об ошибке, подобное приведенному ниже.
Для экземпляра SQL Server 2008 или 2008 R2
Состояние ошибки: 1, степень серьезности: 16 Источник: Microsoft SQL Server Native Client 11,0 Сообщение об ошибке: неправильное имя объекта "master.sys.availability_replicas". Примечание. Ошибка будет возникать при выполнении следующего запроса: Declare @sql nvarchar (MAX) DECLARE @DatabaseName varchar (256) Set @databasename = N'master'set @sql = SELECT 1 от Master.sys.AVAILABILITY_REPLICAS как AR INNER JOIN Master. sys. databases AS d on DB_ID (' ' ' +имя_базы_данных + ' ') = D.DATABASE_ID и AR.REPLICA_ID = D.REPLICA_ID внутреннее соединение master.sys.dm_hadr_availability_replica_states как St on AR.replica_id = St.replica_id и St. role = 2 ' exec (@sql)
Для экземпляра SQL Server 2012 или SQL Server 2014, размещающего базы данных группы доступности AlwaysOn
Состояние ошибки: 1, степень серьезности: 16 Источник: Microsoft SQL Server Native Client 11,0 Сообщение об ошибке: неправильное имя столбца 'basic_features'.
И в этом случае запрос на ошибку будет следующим:
' Select database_id, ar.replica_id, replica_server_name, is_primary_replica, ar.group_id, basic_features с master.sys.availability_replicas AR, master.sys.dm_hadr_database_replica_states RS, master.sys.availability_groups AG, где database_id = DB_ID (' ' "+ @имя_базы_данных + ' ') и replica_server_name = ' ' + @INSTANCENAME + ' ' и ar.replica_id = rs.replica_id и ar.group_id = AG.group_id '
Решение
Эта проблема исправлена в перечисленных ниже накопительных обновлениях для SQL Server.
Накопительное обновление 12 для SQL Server 2017
Накопительное обновление 4 для SQL Server 2016 с пакетом обновления 2 (SP2)
Все новые накопительные обновления для SQL Server содержат все исправления и исправления для системы безопасности, которые были включены в предыдущий накопительный пакет обновления. Ознакомьтесь с самыми последними накопительными обновлениями для SQL Server.
Статус
Корпорация Майкрософт подтверждает наличие этой проблемы в своих продуктах, которые перечислены в разделе "Применяется к".
Ссылки
Ознакомьтесь с терминологией , которую Корпорация Майкрософт использует для описания обновлений программного обеспечения.