Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Возвращает набор всех клерков памяти, активных в данный момент в экземпляре SQL Server.
Применимо для следующих объектов: SQL Server (начиная с SQL Server 2008 до текущей версии). |
Имя столбца |
Тип данных |
Описание |
|
|---|---|---|---|
memory_clerk_address |
varbinary(8) |
Указывает уникальный адрес клерка памяти. Это первичный ключевой столбец. Не допускает значения NULL. |
|
тип |
nvarchar(60) |
Указывает тип клерка памяти. Каждый клерк принадлежит к определенному типу, такому как CLR Clerks MEMORYCLERK_SQLCLR. Не допускает значения NULL. |
|
name |
nvarchar(256) |
Указывает внутреннее имя, назначенное данному клерку памяти. Компонент может иметь несколько клерков памяти определенного типа. Компонент может использовать определенные имена для идентификации клерков памяти одного и того же типа. Не допускает значения NULL. |
|
memory_node_id |
smallint |
Указывает идентификатор узла памяти. Не допускает значения NULL. |
|
single_pages_kb |
bigint |
|
|
pages_kb |
bigint |
Устанавливает объем страничной памяти (в килобайтах), выделяемый для этого клерка памяти. Не допускает значения NULL.
|
|
multi_pages_kb |
bigint |
Объем выделенной многостраничной памяти в КБ. Это объем памяти, выделенной с помощью механизма распределения множества страниц узлов памяти. Эта память выделена вне буферного пула и использует преимущества виртуального блока распределения узлов памяти. Не допускает значения NULL.
|
|
virtual_memory_reserved_kb |
bigint |
Указывает объем виртуальной памяти, зарезервированной клерком памяти. Не допускает значения NULL. |
|
virtual_memory_committed_kb |
bigint |
Указывает объем виртуальной памяти, зафиксированной клерком памяти. Объем зафиксированной памяти должен всегда быть меньше объема зарезервированной памяти. Не допускает значения NULL. |
|
awe_allocated_kb |
bigint |
Указывает объем физической памяти (в КБ), заблокированной в физической памяти и не выгруженной операционной системой. Не допускает значения NULL. |
|
shared_memory_reserved_kb |
bigint |
Указывает объем общей памяти, зарезервированной клерком памяти. Объем памяти, зарезервированной для использования при сопоставлении общей памяти и файлов. Не допускает значения NULL. |
|
shared_memory_committed_kb |
bigint |
Указывает объем общей памяти, зафиксированной клерком памяти. Не допускает значения NULL. |
|
page_size_in_bytes |
bigint |
Указывает гранулярность выделения страниц для этого клерка памяти. Не допускает значения NULL. |
|
page_allocator_address |
varbinary(8) |
Указывает адрес средства выделения страниц. Этот адрес уникален для клерка памяти и может использоваться в представлении sys.dm_os_memory_objects для поиска объектов памяти, связанных с данным клерком. Не допускает значения NULL. |
|
host_address |
varbinary(8) |
Указывает адрес памяти, по которому размещается данный клерк памяти. Дополнительные сведения см. в разделе sys.dm_os_hosts (Transact-SQL). Такие компоненты, как собственный клиент MicrosoftSQL Server, получают доступ к ресурсам памяти SQL Server через интерфейс узла. 0x00000000 = Клерк памяти принадлежит SQL Server. Не допускает значения NULL. |
Разрешения
Необходимо разрешение VIEW SERVER STATE на сервере.
Замечания
Диспетчер памяти SQL Server имеет трехуровневую иерархию. В нижней части иерархии располагаются узлы памяти. Средний уровень содержит клерки, кэш и пулы памяти. Верхний уровень содержит объекты памяти. Эти объекты обычно используются для выделения памяти в экземпляре SQL Server.
Узлы памяти обеспечивают интерфейс и реализацию низкоуровневых механизмов выделения. В пределах SQL Server доступ к узлам памяти имеют только клерки памяти. Клерки памяти получают доступ к интерфейсам узлов памяти для ее выделения. Узлы памяти также ведут слежение за выделяемой клерками памятью в целях диагностики. Каждый компонент, выделяющий значительный объем памяти, должен создать свой клерк памяти и выделить необходимую ему память с помощью интерфейсов клерка. Часто компоненты создают соответствующие им клерки во время запуска SQL Server.
См. также
Справочник
Динамические административные представления и функции (Transact-SQL)
sys.dm_os_sys_info (Transact-SQL)
sys.dm_exec_query_memory_grants (Transact-SQL)
sys.dm_exec_requests (Transact-SQL)