揭开差异面纱,mysql你往哪里逃~

    作为mysql的菜鸟的我,还是在一边自娱自乐的看着乏味的文档,但是有一个小小的差异不知道你发现了没有?先看两个比较简单的图我来给大家慢慢解释~

是不是很简单呢?但是差异大家好好看看,时间发生变化了,而且时间变成了0.00 sec!这个是我连续两次执行同一条查询语句发现的结果~

       下面我有两种解释,1.mysql自身的优化做的很好,使得在第二次执行那个的时候时间会很快很快~         2.mysql有缓存机制,对于执行过的查询采用缓存快速显示执行结果。如果是缓存,那缓存的位置又是在什么地方呢?

       首先我通过一个测试否定了第一种解释,我在执行一次插入之后再执行一次查询结果让我否定了第一种解释。结果如下:

<结果还是0.00 sec!>

      第二个解释我是在cc的脚印的博文中看到这样一条解释才恍然大悟的,mysql 选项:  -n, --unbuffered    Flush buffer after each query.

//使用MySQL查询的时候,如果连续两次执行同一条SELECT语句,会发现第二次比第一次速度快,这是因为MySQL对每次查询会缓存,该选项即是每次查询之后摸去缓存。

有缓存我也不知道在哪里,怎么办?下面这条告诉你缓存是怎么回事~

查询缓存相关参数语句:

SHOW VARIABLES LIKE '%query_cache%';
结果如下:


have_query_cache =YES,说明缓存是有效的,而且这个值是只读的事不允许修改的。

query_cache_size是缓存内存大小,它的修改需要采用以下语句:

set global query_cache_size=600000;
因为该数据全局的所以必须加上global才能设置成功。 具体的缓存机制推荐大家查看 mysql查询缓存 的详细介绍。

微笑好了,今天的差异我就给解释到这里了,有问题才能学到东西,不是吗?偷笑





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值