当前位置: 首页 > news >正文

SqlServer内存使用情况

-- 查询执行中sql语句

SELECT TOP 500

[session_id],

[request_id],

[start_time] AS '开始时间',

getdate() as 当前时间,

[status] AS '状态',

[command] AS '命令',

dest.[text] AS 'sql语句',

DB_NAME([database_id]) AS '数据库名',

[blocking_session_id] AS '正在阻塞其他会话的会话ID',

[wait_type] AS '等待资源类型',

[wait_time] AS '等待时间',

[wait_resource] AS '等待的资源',

[reads] AS '物理读次数',

[writes] AS '写次数',

[logical_reads] AS '逻辑读次数',

[row_count] AS '返回结果行数'

FROM sys.[dm_exec_requests] AS der

CROSS APPLY

sys.[dm_exec_sql_text](der.[sql_handle]) AS dest

ORDER BY 开始时间

-- 查询SqlServer总体的内存使用情况

select type , sum(virtual_memory_reserved_kb) VM_Reserved , sum(virtual_memory_committed_kb) VM_Commited , sum(awe_allocated_kb) AWE_Allocated , sum(shared_memory_reserved_kb) Shared_Reserved , sum(shared_memory_committed_kb) Shared_Commited --, sum(single_pages_kb) --SQL2005、2008 --, sum(multi_pages_kb) --SQL2005、2008 from sys.dm_os_memory_clerks group by type order by type

-- 查询当前数据库缓存的所有数据页面,哪些数据表,缓存的数据页面数量 -- 从这些信息可以看出,系统经常要访问的都是哪些表,有多大?

select p.object_id, object_name=object_name(p.object_id), p.index_id, buffer_pages=count(*) from sys.allocation_units a, sys.dm_os_buffer_descriptors b, sys.partitions p where a.allocation_unit_id=b.allocation_unit_id and a.container_id=p.hobt_id and b.database_id=db_id() group by p.object_id,p.index_id order by buffer_pages desc

-- 查询缓存的各类执行计划,及分别占了多少内存

-- 可以对比动态查询与参数化SQL(预定义语句)的缓存量

select cacheobjtype , objtype , sum(cast(size_in_bytes as bigint))/1024 as size_in_kb , count(bucketid) as cache_count from sys.dm_exec_cached_plans group by cacheobjtype, objtype order by cacheobjtype, objtype

-- 查询缓存中具体的执行计划,及对应的SQL

-- 将此结果按照数据表或SQL进行统计,可以作为基线,调整索引时考虑

-- 查询结果会很大,注意将结果集输出到表或文件中

SELECT usecounts , refcounts , size_in_bytes , cacheobjtype , objtype , TEXT FROM sys.dm_exec_cached_plans cp CROSS APPLY sys.dm_exec_sql_text(plan_handle) ORDER BY objtype DESC ; 

http://www.lryc.cn/news/274792.html

相关文章:

  • 谈谈我的三次考研经历
  • 红队打靶练习:SAR: 1
  • WSL 与真实 linux 环境区别有多大?
  • Springboot和Spring有什么区别
  • 创建Qt项目
  • 钢铁企业电力设计手册(上下册)总目录
  • Activemq存储KahaDb详解
  • 嵌入式C语言--ROMRAM相关概念(RO-data、RW-data、ZI-data的解释)
  • 用友GRP-U8 ufgovbank.class XXE漏洞复现
  • Vue2 - computed 和 method 的原理区别
  • Python开发环境搭建
  • 使用Go语言的HTTP客户端进行并发请求
  • 吴恩达深度学习l2week2编程作业—Optimization Methods(最新中文跑通版)
  • 每日一题——LeetCode1089.复写0
  • IPv6和IPv4在技术层面的区别
  • 如何充值GPT会员账号?
  • 设计模式:单例模式
  • 启动 Mac 时显示闪烁的问号
  • 十种编程语言的对比分析
  • React16源码: React.Children源码实现
  • 深度学习|4.1 深L层神经网络 4.2 深层网络的正向传播
  • 印象笔记03 衍生软件使用
  • R语言【CoordinateCleaner】——cc_gbif(): 根据通过 method 参数定义的方法,删除或标记地理空间中异常值的记录。
  • 模式识别与机器学习-集成学习
  • vue简单实现滚动条
  • 计算机网络第一课
  • 初识大数据,一文掌握大数据必备知识文集(12)
  • 安全防御之授权和访问控制技术
  • Iceberg从入门到精通系列之二十:Iceberg支持的字段类型
  • Unity坦克大战开发全流程——结束场景——通关界面