标签归档:sql动态函数

MSSQL 动态管理函数 “sys.dm_exec_sql_text” 简介


sys.dm_exec_sql_text动态管理函数功能简介

1:根据sqlhandleID 返回对应的sql语句;
2:根据planhandleId 返回对应的执行计划内容

 select * from sys.dm_exec_sql_text(sql_handle | plan_handle)  


dbId:db服务器中数据库Id编号
objectId:此sqltext所对应的服务器ID,可为null
number:1 b表示存储过程 0表示其它,可为null
encrypted:1 表示此文本被加密 0表示此文本未被加密
text:表示文本内容 可为存储过程内容 函数内容 sql语句,执行计划内容



sys.dm_exec_sql_text举例应用

获取当前查询语句缓存中的sql语句

 select b.* from sys.dm_exec_query_stats  as a
 cross apply sys.dm_exec_sql_text(a.sql_handle) AS b
 

MSSQL 动态管理函数 “sys.dm_exec_connections” 简介


sys.dm_exec_connections动态管理函数功能简介

返回当前db服务器被客户端的连接信息。

select * from  sys.dm_exec_connections 

session_id: 返回当前连接的会话ID,方便同其它会话进行关联
most_recent_session_id:此连接最近一次请求的会话ID
connect_time:建立连接的时间戳
net_transport:客户端连接所使用的协议。 TCP Shared memory
protocol_type:协议类型(TSQL) SOAP
protocol_version:当前连接的协议版本信息
endpoint_id:连接类型标识符
encrypt_option:连接是否启用加密
auth_scheme:连接授权方式 (window(NTLM,NEGOTIATE,KERBEROS,BASIC,DIGEST) sql)
node_affinity:此连接关联的内存节点
num_reads:此连接发生的读次数
num_writes:此连接发生的写次数
last_read:最后一次读数据的时间戳
last_write:最后一次写数据的时间戳
net_packet_size:数据包大小
client_net_address:客户端地址(通常为ip地址或机器名称)
client_tcp_port:连接客户端,服务器所使用的端口号
local_net_address:db服务器的地址信息
local_tcp_port:db服务器使用的端口信息
connection_id:此连接系统所生成的唯一标识值
parent_connection_id:此连接所对应的父级连接ID
most_recent_sql_handle:此连接上一个请求sql handleId,可以通过 sys.dm_exec_sql_text(sql handleId) 获取上一个handleId所对应的sql语句

mssql 获取索引运行情况


下文主要讲述,获取索引的使用情况及运行次数最多的索引统计
通过获取索引的使用情况,可以对没有使用的索引进行清除



1 db服务器启动后,索引查找运行次数最多前十条索引获取

select top 10  b.name,a.* from sys.dm_db_index_usage_stats a 
left join sys.indexes  b on a.object_id = b.object_id 
and a.index_id =b.index_id
where b.name is not null 
and database_id=DB_ID()  --获取当前数据库下索引的使用情况
order by  a.user_seeks desc  ---索引使用次数最多



2 db服务器启动后,索引查找运行次数最少前十条索引获取

select  top 10 b.name,a.* from sys.dm_db_index_usage_stats a 
left join sys.indexes  b on a.object_id = b.object_id 
and a.index_id =b.index_id
where b.name is not null 
and database_id=DB_ID()  --获取当前数据库下索引的使用情况
and user_seeks =0        --索引未使用

相关阅读:
mssql 动态函数sys.dm_db_index_usage_stats功能简介