首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

求解mysql的com_select状态?该如何解决

2013-08-29 
求解mysql的com_select状态?本帖最后由 u010572351 于 2013-07-16 09:46:51 编辑刚刚开始学mysql优化,一学

求解mysql的com_select状态?
本帖最后由 u010572351 于 2013-07-16 09:46:51 编辑 刚刚开始学mysql优化,一学到下面这个语句就懵了:

show session status like 'com_select';



遇到两种说法:

1.说这个和com_update、com_insert、com_delete一样,分别是查询本次会话中增删改查了多少次。

2.还有说不是专门统计select语句执行了多少次的,是统计mysql执行各种查询操作的次数(频率),比如登陆mysql 输入密码,mysql就会查询管理员密码是否正确,这次查询也计算到com_select。


但是,我select语句查询一次,发现com_select并没有增加,use database 一下,com_select增加了一个。

我现在都不知道,究竟什么操作是com_select统计的对象?

[解决办法]
手册上说
Com_select的值等价于:
Qcache_inserts
+ Qcache_not_cached
+ queries with errors found during columns/rights check

自己慢慢研读吧
[解决办法]
自己翻译翻译不久完了?

简单说就是:
com_select 变量记录的是无缓存的查询次数+错误查询+权限检查查询。
你之所以查询第二次com_select的值没有增加,是因为查询结果是有缓存的,如果命中缓存,缓存命中的次数加1,也就是Qcache_hits变量的值加1.

热点排行