KB4077105 – POPRAVEK: Napaka »Zmanjkalo je pomnilnika«, ko je prostora za navidezni naslov v procesu SQL Server zelo malo v SQL Server

Velja za
SQL Server 2014 Service Pack 2 - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2017 Developer on Windows SQL Server 2017 Enterprise on Windows SQL Server 2017 Enterprise Core on Windows SQL Server 2017 Standard on Windows SQL Server 2016 Service Pack 1 SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use)

Znaki

Recimo, da 64-bitno različico strežnika Microsoft SQL Server 2014, 2016 ali 2017 namestite v računalnik, v katerem je nameščen Windows Server 2012 ali starejša različica operacijskega sistema Windows. Ko SQL Server porabi ves navidezni naslovni prostor uporabniškega načina, se v dnevniku napak strežnika SQL Server lahko prikaže sporočilo o napaki, da zmanjka pomnilnika. Poleg tega traja dolgo časa, da se poizvedbe dokončajo in nastopi SOS_MEMORY_TOPLEVELBLOCKALLOCATOR čakanje.

Ko pregledate te informacijske točke, boste ugotovili, da je na voljo navideznega naslovnega prostora zelo malo:

  • DBCC MEMORYSTATUS – razdelek s štetjem procesov/sistemov – razpoložljiv navidezni pomnilnik
  • DMV: sys.dm_os_process_memory – stolpec virtual_address_space_available_kb

Te vrednosti se začnejo približno 8 TB v procesu x64, nato pa se navzdol dvigajo in dosežejo nekaj gigabajtov (GB).

Ko ste na stopnji, ko je razpoložljivega navideznega naslovnega prostora zelo malo, lahko poizvedbe, ki poskušajo izvesti dodelitev pomnilnika, prav tako naletijo na vrsto CMEMTHREAD čakanja.

Sčasoma se bo število teh podatkovnih točk povečevalo:

  • DMV: sys.dm_os_process_memory in sys.dm_os_memory_nodes – stolpec virtual_address_space_reserved_kb
  • DBCC MEMORYSTATUS – Razdelek »Upravitelj pomnilnika« – rezervirano za navidezni računalnik

Te vrednosti se običajno večkratniki vrednosti »največji dovoljeni pomnilnik strežnika« povečajo do skoraj 8 TB.

Opomba Sorodna težava je opisana tudi v članku 3074434 zbirke znanja.

Rešitev

Ta posodobitev je vključena v te zbirne posodobitve za SQL Server:

Zbirna posodobitev 4 za SQL Server 2017

Zbirna posodobitev 8 za SQL Server 2016 SP1

Zbirna posodobitev 10 za SQL Server 2014 s servisnim paketom SP2

O zbirnih posodobitvah za SQL Server:

Vsaka nova zbirna posodobitev za SQL Server vsebuje vse sprotne in varnostne popravke, ki so bili vključeni v prejšnjo zbirno posodobitev. Oglejte si najnovejše zbirne posodobitve za SQL Server:

Najnovejša zbirna posodobitev za SQL Server 2017

Najnovejša zbirna posodobitev za SQL Server 2016

Najnovejša zbirna posodobitev za SQL Server 2014

Opomba Ko uporabite to posodobitev, morate dodati zastavico sledenja 8075 kot zagonski parameter, da omogočite to spremembo.

Stanje

Microsoft je potrdil, da gre za težavo v Microsoftovih izdelkih, ki so navedeni v razdelku »Velja za«.

Sklici

Preberite več o terminologiji, ki jo Microsoft uporablja za opisovanje posodobitev programske opreme.