T-Sql Check IO Problem

--可以通过下面的查询了解哪个文件经常要做读(num_of_reads/num_of_bytes_read),经常要做写
--(num_of_writes/num_of_bytes_written),经常读写要等待(io_stall_write_ms/io_stall_read_ms/io_stall)
SELECT
db.name AS databasename,
f.fileid AS fileid,
f.filename AS FILENAME,
i.num_of_reads AS numofread,
i.num_of_bytes_read AS numofbyteread,
i.io_stall_read_ms AS ioinstallread,
i.num_of_writes AS numofwrite,
i.num_of_bytes_written AS numofbytewrite,
i.io_stall_write_ms AS iostallwrite,
i.io_stall AS iostall,
i.size_on_disk_bytes AS sizeondiskbyte
from sys.databases db INNER JOIN
sys.sysaltfiles f ON db.database_id=f.dbid
INNER JOIN sys.dm_io_virtual_file_stats(NULL,null) i
ON i.database_id=f.dbid AND i.file_id=f.fileid

----------------------------------------------------------------------------------------------------
SELECT
db.name AS databasename,
f.fileid AS fileid,
f.filename AS FILENAME,
i.num_of_reads AS numofread,
i.num_of_bytes_read AS numofbyteread,
i.io_stall_read_ms AS ioinstallread,
i.num_of_writes AS numofwrite,
i.num_of_bytes_written AS numofbytewrite,
i.io_stall_write_ms AS iostallwrite,
i.io_stall AS iostall,
i.size_on_disk_bytes AS sizeondiskbyte
from sys.databases db INNER JOIN
sys.sysaltfiles f ON db.database_id=f.dbid
INNER JOIN sys.dm_io_virtual_file_stats(DB_ID('gposdb'),null) i
ON i.database_id=f.dbid AND i.file_id=f.fileid


--动态管理视图sys.dm_io_pending_io_requests
--当前SQL中每个处于挂起状态的I/O请求
SELECT
database_id AS dbid,
file_id AS fileid,
io_stall AS iostall,
io_pending_ms_ticks AS iopendingmstick,
scheduler_address AS scheduleraddress
from sys.dm_io_virtual_file_stats(NULL,null) as t1,
sys.dm_io_pending_io_requests AS t2
WHERE t1.file_handle=t2.io_handle
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值