Compartir a través de


CORRECCIÓN: La memoria supera los límites configurados especificados por memory.memorylimitmb en SQL Server.

Síntomas

es posible que SQL Server en Linux no cumplan los límites de memoria establecidos por la opción de configuración memory.memorylimitmb, como se evidencia mediante herramientas de supervisión como el uso de memoria superior y ps que supera los límites configurados.

Por ejemplo, observe que la memoria notificada por los campos Tamaño de memoria residente (RES) o Uso de memoria residente (RSS) en los siguientes comandos es mayor que la memoria configurada por memory.memorylimitmb.

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

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

Solución

Este problema se ha corregido en las siguientes actualizaciones acumulativas para SQL Server:

Nota:

Después de aplicar la corrección, para los servidores que tienen configurada la autenticación de Active Directory, es posible que todavía vea el problema o observe que los límites de memoria de memory.memorylimitmb se consumen rápidamente. En este escenario, también debe actualizar la versión de los paquetes kerberos v5 (krb5) en Linux a 1.19.2 o versiones posteriores para resolver una defcred pérdida en krb5_gss_inquire_cred(). Para obtener más información, consulte Corrección de fugas defcred en krb5_gss_inquire_cred()..

Para las distribuciones de Red Hat Enterprise Linux (RHEL) 8, Ubuntu 20.04 o SUSE Linux Enterprise Server (SLES) 12, es posible que tenga que ponerse en contacto con el proveedor de distribución de Linux para solicitar paquetes actualizados para krb5.

Si no puede actualizar los paquetes, puede seguir trabajando en torno a la pérdida krb5_gss_inquire_cred() mediante conexiones agrupadas en la aplicación cadena de conexión s.

Supervisión del uso de memoria en SQL Server en Linux

Después de instalar la actualización acumulativa de SQL Server 2022 14 (CU14) o SQL Server 2019 CU27 o versiones posteriores, podrá supervisar las alertas de recursos del sistema mediante las columnas y system_high_memory_signal_state en sys.dm_os_sys_memory la system_low_memory_signal_state vista de administración dinámica (DMV). Si system_low_memory_signal_state muestra 1de forma coherente , considere la posibilidad de aumentar la asignación de memoria para SQL Server o revise las consultas que consumen la mayor parte de la memoria y, a continuación, resuelva sus requisitos de memoria.

Acerca de las actualizaciones acumulativas de SQL Server

Cada nueva actualización acumulativa de SQL Server contiene todas las revisiones y correcciones de seguridad que se encontraban en la compilación anterior. Se recomienda instalar la compilación más reciente para la versión de SQL Server:

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados en la sección "Se aplica a".

Referencias

Obtenga información sobre la terminología que usa Microsoft para describir las actualizaciones de software.

Aviso de declinación de responsabilidades sobre la información de terceros

Los productos de otros fabricantes que se mencionan en este artículo han sido creados por compañías independientes de Microsoft. Microsoft no ofrece ninguna garantía, ya sea implícita o de otro tipo, sobre la confiabilidad o el rendimiento de dichos productos.