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

MSSQL
将代码页从SQL Server 7.0改变到SQL Server 2000
浅析SQL SERVER一个没有公开的存储过程
使用存储过程时一个错误的解决方法
执行一个安全的SQL Server安装
SQL导出到MYSQL的简单方法
SQL Server 7六种数据移动方法
数据库升迁从sqlserver6.5到sqlserver2000
用SQL 2000创建用户化XML流
解决SQL Server 2000之日志传送功能
保持多台服务器数据的一致性
将ACCESS转化成SQL2000需要注意的几个问题
一次特殊的SQL Server安装奇遇
实现上千万条数据的分页显示
使用用于SQL Server的IIS虚拟目录管理实用工具
SQL Server连接ACCESS数据库的实现
使用SQL Server数据转换服务升迁Access数据库
SQLServer和Access、Excel数据传输简单总结
XML文件导入SQL Server 2000
在视图中使用ORDER BY子句
内嵌或嵌入SQL和存储过程之对比

MSSQL 中的 如何了解SQL的执行频率


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 80 ::
收藏到网摘: 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 : 慢查询的次数。