RETTELSE: Hukommelsen overskrider de konfigurerede grænser, der er angivet af memory.memorylimitmb i SQL Server

Symptomer

SQL Server på Linux overholder muligvis ikke de hukommelsesgrænser, der er angivet af konfigurationsindstillingen memory.memorylimitmb, hvilket fremgår af overvågningsværktøjer som top og ps, der viser hukommelsesforbrug, der overskrider de konfigurerede grænser.

Du bemærker f.eks., at den hukommelse, der rapporteres af felterne Resident Memory Size (RES) eller Resident Memory Usage (RSS) i følgende kommandoer, er større end den hukommelse, der er konfigureret af memory.memorylimitmb.

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

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

Løsning

Dette problem er rettet i følgende kumulative opdateringer til SQL Server:

Bemærk

Når du har anvendt rettelsen for servere, der har Active Directory-godkendelse konfigureret, kan du muligvis stadig opleve problemet eller bemærke, at hukommelsesgrænserne for memory.memorylimitmb bruges hurtigt. I dette scenarie skal du også opdatere versionen af Kerberos v5 (krb5)-pakker på Linux til 1.19.2 eller nyere versioner for at løse en defcred lækage i krb5_gss_inquire_cred(). Du kan finde flere oplysninger under Ret afcred-lækage i krb5_gss_inquire_cred().

For Red Hat Enterprise Linux (RHEL) 8-, Ubuntu 20.04- eller SUSE Linux Enterprise Server (SLES) 12-distributioner skal du muligvis kontakte din Linux-distributionsleverandør for at anmode om opdaterede pakker for krb5.

Hvis du ikke kan opdatere pakkerne, kan du stadig omgå lækagen krb5_gss_inquire_cred() ved hjælp af grupperede forbindelser i dine programforbindelsesstrenge.

Overvåg hukommelsesforbrug i SQL Server på Linux

Når du har installeret SQL Server 2022 Cumulative Update 14 (CU14) eller SQL Server 2019 CU27 eller nyere versioner, kan du overvåge beskeder om systemressourcer ved hjælp af kolonnerne system_low_memory_signal_state og system_high_memory_signal_state i sys.dm_os_sys_memory DMV (Dynamic Management View). Hvis system_low_memory_signal_state det konsekvent vises1, kan du overveje at øge hukommelsesallokeringen for SQL Server eller gennemgå de forespørgsler, der bruger mest hukommelse, og derefter løse deres hukommelseskrav.

Om kumulative opdateringer til SQL Server

Hver ny kumulativ opdatering til SQL Server indeholder alle de programrettelser og sikkerhedsrettelser, der var i det tidligere build. Vi anbefaler, at du installerer det nyeste build til din version af SQL Server:

Status

Microsoft har bekræftet, at dette er et problem i de Microsoft-produkter, der er angivet i afsnittet "Gælder for".

Referencer

Få mere at vide om den terminologi, som Microsoft bruger til at beskrive softwareopdateringer.

Ansvarsfraskrivelse for tredjepartsoplysninger

De tredjepartsprodukter, der er nævnt i denne artikel, er fremstillet af firmaer, der er uafhængige af Microsoft. Microsoft påtager sig intet ansvar, hverken underforstået eller på anden måde, for funktionaliteten eller pålideligheden af disse produkter.