SQL Server活跃表:善用它获取性能收益(sqlserver活跃表)
SQL Server存储了一个有用的系统表,我们被称为“活跃表”,它们对收集特定事务信息非常重要。从业务层面上看,它们经常被DBA用来监测会话活动、监视慢查询、标识正在执行的事务以及记录读、写事务的时间戳。
活跃表的主要构成包括sys.dm_tran_active_snapshot_database 、 sys.dm_tran_active_transactions、 sys.dm_tran_active_snapshots 和 sys.dm_tran_database_transactions。sys.dm_tran_active_snapshot_database 是一个内容表,主要用来对特定数据库中存在的事务快照作一个标记,可以使DBA在不同服务器之间比较数据库之间的活动性差异。sys.dm_tran_active_transactions主要用于模仿出具体查询以及报告当前正在处理的事务。sys.dm_tran_active_snapshots用于记录活动事务和被锁定条目的事务ID,以及锁定类型等等。最后,sys.dm_tran_database_transactions 是活动事务表,它可以提供特定数据库所有正在运行的事务的明细信息。
善用SQL Server的活跃表不仅可以收集关键的事务信息,而且能帮助DBA获取极大的性能收益。例如,DBA可以通过查看活跃表,找出消耗更多CPU时间或者占用更多IO资源的查询,然后通过优化索引结构或查询来改善性能。此外,DBA还可以对活跃表进行定期检查,加强服务器负载管理,在占用较多资源的情况下,及时限制和调整它们以获得最佳性能,比如使用下面的代码来获取每个数据库具体的利用率:
SELECT
DB_NAME(database_id) as Database_Name,
COUNT(*) as Number_of_Active_Transactions ,
(COUNT(*)*1.0 / @@MaxDOP) * 100 as Percentage_of_MaxDOP_Utilized
FROM
sys.dm_tran_active_snapshot_database
GROUP BY
DB_NAME(database_id)
HAVING
(COUNT(*) * 1.0 / @@MaxDOP) * 100 5.0
ORDER BY
Number_of_Active_Transactions DESC
总之,活跃表在获得性能收益方面是极具价值的,DBA可以通过活跃表确定什么是慢查询,以及哪些查询会消耗大量的资源,以及可以收集重要信息以进行监测和管理的信息。当然,DBA最好对活跃表应用有一定的了解,以确保系统的安全和稳定性。
我想要获取技术服务或软件
服务范围:MySQL、ORACLE、SQLSERVER、MongoDB、PostgreSQL 、程序问题
服务方式:远程服务、电话支持、现场服务,沟通指定方式服务
技术标签:数据恢复、安装配置、数据迁移、集群容灾、异常处理、其它问题
本站部分文章参考或来源于网络,如有侵权请联系站长。
数据库远程运维 SQL Server活跃表:善用它获取性能收益(sqlserver活跃表)
相关文章
- 掌握组态王与SQLServer的强强组合(组态王SQLSERVER)
- 使用SQL Server实现表格复制(sqlserver复制表)
- 实现跨数据库的SQL Server数据同步(sqlserver数据同步)
- 大数据时代,SQLServer稳走高耀(大sqlserver)
- :暂停使用SQL Server – 改用更简易的解决方案(停用sqlserver)
- 在SQLServer中实现事务处理的流程(事务 sqlserver)
- 下载SQLServer,快速访问数据库的解决方案(下载了sqlserver)
- 串SQL Server中字符串转换的技巧(sqlserver转字符)
- SQL Server账户名称设置指南(sqlserver账户名)
- 精通SQL Server,拥有无限可能(sqlserver精通)
- 利用SQLServer技术进行租用处理(sqlserver 租用)
- 数据SQL Server中删除数据的正确姿势(sqlserver的删除)
- urd使用SQL Server新增CURD操作(sqlserver新增c)
- SQL Server加注释的正确方式(sqlserver怎么打注释)
- SQL Server中实现唯一值的另一种方式(sqlserver唯一列)
- 段SQL Server:如何管理多字段结构(sqlserver含有字)
- SQL Server——极致的可写性能为您保驾护航(sqlserver可写)
- 模式SQL Server实现单例模式简易教程(sqlserver 单例)
- 表SQL Server中删除空表:一步一步分析(sqlserver删除空)
- SQL Server列命名规则及其重要性(sqlserver列命名)
- SQL Server中日期数据的写入(sqlserver写日期)
- SQL Server武装优化,助你事半功倍!(sqlserver优化版)
- 使用SQL Server代码实现数据表变更(sqlserver代码表)
- SQL Server中宏的应用技巧(sqlserver中的宏)
- 性SQL Server系统数据库不完整性危害研究(sqlserver不完整)
- 以SQL Server默认值驱动你的数据库存储(默认值sqlserver)
- 从零开始:SQL Server 运行入门(运行sqlserver)