Проблемы
Предположим, что вы используете группу высокой доступности Always On в качестве дополнительной реплики. При попытке обновить версию Microsoft SQL Server 2016 до накопительного пакета обновления 2 (SP2) или более поздней версии происходит сбой сценария обновления, и вы можете получить следующие сообщения об ошибках:
DateTime spidSpidId Обновление параметров подписки и системных объектов в базе данных [Имя Базы данных].
DateTime spidSpidId Не удалось обновить базу данных "Имя Базы данных", так как она является доступной только для чтения.
DateTime spidSpidId Ошибка при выполнении sp_vupgrade_replication.
Причина
При обновлении вторичной реплики SQL AG происходит перепроявление между восстановлением базы данных и выполнением сценария обновления. Поэтому курсор, который вы используете в sp_vupgrade_replication, не может правильно отфильтровать базу данных, доступную только для чтения. В течение короткого времени дополнительные базы данных на этапе восстановления включаются в список редактируемых баз данных. Поэтому при попытке обновить эти базы данных возвращается исключение, так как базы данных являются доступными только для чтения.
Статус
Корпорация Майкрософт подтверждает наличие этой проблемы в своих продуктах, которые перечислены в разделе "Применяется к".
Решение
Эта проблема устранена в следующих накопительных обновлениях для SQL Server:
О накопительных обновлениях для SQL Server:
Каждое новое накопительное обновление для SQL Server содержит все исправления и исправления для системы безопасности, которые были включены в предыдущее накопительное обновление. Ознакомьтесь с последними накопительными обновлениями для SQL Server:
Ссылки
Узнайте о терминологии, используемой корпорацией Майкрософт для описания обновлений программного обеспечения.