KB4569424 – ÅTGÄRD: Tillfällig redundans för tillgänglighetsgruppen inträffar när tillgänglighetsgruppens hjälpanslutning överskrider tidsgränsen vid anslutning till SQL Server

Gäller för
SQL Server 2017 Developer Linux SQL Server 2017 Enterprise on Linux SQL Server 2017 Enterprise Core on Linux SQL Server 2017 Standard on Linux SQL Server 2019 on Linux

Symptom

Anta att du har konfigurerat AlwaysOn tillgänglighetsgrupp med hjälp av Pacemaker för SQL Server 2017 eller 2019 på Linux. När du ansluter till SQL Server märker du att tillfällig redundans för tillgänglighetsgruppen inträffar när AG-hjälpanslutningen överskrider tidsgränsen.

Status

Microsoft har bekräftat att detta är ett problem i de Microsoft-produkter som anges i avsnittet "Gäller".

Lösning

Det här problemet åtgärdas i följande kumulativa uppdateringar för SQL Server:

Om kumulativa uppdateringar för SQL Server:

Varje ny kumulativ uppdatering för SQL Server innehåller alla snabbkorrigeringar och alla säkerhetskorrigeringar som ingick i den tidigare kumulativa uppdateringen. Kolla in de senaste kumulativa uppdateringarna för SQL Server:

Mer information

Anta att du har konfigurerat tillgänglighetsgruppen (AG) med hjälp av Pacemaker för SQL Server 2017 eller 2019 på Linux. Tänk på att pacemakerns AG-hjälpresursagent använder följande klusterkonfigurationsfil enligt beskrivningen. AG-hjälpen använder anslutningsintervallet på 10 sekunder, tidsgränsen för anslutningen på 30 sekunder och övervakningstidsgränsen på 90 sekunder för hälsokontroll.

      

<master id="ha_cluster-master">

<primitive class="ocf" id="ha_cluster" provider="mssql" type="ag">

<instance_attributes id="ha_cluster-instance_attributes">

<nvpair id="ha_cluster-instance_attributes-ha_name" name="ha_name" value="TEST_AG"/>

<nvpair id="ha_cluster-instance_attributes-trace_ra" name="trace_ra" value="1"/>

</instance_attributes>

<Verksamhet>

<op id="ha_cluster-demote-interval-0s" interval="0s" name="demote" timeout="300"/>

<op id="ha_cluster-monitor-interval-60s" interval="60s" name="monitor" timeout="100"/>

<op id="ha_cluster-monitor-interval-11" interval="10" name="monitor" role="Master" timeout="90"/>

<op id="ha_cluster-monitor-interval-12" interval="12" name="monitor" role="Slave" timeout="60"/>

<op id="ha_cluster-notify-interval-0s" interval="0s" name="meddela" timeout="60"/>

<op id="ha_cluster-promote-interval-0s" interval="0s" name="promote" timeout="60"/>

<op id="ha_cluster-start-interval-0s" interval="0s" name="start" timeout="60"/>

<op id="ha_cluster-stop-interval-0s" interval="0s" name="stop" timeout="300"/>

</operationer>

<meta_attributes id="ha_cluster-meta_attributes">

<nvpair id="ha_cluster-meta_attributes-timeout" name="timeout" value="30s"/>

<nvpair id="ha_cluster-meta_attributes-failure-timeout" name="failure-timeout" value="60s"/>

</meta_attributes>

</primitive>

<meta_attributes id="ha_cluster-master-meta_attributes">

<nvpair id="ha_cluster-master-meta_attributes-notify" name="notify" value="true"/>

<nvpair id="ha_cluster-master-meta_attributes-trace_ra" name="trace_ra" value="1"/>

</meta_attributes>

</master>

      

Före kumulativ uppdatering 21 (CU21) för SQL Server 2017, om tidsgränsen för AG-hälsokontrollen uppnåddes vid anslutning till SQL Server, initierades en degraderingsåtgärd som ledde till redundansväxling av AG till sekundär nod.

Från CU21 och framåt, om en tidsgräns för anslutning inträffar, följer AG-hjälpresursagenten övervakningstidsgränsen på 90 sekunder och försöker ytterligare två anslutningar. Om alla tre anslutningsförsöken misslyckas deklarerar AG-hjälpresursagenten SQL Server som inte svarar och startar degraderingsåtgärden som leder till redundans för tillgänglighetsgruppen till den sekundära noden.

Referenser

Läs om den terminologi som Microsoft använder för att beskriva programuppdateringar.