IO--常用的IO问题查询语句
2024-09-27 02:16:46
--===============================
--查看文件上IO等待
SELECT * FROM sys.dm_os_wait_stats
WHERE wait_type LIKE '%PAGEIOLATCH%' --==================================
--查看各数据库文件5分钟内的IO情况 --查看5分钟内文件的IO情况
IF(OBJECT_ID('tempdb.dbo.#TB1') IS NOT NULL)
BEGIN
DROP TABLE #TB1
END
IF(OBJECT_ID('tempdb.dbo.#TB2') IS NOT NULL)
BEGIN
DROP TABLE TB2
END
SELECT
database_id,
file_id,
io_stall_read_ms,
io_stall_write_ms,
num_of_reads,
num_of_writes,
num_of_bytes_read,
num_of_bytes_written
INTO #TB1
FROM sys.dm_io_virtual_file_stats(NULL,NULL)
WAITFOR DELAY '0:05:00'
SELECT
database_id,
file_id,
io_stall_read_ms,
io_stall_write_ms,
num_of_reads,
num_of_writes,
num_of_bytes_read,
num_of_bytes_written
INTO #TB2
FROM sys.dm_io_virtual_file_stats(NULL,NULL)
SELECT
T1.database_id,
DB_NAME(T1.database_id) AS database_name,
T1.file_id,
T2.io_stall_read_ms-T1.io_stall_read_ms AS io_stall_read_ms,
T2.io_stall_write_ms-T1.io_stall_write_ms AS io_stall_write_ms,
T2.num_of_reads-T1.num_of_reads AS num_of_reads,
T2.num_of_writes-T1.num_of_writes AS num_of_writes ,
T2.num_of_bytes_read-T1.num_of_bytes_read AS num_of_bytes_read,
T2.num_of_bytes_written-T1.num_of_bytes_written AS num_of_bytes_written
FROM #TB1 AS T1
INNER JOIN #TB2 AS T2
ON T1.database_id=T2.database_id
AND T1.file_id=T2.file_id --===============================================================
--查看各数据库文件的使用情况
SELECT
DB.database_id AS DatabaseId,
DB.name AS DatabaseName,
MF.name AS LogicFileName,
MF.type_desc AS TypeDesc,
CAST(VF.num_of_bytes_read/1024.0/1024.0 AS INT) AS num_of_MB_read,
CAST(VF.num_of_bytes_written /1024.0/1024.0 AS INT) AS num_of_MB_written,
VF.num_of_reads,
VF.num_of_writes,
VF.io_stall_read_ms,
VF.io_stall_write_ms,
VF.io_stall,
CAST(VF.size_on_disk_bytes/1024.0/1024.0 AS INT) AS size_on_disk_MB
FROM sys.dm_io_virtual_file_stats(NULL,NULL) AS VF
INNER JOIN sys.databases DB
ON VF.database_id=DB.database_id
INNER JOIN sys.master_files MF
ON DB.database_id=MF.database_id
--=====================================================
--来查看等待响应的IO请求
SELECT * FROM sys.dm_io_pending_io_requests --==================================================
--查看数据库文件的操作信息如磁盘读写次数、读写数量
SELECT
DB_NAME(S.database_id) AS DBName,
f.name,
S.*
FROM sys.databases D
INNER JOIN sys.sysaltfiles F
ON D.database_id=F.dbid
INNER JOIN sys.dm_io_virtual_file_stats(null,null) S
ON S.database_id=D.database_id
AND S.file_id=F.fileid --=====================================================
--查看当前挂起的IO请求
SELECT
DB_NAME(S.database_id) AS DBName,
S.file_id,
S.io_stall,
R.io_pending_ms_ticks
FROM sys.dm_io_pending_io_requests R
INNER JOIN sys.dm_io_virtual_file_stats(NULL,NULL) S
ON R.io_handle=S.file_handle
最新文章
- Ubuntu管理开机启动服务项 -- 图形界面的Boot-up Manager
- 【ZJOI2008】 树的统计 count
- 黑苹果-IOS学习的开始
- 使用数据库sqlite3 C语言实现登陆注册的功能
- OS存储器管理(二)
- Cutterman 切图神器,虽然还没用过,先 mark 一下好了
- hdu4734 F(x)
- Python变量、数据类型6
- EF容器---代理类对象
- .net学习之新语法学习(匿名类和匿名方法,扩展方法,系统内置委托,Lambda表达式和linq等)
- 加强版for循环
- RFID第二次作业
- Canvas标签初探
- qstring.h赏析
- for(;;)和 while(1) 有什么区别吗?for()和while()的使用情景。
- Manjaro折腾简单记录
- quick pdf library控件
- win7下出现读不到移动硬盘的解决办法
- Qt &; VS2013 报错:There's no Qt version assigned to this project for platform Win32
- Wijmo 2017 V1发布
热门文章
- Android Studio 2.3.3 添加ksoap2的引用(拒绝网上其他的忽悠),也适用于添加其他Jar的引用
- mongodb(五)
- SqlServer 获得存储过程的返回值(参数返回),别玩了output
- Elasticsearch-PHP 命名空间
- drbd mysql
- centos7 更新源 安装ifconfig
- Unity中Avatar换装实现
- 在子页面使用layer弹出层时只显示遮罩层,不显示弹出框问题
- 606. Construct String from Binary Tree 从二叉树中构建字符串
- DevCloud for CloudStack Development