KB4347055 – OPRAVA: Chyba nedostatku paměti při spuštění SQL Server 2017 v kontejneru Dockeru Linux

Platí pro
SQL Server 2017 Developer SQL Server 2017 Enterprise SQL Server 2017 Enterprise Core

Příznaky

Když spustíte instanci Microsoft SQL Server 2017 v kontejneru dockeru systému Linux, může se zobrazit chybová zpráva o nedostatku paměti.

Příčina

SQL Server on Linux ve výchozím nastavení používá měkký limit 80 % celkové fyzické paměti, pokud memory.memorylimitmb konfigurace není povolená; U kontejnerů Dockeru SQL bere v úvahu 80 % celkové paměti hostitele místo toho, aby se omezoval na 80 % paměti přidělené kontejneru Dockeru. Tento nesprávný limit paměti umožňuje systému SQL Server využívat paměť ve větší míře, než jaká je k dispozici pro kontejner, a může být kandidátem na ukončení nástrojem OOM Killer.

Poznámka Při vytváření image Dockeru musíte zadat –m pro omezení paměti Dockeru. Další informace najdete v následujícím článku.

Vytvořit Docker

Řešení

Oprava tohoto problému je součástí následující aktualizace pro SQL Server:

Kumulativní aktualizace 10 pro SQL Server 2017

Poznámka Pokud konfigurace memory.memorylimitmb není nakonfigurovaná, pak tato oprava umožňuje SQL Server omezit se na měkký limit 80 % přidělené paměti kontejneru.

O buildech systému SQL Server

Každý nový build pro SQL Server obsahuje všechny opravy hotfix a opravy zabezpečení, které byly v předchozím buildu. Doporučujeme nainstalovat nejnovější build pro vaši verzi SQL Server:

Nejnovější build pro SQL Server 2017

Stav

Společnost Microsoft potvrdila, že se jedná o problém produktů Microsoft, které jsou uvedeny v sekci Platí pro.

Reference

Přečtěte si informace o standardní terminologii , kterou společnost Microsoft používá k popisu aktualizací softwaru.