Prihláste sa s kontom Microsoft
Prihláste sa alebo si vytvorte konto.
Dobrý deň,
Vyberte iné konto.
Máte viacero kont
Vyberte konto, s ktorým sa chcete prihlásiť.

Po použití tejto aktualizácie budete musieť pridať príznak sledovania – T8075 ako spúšťací parameter, aby sa táto zmena povolila.

Príznaky

Keď spustíte dotaz v 64-bitovej verzii Microsoft SQL Server 2012, zobrazí sa chybové hlásenie o nedostatku pamäte, ktoré sa podobá nasledujúcemu hláseniu v denníku chýb servera SQL Server:

Nepodarilo sa vyhradiť stránky: FAIL_PAGE_ALLOCATION 513

Dotaz trvá príliš dlho na dokončenie vykonávania a stretávanie SOS_MEMORY_TOPLEVELBLOCKALLOCATOR čaká. Keď preskúmate nasledujúce informačné body, zistíte, že je k dispozícii veľmi málo voľného priestoru virtuálnych adries:

  • DBCC MEMORYSTATUS-Process/System počíta časť-dostupná Virtuálna pamäť

  • DMV: sys.dm_os_process_memory virtual_address_space_available_kb stĺpca

Tieto hodnoty začínajú približne 8 terabajtov (TB) v procese x64 a pokračujú v stúpaní a dosiahnu niekoľko gigabajtov (GB).  Keď sa nachádzate na javisku, kde je dostupný virtuálny priestor adries veľmi nízky, dotazy, ktoré sa pokúšajú o vyhradenie pamäte, sa môžu vyskytnúť aj pri type čakania v CMEMTHREAD. Nasledujúce údajové body sa v priebehu času budú naďalej zvyšovať:

  • DMV: sys.dm_os_process_memory a sys.dm_os_memory_nodes-stĺpec virtual_address_space_reserved_kb

  • DBCC MEMORYSTATUS – časť Správca pamäte – vyhradená VM

Tieto hodnoty sa zvyčajne zväčšia v násobkoch hodnoty "Max server Memory" až na takmer 8 TB.

Príčina

Keď sa proces SQL servera dosiahlo v stave, v ktorom celková pamäť servera = cieľový server Memory = max server Memory, tam sú politiky v SQL Server Memory Manager, aby nové vyhradenia žiadosti o viac 8 KB stránok uspieť dočasne. Opakovaný spôsob vyhradenia v rámci takejto podmienky môže spôsobiť fragmentáciu pamäťových blokov a spotrebu priestoru virtuálnych adries. Ak sa tento proces niekoľkokrát zopakuje, vyčerpá sa priestor virtuálnych adries SQL servera a všimnete si príznaky, ktoré sa spomenuli skôr.

Riešenie

Kumulatívna aktualizácia informácií

Tento problém bol najskôr vyriešený v nasledujúcej kumulatívnej aktualizácii SQL servera.

 

Každá nová Kumulatívna aktualizácia pre SQL Server obsahuje všetky rýchlych opráv a všetky opravy zabezpečenia, ktoré boli súčasťou predchádzajúcej kumulatívnej aktualizácie. Odporúčame, aby ste si stiahli a nainštalovali najnovšie kumulatívne aktualizácie pre SQL Server:

Táto rýchla oprava zabraňuje tomu, aby sa v pamäti aj nepretržité zmenšenie dostupného priestoru virtuálnych adries, ktoré sa môžu vyskytnúť.

Stav

Spoločnosť Microsoft potvrdzuje, že ide o problém v produktoch spoločnosti Microsoft, ktoré sú uvedené v tomto článku v časti Informácie v tomto článku sa týkajú nasledujúcich produktov.

Ďalšie informácie

  • Windows 2012 R2 povoľuje, aby virtuálny adresný priestor rástol ako veľký ako 128 TB. Z tohto dôvodu sa tento problém nemusí všimnúť v prostrediach Windows 2012 R2. Ďalšie informácie nájdete v téme Nasledujúca téma v centre Windowsu pre vývojárov:obmedzenia pamäte pre vydania Windowsu a Windows servera

  • Ak sa v priestore virtuálnych adries zobrazuje neustály rast aj po použití opravy, môžete určiť, ktoré dotazy alebo operácie požadujú veľké kúsky pamäte pomocou Page_allocated rozšírenej udalosti. Vzorový skript vyzerá takto:

    CREATE EVENT SESSION [memory_tracking] ON SERVERADD EVENT sqlos.page_allocated(    ACTION(package0.callstack,sqlos.cpu_id,sqlos.task_address,sqlos.worker_address,sqlserver.database_id,sqlserver.query_hash,sqlserver.request_id,sqlserver.session_id,sqlserver.sql_text)    WHERE ([number_pages]>(1)))ADD TARGET package0.event_file(SET filename=N'E:\Data\MSSQL11.MSSQLSERVER\MSSQL\Log\memory_tracking.xel')WITH (MAX_MEMORY=4096 KB,EVENT_RETENTION_MODE=ALLOW_SINGLE_EVENT_LOSS,MAX_DISPATCH_LATENCY=30 SECONDS,MAX_EVENT_SIZE=0 KB,MEMORY_PARTITION_MODE=PER_CPU,TRACK_CAUSALITY=OFF,STARTUP_STATE=OFF)GO

    Zvyčajne ide o zálohy denníkov a operácie na údržbu indexu, ktoré sa vyskytujú často.

Potrebujete ďalšiu pomoc?

Chcete ďalšie možnosti?

Môžete preskúmať výhody predplatného, prehľadávať školiace kurzy, naučiť sa zabezpečiť svoje zariadenie a ešte oveľa viac.

Komunity pomôžu s kladením otázok a odpovedaním na ne, s poskytovaním pripomienok a so získavaním informácií od odborníkov s bohatými znalosťami.

Boli tieto informácie užitočné?

Aká je podľa vás jazyková kvalita textu?
Čo sa vám páčilo, prípadne čo nie?
Stlačením tlačidla Odoslať sa vaše pripomienky použijú na zlepšenie produktov a služieb spoločnosti Microsoft. Váš správca IT bude môcť tieto údaje zhromažďovať. Vyhlásenie o ochrane osobných údajov.

Ďakujeme za vaše pripomienky!

×