Симптоми
Тази актуализация включва следните подобрения за Microsoft SQL Server AlwaysOn на изчакване на лизинговия договор:
-
Съобщението за изчакване на лизинговия договор сега показва и регистрира текущото време и очакваното време на подновяване.
-
За наетите работници е добавен ново съобщение за грешка, което ясно указва причината за изчакването на лизинговия договор.
-
Добавен е ново Разширено събитие и нов буфер за ринг за наети лица. Те ясно указват етапите на наемане.
Решение
Проблемът е коригиран първо в следващите сервизни пакети за SQL Server.
За повече информация относно SQL Server 2012 Service Pack 3 (SP3) вижте грешки, които са коригирани в SQL Server 2012 Service Pack 3.
Service Pack 2 за SQL Server за SQL Server 2014За сервизните пакети за SQL ServerСервизните пакети са кумулативни. Всеки нов сервизен пакет съдържа всички корекции, които са в предишните сервизни пакети, както и всички нови корекции. Нашата препоръка е да приложите последния сервизен пакет и най-новата сборна актуализация за този сервизен пакет. Не е необходимо да инсталирате предишен сервизен пакет, преди да инсталирате най-новия сервизен пакет. Използвайте таблица 1 в следващата статия, за да намерите повече информация за последния сервизен пакет и най-новата сборна актуализация.Как се определя нивото на версиите, изданието и актуализирането на SQL Server и неговите компоненти
Повече информация
За да предоставите допълнителна информация, към SQL Server са добавени нови съобщения за грешка. Таблицата по-долу изброява и обяснява всеки един от тях.
Грешка |
Съобщение за грешка |
Причина |
Коригиращо действие |
---|---|---|---|
19419 |
Подновяването на Договора за наемане между групата за достъпност "%. * ls" и Клъстерът за сривове на Windows Server е неуспешно, защото съществуващият лизингов договор вече не е валиден. |
Работникът по наемане в страната на SQL Server не се планира навреме за обработка на сигнала за събитие от клъстера. |
Проверете използването на ПРОЦЕСОРА на сървъра като наемен работник на SQL Server изглежда е от глад. |
19420 |
Групата "%. * ls" за достъпност е изрично помолена да спре подновяването на лизинговия договор. |
Подновяването на лизинговия договор спира като част от привеждането на групата за достъпност офлайн. Това е само информативно. |
|
19421 |
Подновяването на Договора за наемане между групата за достъпност "%. * ls" и Клъстерът за сривове на Windows Server е неуспешно, защото подновяването не се е случвало в интервала за наемане. |
Помощникът за даване под наем на страницата с клъстери не е сигнализирал на време за наемане на SQL Server. |
Проверете съответната група ресурси за наличност в WSFC, за да видите дали е докладвала за грешка. |
19422 |
Подновяването на Договора за наемане между групата за достъпност "%. * ls" и Клъстерът за сривове на Windows Server е неуспешно поради грешка в Windows с код на грешка ("% d"). |
Работникът по наем в страната на SQL Server не успя да поднови договора поради грешка в Windows. |
Проверете кода на грешката в Windows и предприемете корективното действие. |
19423 |
Договорът за наемане на група за достъпност "%. * ls" вече не е валиден, за да започне процесът на подновяване на лизинговия договор. |
Когато работникът по наем започва да обработва излишния лизингов час, предоставен чрез онлайн разговор, срокът на Договора е изтекъл. Това може да се случи поради проблеми с планирането. |
Проверете използването на ПРОЦЕСОРА на сървъра като наемен работник на SQL Server изглежда е от глад. |
19424 |
Работникът по наемане на група за достъпност "%. * ls" сега спи с излишния наемен час (% u MS), предоставен по време на онлайн. Това е само информационно съобщение. Не се изисква действие от потребителя. |
Информационна. Допълнително онлайн време за стартиране на темата за подновяване на лизинговия договор и като част от рутинната група за наличност онлайн. |
Пример за грешка 19419: Ако използвате дебъгер за прикачване към SQL Server, той прекъсва всяко обслужване на нишки в процеса на SQL Server, докато не възстановите процеса на SQL Server. Когато възобновите SQL Server, в регистрационния файл за грешки на SQL Server се съобщава следното:
<час за дата> Грешка на сървъра: 19419, тежест: 16, щат: 1. <час за дата> Клъстерът за сривове на сървъра на Windows Server не получи сигнал за събития на процеса от групата за хостинг на SQL Server, група "AG" в периода на изчакване на лизинговия договор. <час за дата> Грешка на сървъра: 19407, тежест: 16, щат: 1. <час за дата> Сървър Договорът за наем между група за достъпност "AG" и Клъстерът за срив на Windows Server е изтекъл. Възникна проблем със свързването между екземпляра на SQL Server и клъстера за сривове на Windows Server. За да определите дали групата за достъпност е неуспешно изправна, прегледайте съответния ресурс на групата за наличност в клъстера за сривове на Windows Server. <час за дата> Сървър AlwaysOn: локалната реплика на група за достъпност "AG" става офлайн, защото или лизинговият договор е изтекъл, или неуспешно подновяване на лизинговия договор. Това е само информационно съобщение. Не се изисква действие от потребителя. <час за дата> Сървър състоянието на репликата на локалната достъпност в групата достъпност "AG" се е променило от "PRIMARY_NORMAL" на "RESOLVING_NORMAL". Състоянието на реплика е променено поради стартиране, срив, комуникационен проблем или грешка в клъстер. За повече информация вижте наличността на таблото за достъпност на SQL Server, конзола за управление на клъстери за сривове на Windows Server или регистър за сривове на Windows Server.
Връща се грешка 19419, тъй като SQL Server не отговори на услугата за клъстери. Можете също така да получите съобщение за грешка при изтичане на срока на лизинговия договор (19407) заедно с грешката 19419.Пример за грешка 19424: по-долу е съобщението за излишък на лизингови съобщения, което е съобщено точно преди преходите към групата за достъпност до основната роля:
<час за дата> Сървър работникът по наемане на група за достъпност "AG" сега спи с излишния наемен час (164766 MS), предоставен по време на онлайн. Това е само информационно съобщение. Не се изисква действие от потребителя. <час за дата> Сървър състоянието на репликата на локалната достъпност в групата достъпност "AG" се е променило от "PRIMARY_PENDING" на "PRIMARY_NORMAL". Състоянието на реплика е променено поради стартиране, срив, комуникационен проблем или грешка в клъстер. За повече информация вижте наличността на таблото за достъпност на SQL Server, конзола за управление на клъстери за сривове на Windows Server или регистър за сривове на Windows Server.
Availability_group_lease_expired и hadr_ag_lease_renewal XEvents са подобрени с добавянето на точките от данни, които предоставят повече информация за състоянието на лизинговия договор. Таблицата по-долу описва подобренията в тези XEvents:
XEvent |
Нова колона |
Описание |
---|---|---|
availability_group_lease_expired |
current_time |
Час, в който срокът на Договора е изтекъл |
availability_group_lease_expired |
new_timeout |
Времето за прекъсване, когато availability_group_lease_expired бъде повдигнато, current_time е по-голямо от new_timeout |
availability_group_lease_expired |
членка |
Лизингови етапи: Вижте таблица на етапите на наемане по-долу |
hadr_ag_lease_renewal |
членка |
hadr_ag_lease_renewal |
hadr_ag_lease_renewal |
error_code |
Ако състоянието е HadrLeaseRenewal_FailedWithWindowsError, тогава error_code е кодът на грешката в Windows, свързан с неуспешното изпълнение |
Степени и дефиниции на лизинговия договорТаблицата по-долу показва възможните етапи от лизинговия договор и разяснява техните функции:
Име на етап |
Описание |
---|---|
HadrLeaseRenewal_LeaseWorkerStarted |
Започва да се стартира темата на наетия работник. |
HadrLeaseRenewal_StartedExcessLeaseSleep |
Започване на излишък от лизинговия договор. Излишък на лизингови етапи документ започването на темата на лизинговия договор по време на онлайн фазата на групата за достъпност. |
HadrLeaseRenewal_FailedExcessSleepInvalidOnlineLease |
Ние не успяваме излишъкът под аренда, ако договорът за наем вече е изтекъл. |
HadrLeaseRenewal_SkipExcessSleep |
Пропускаме излишния лизинг, ако продължителността на съня е по-малка от този на лизинговия интервал. Не е необходимо да минавате през излишния наем просто да стартирате процеса на разклащане на ръка. |
HadrLeaseRenewal_ExcessSleepSucceeded |
Излишък под аренда е успял. |
HadrLeaseRenewal_RenewSucceeded |
Би трябвало да видим това при всяко подновяване. |
HadrLeaseRenewal_LeaseNotValid |
Еквивалентно на грешка: Клъстерът за срив на сървъра на 19419Windows не получи съобщение за събитие за процеса от групата за достъпност на сървъра за хостинг на SQL Server "%. * ls" в периода на изтичане на срока на лизинговия договор. |
HadrLeaseRenewal_StopLeaseRenewal |
Би трябвало да видите това по време на събитие за срив. |
HadrLeaseRenewal_LeaseExpired |
Еквивалентно на грешка: групата за достъпност на 19421SQL Server за хостинг "%. * ls" не получи съобщение за събитие на процеса от клъстера за сривове на Windows Server в периода на изтичане на срока на лизинговия договор. |
HadrLeaseRenewal_FailedWithWindowsError |
Неуспешно подновяване на лизинговия договор поради грешка в Windows. |
За повече информация вижте подобрена диагностика на времето за наемане на AlwaysOn Group. За повече информация относно времето за наемане вижте как работи: изчакване за наемане на AlwaysOn на SQL Server.
Състоянието
Microsoft потвърди, че това е проблем в продуктите на Microsoft, които са посочени в секцията "важи за".