Симптоми
Имайте предвид сценария, описан по-долу:
- Използвате Microsoft SQL Server 2012 или SQL Server 2014.
- Имате база данни, която има разрешен брокер на услуги в основното копие.
- Архивирате базата данни на първичен сървър, който има разрешен брокер на услуги, и я възстановявате на вторичен сървър.
- Като част от определянето на групата за наличност между първичния и вторичния сървър, вие се опитвате да присъедините базата данни към групата за наличност с помощта на съветника за нова група за наличност или на командата:
ALTER DATABASE <dbname> SET HADR AVAILABILITY GROUP = <agname>
В този случай следната грешка се регистрира в регистъра на грешките на SQL Server:
Забележка
{
Грешка: 3449, Степен на сериозност: 21, Щат: 1.
SQL Server трябва да се изключи, за да възстанови база данни (ИД на база данни 1). Базата данни е или потребителска база данни, която не може да бъде изключена, или системна база данни. Рестартирайте SQL Server. Ако базата данни не успее да се възстанови след друго стартиране, поправете или възстановете
Проследяването на SQL е спряно поради изключване на сървъра. ИД на проследяване = '1'. Това е само информационно съобщение; Не се изисква действие от потребителя.
}
Причина
Проблемът възниква, защото ако база данни с разрешен брокер на услуги бъде архивирана и възстановена на вторичния сървър, брокерът на услугата във възстановената база данни не е разрешен. Базата данни продължава да запазва вътрешно ИД на брокера на услуги.
Когато добавите възстановената база данни на вторичния сървър към групата за наличност, брокерът на услугата е разрешен. Открива се същият GUID в базата данни за наличност и се извиква (безшумно) следната грешка:
9772 "Брокерът на услуги в база данни "<dbname>" не може да бъде разрешен, защото вече има разрешен брокер на услуги със същия ИД."
Това води до грешка 3449, тъй като базата данни се присъединява към групата за наличност, и причинява неочаквано изключване на SQL Server.
Решение
Проблемът е коригиран за първи път в следващата кумулативна актуализация на SQL Server.
Сборна актуализация 1 за SQL Server 2014 г. /bg-bg/help/2931693
Сборна актуализация 9 за SQL Server 2012 SP1 /en-us/help/2931078
За кумулативните актуализации за SQL Server
Всяка нова кумулативна актуализация за SQL Server съдържа всички актуални поправки и корекции на защитата, които са били включени в предишната кумулативна актуализация. Прегледайте последните кумулативни актуализации за SQL Server:
Състояние
Microsoft потвърждава, че това е проблем в продуктите на Microsoft, които са изброени в раздела „Важи за“.