Sign in with Microsoft
Sign in or create an account.
Hello,
Select a different account.
You have multiple accounts
Choose the account you want to sign in with.

徵狀

當您在 Linux Docker 容器內執行 Microsoft SQL Server 2017 的實例時,您可能會收到記憶體不足的錯誤訊息。

原因

Linux 上的 SQL Server 根據預設,在未啟用 memorylimitmb 設定的情況下,使用了總實體記憶體的80% 的軟限制;對於 Docker 容器 SQL,是用來考慮總主機記憶體的80%,而不是將本身限制為已分配給 Docker 容器的80% 記憶體。 此不正確的記憶體限制可讓 SQL Server 嘗試消耗超過容器所能使用的記憶體,而且可由 OOM Killer 來供終止使用。

注意當您建立 Docker 影像時,您必須指定– m 來限制 Docker 記憶體。 如需詳細資訊,請參閱下列文章。

建立 Docker

解決方案

下列 SQL Server 更新包含此問題的修正程式:

SQL Server 2017 累計更新10 

如果未設定 memorylimitmb 設定,則此修正程式會允許 SQL Server 將其本身限制為已分配記憶體的80% 的軟限制至容器。

關於 SQL Server 組建

每個新組建的 SQL Server 都包含先前組建中的所有修復程式和安全性修正程式。 我們建議您安裝適用于您的 SQL Server 版本的最新組建:

SQL Server 2017 的最新組建

狀態

Microsoft 已確認本篇文章<適用於>一節所列之 Microsoft 產品確實有上述問題。

參考

瞭解 Microsoft 用於描述軟體更新的標準 術語

Need more help?

Want more options?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。

Was this information helpful?

How satisfied are you with the translation quality?
What affected your experience?
By pressing submit, your feedback will be used to improve Microsoft products and services. Your IT admin will be able to collect this data. Privacy Statement.

Thank you for your feedback!

×