阅读 96

select查询流程

select查询流程是怎么样的

  • mysql select查询的数据是查询内存里面,如果没有查询的数据没有在内存,就需要mysql的innodb引擎读取磁盘,将数据加载的内存后在读取。这就体现了,mysql查询大量数据或冷数据性能比较慢的原因。

  • select查询会加DML读锁,读锁是不互斥的。所以多个查询都可以读某条数据。

  • select查询大数据时候,是边查询边返回给客户端。每次返回的大小为net_buffer_length参数控制,默认为16K。所以有时候大查询慢,客户端接受数据慢也可能是影响的原因。

  • mysql也支持对select结果缓存,建议不要开启查询缓存(query_cache_type),因为mysql数据每一次变更,查询缓存都会失效,生产实时业务数据库,是多么频繁的变更呀,所以select查询缓存没必要开启

  • mysql内存配置参数(InnoDB Buffer Pool):innodb_buffer_pool_size。

  • 查询流程入下图:

标签:缓存,流程,查询,内存,mysql,数据,select
来源: https://www.cnblogs.com/penngke/p/15385567.html


文章分类
后端
文章标签
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐