Ознаки
Під час запуску екземпляра Microsoft SQL Server 2017 всередині контейнера "Докер Linux" може з'явитися повідомлення про помилку "Бракує пам'яті".
Причина
SQL Server для Linux за замовчуванням використовує м'яке обмеження 80% від загальної фізичної пам'яті, коли пам'ять. конфігурація memoryобмеженнямб не активовано; Для контейнерів "Докер" SQL використовується для того, щоб враховувати 80% від загальної пам'яті приймаючої, замість того, щоб обмежити себе 80% пам'яті, що виділяється до контейнера Докер. Ця неправильна обмеження пам'яті дає змогу SQL Server спробувати споживати пам'ять більше, ніж доступний для контейнера, і може бути кандидатом для припинення дії за допомогою програми OOM Killer.
Примітка.Коли ви створюєте зображення Докер, потрібно вказати – m, щоб обмежити пам'ять Докер. Щоб отримати докладні відомості, зверніться до статті нижче.
Спосіб вирішення
Виправлення для цієї проблеми наведено в оновленні таких оновлень для SQL Server:
Сукупне оновлення 10 для SQL Server 2017
Примітка. Якщо функція Memory. memoryобмеженнямб не настроєно, то це виправлення дає змогу SQL Server обмежити себе м'яким обмеженням 80% виділеної пам'яті до контейнера.
Відомості про збірки SQL Server
У кожному новому збірці для SQL Server містяться всі виправлення виправлень, які були в попередньому збірці. Радимо інсталювати найновішу версію для версії SQL Server:
Стан
Корпорація Майкрософт підтвердила, що це проблема в продуктах Microsoft, перелічених у розділі "застосовується до".
Посилання
Дізнайтеся про стандартну термінологію Microsoft, яка використовує для опису оновлень програмного забезпечення.