Настройка AWS RDS multi-az по умолчанию ложно сообщает о нескольких вторичных серверах
У нас есть 18 экземпляров AWS RDS, распределенных в 3 средах: тестовая (3), стадия (3) и производственная (12). Мы используем SQL 2017 Standard CU19 (Microsoft SQL Server 2017 (RTM-CU19)) по всем направлениям. Мы также используем multi-az (настройка по умолчанию), и из-за стандартной версии multi-az использует скрытое зеркальное отображение базы данных (DBM).
Согласно сотрудникам службы поддержки AWS и документации, в настройке multi-az по умолчанию у вас есть один основной и один дополнительный. Для большинства наших случаев это верно.
Однако для двух из них запуск этого сценария приведет к созданию 2 строк, как на этом снимке экрана (фактические имена экземпляров и конечные точки были хешированы):
;WITH dbm AS ( SELECT
@@SERVERNAME as [server_name],
DB_NAME([database_id]) as [database_name],
[mirroring_state_desc],
[mirroring_role_desc],
[mirroring_safety_level_desc],
[mirroring_partner_instance],
[mirroring_partner_name]
FROM
sys.database_mirroring
WHERE
[mirroring_role] IS NOT NULL)
SELECT
DISTINCT GETUTCDATE() AS [UTCDate],
[server_name],
[mirroring_partner_instance] AS [partner_name],
[mirroring_role_desc] FROM dbm
Я обратился к ним с просьбой о поддержке и:
- Я подтвердил при поддержке AWS, что все наши БД из этих двух экземпляров имеют только одну вторичную базу, где они находятся.
- они утверждают, что с их стороны все в порядке
Я столкнулся с этим последние 7 дней назад (или около того), когда пытался придумать альтернативное решение для обнаружения отказа (короче говоря: в автоматизации RDS есть ошибка, когда они перерабатывают журналы ошибок так часто, как им хочется поэтому я не могу полагаться на журнал ошибок SQL).
Последний раз эти инстансы отключались 27.07.2020, если это важно.
Предлагаемое решение для исправления этой ситуации - принудительное переключение на другой конец и посмотреть, разрешится ли ситуация. Поскольку на нас это не влияет, и это не производство, я бы предпочел остаться таким, если мне придется обратиться в службу поддержки MS. До этого мне было любопытно, испытывал ли это кто-нибудь еще, и если да, то какое решение было (и, если доступно, в чем была основная причина).
Заранее спасибо.
Алин Селичян