Dela via


KORRIGERING: Minnet överskrider de konfigurerade gränser som anges av memory.memorylimitmb i SQL Server

Symptom

SQL Server på Linux kanske inte uppfyller de minnesgränser som anges av konfigurationsalternativet memory.memorylimitmb, vilket framgår av övervakningsverktyg som top och ps som visar minnesanvändning som överskrider de konfigurerade gränserna.

Du märker till exempel att det minne som rapporteras av fälten Resident Memory Size (RES) eller Resident Memory Usage (RSS) i följande kommandon är högre än det minne som konfigurerats av memory.memorylimitmb.

top -p $(pidof sqlservr | cut -d' ' -f1)

ps -p $(pidof sqlservr | cut -d' ' -f1) -u

Åtgärd

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

Kommentar

När du har tillämpat korrigeringen kan du fortfarande se problemet eller observera att minnesgränserna memory.memorylimitmb för förbrukas snabbt för servrar som har Konfigurerat Active Directory-autentisering. I det här scenariot måste du också uppdatera versionen av Kerberos v5-paket (krb5) i Linux till 1.19.2 eller senare versioner för att lösa en defcred läcka i krb5_gss_inquire_cred(). Mer information finns i Åtgärda avspäckad läcka i krb5_gss_inquire_cred().

För Distributioner av Red Hat Enterprise Linux (RHEL) 8, Ubuntu 20.04 eller SUSE Linux Enterprise Server (SLES) 12 kan du behöva kontakta linux-distributionsleverantören för att begära uppdaterade paket för krb5.

Om du inte kan uppdatera paketen kan du fortfarande kringgå läckan genom krb5_gss_inquire_cred() att använda poolanslutningar i ditt program anslutningssträng.

Övervaka minnesanvändning i SQL Server på Linux

När du har installerat SQL Server 2022 Kumulativ uppdatering 14 (CU14) eller SQL Server 2019 CU27 eller senare versioner kan du övervaka systemresursaviseringar med hjälp av kolumnerna system_low_memory_signal_state och system_high_memory_signal_state i sys.dm_os_sys_memory dynamisk hanteringsvy (DMV). Om system_low_memory_signal_state konsekvent visar 1kan du överväga att öka minnesallokeringen för SQL Server eller granska de frågor som förbrukar mest minne och sedan lösa deras minnesbehov.

Om kumulativa uppdateringar för SQL Server

Varje ny kumulativ uppdatering för SQL Server innehåller alla snabbkorrigeringar och säkerhetskorrigeringar som fanns i föregående version. Vi rekommenderar att du installerar den senaste versionen för din version av SQL Server:

Status

Microsoft har bekräftat att det är ett problem i de Microsoft-produkter som listas i avsnittet "Gäller för".

Referenser

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

Ansvarsfriskrivning för information från tredje part

De produkter från andra tillverkare som diskuteras i denna artikel tillverkas oberoende av Microsoft. Produkternas funktion eller tillförlitlighet kan därför inte garanteras.