最近进行了一系列mysql相关的研究,了解了一遍mysql的缓存机制,在这里集中总结一下。
本文是基于mysql-innoDB的缓存机制解析
缓存机制是一种常用的机制,在操作系统中,因为不同存储介质的读写效率天差地别,所以采取缓存机制来加快系统的读写效率,将一些常用的数据放在读写效率较高的缓存里,避免每次读写都直接对磁盘进行操作
作为专门存储数据的MySql系统,也有他自己的缓存策略,对于MySql这样的数据库,磁盘IO通常是它的最大瓶颈,MySql做了读缓存和写缓存这两个机制来有效减少磁盘IO,提高数据库的执行效率
这里来解析一下innoDB的缓冲池机制
缓冲池有什么作用?
最终目的是为了加速访问,将磁盘上的数据加载到缓冲池(也就是内存)当中,由于系统访问内存比访问磁盘要快速很多倍,所以当一条数据库请求抵达的时候,若是能够在缓存中命中,就不需要去访问磁盘读取数据,当数据库请求很频繁很密集的时候,这种缓存策略能够极大地增强数据库的响应速度,从而更高效地承载业务
缓冲池有什么局限?
缓冲池因为是建立在内存当中的,所以并不可以非常大,读取速度快的代价是容量小,比如一台计算机的磁盘可以有500G,但是内存可能只有8个G。它只能将数据库的一部分表数据和索引数据缓存起来,并不能将所有数据都加载到缓存里,所以需要合理分配缓存,使尽量多的数据库请求能够在缓冲池当中得到命中,从而最大限度地降低磁盘IO
innoDB的缓冲池如何保证缓冲命中率的?
mysql缓存机制——读缓存篇
最新推荐文章于 2023-09-05 22:01:16 发布