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.
Ř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.