当前位置: 首页 > 图文教程 > 数据库 > MSSQL > SQL大讲堂:如何了解SQL的执行频率

MSSQL
SQL Server TEXT、NTEXT字段拆分的问题
SQL Server事务日志的几个常用操作
SQL Server不存在或拒绝访问故障的排除
动态创建MSSQL数据库表存储过程
教你如何在SQL Server计算列和平均值
如何应用SQL Server中的DBCC避免堵塞
SQLServer2000分布式事务错误解决方法
通用SQL数据库查询语句精华使用简介
利用typeperf工具收集SQL Server性能数据
SQL 2008 FileStream数据类型
自定义用于ASP Web站点的 SQL 7.0 数据库
SQL server 2005安装问题大全
利用"SQL"语句自动生成序号的两种方式
SQL Server数据库管理员必备的DBCC命令
讲解在SQL Server 2005中实现异步触发器架构
SQL Server 2008的新特性概述:集成服务
SQL Server 2008关系数据库引擎的新增功能
浅析SQL 2008的Change Data Capture功能
在IIS中为SQL Server 2008配置报表服务
SQL Server 2008中报表服务详解

MSSQL 中的 SQL大讲堂:如何了解SQL的执行频率


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 95 ::
收藏到网摘: n/a

MySQL 客户端连接成功后,通过 show [session|global]status 命令 可以提供服务器状态信息,也可以在操作系统上使用 mysqladmin extended-status 命令获得这些消息。

show [session|global] status 可以根据需要加上参数“ session ”或者“ global ”来显示 session 级(当前连接)的统计结果和 global 级(自数据库上次启动至今)的统计结果。如果不写,默认使用参数是“ session ”。

Com_xxx 表示每个 xxx 语句执行的次数,我们通常比较关心的是以下几个统计参数 :

Com_select :执行 select 操作的次数,一次查询只累加 1 。

Com_insert :执行 INSERT 操作的次数,对于批量插入的 INSERT 操作,只累加一次。

Com_update :执行 UPDATE 操作的次数。

Com_delete :执行 DELETE 操作的次数。

知道了这些信息就方便我们确定我们到底需要什么样的存储引擎了,一般来说update较多的时候 Innodb 引擎效率会稍微高一些!

上面这些参数对于所有存储引擎的表操作都会进行累计。下面这几个参数只是针对 InnoDB 存储引擎的,累 加的算法也略有不同:

Innodb_rows_read : select 查询返回的行数。

Innodb_rows_inserted :执行 INSERT 操作插入的行数。

Innodb_rows_updated :执行 UPDATE 操作更新的行数。

Innodb_rows_deleted :执行 DELETE 操作删除的行数。

通过以上几个参数,可以很容易地了解当前数据库的应用是以插入更新为主还是以查询操作为主,以及各种类型的 SQL 大致的执行比例是多少。对于更新操作的计数,是对执行次数的计数,不论提交还是回滚都会进行累加。

对于事务型的应用,通过 Com_commit 和 Com_rollback 可 以了解事务提交和回滚的情况,对于回滚操作非常频繁的数据库,可能意味着应用编写存在问题。

此外,以下几个参数便于我们了解数据库的基本情况:

Connections : 试图连接 MySQL 服务器的次数。

Uptime :服务器工作时间。

Slow_queries : 慢查询的次数。