For investors
股价:
5.36 美元 %For investors
股价:
5.36 美元 %认真做教育 专心促就业
mysql数据库是程序员在学习计算机编程开发技术的时候需要重点掌握的一个编程技术,下面我们就通过案例分析来了解一下,零基础学mysql需要掌握哪些知识。
1.MasterThread
非常核心的后台线程,主要负责将缓冲池中的数据异步刷新到磁盘,保证数据的一致性,包括脏页的刷新、合并插入缓冲(INSERTBUFFER)、UNDO页的回收等
2.IOThread
InnoDB引擎中使用了大量的AIO(AsyncIO)来处理IO请求,IOThread的主要工作时负责这些IO请求的回调处理。
4个IOThread:write、read、insertbuffer和logIOThread。
3.PurgeThread
事务被提交后,其所使用的undolog可能不再需要,因此需要PurgeThread来回收已经使用并分配的undo页。
4.PageCleanerThread
作用是将之前版本中脏页的刷新操作都放入到单独的线程中来完成。
5.缓冲池(BufferPool)
读取:在数据库中进行读取页的操作,先将从磁盘读到的页存放在缓冲池中,这个过程称为将页“FIX”在缓冲池中。下一次再读相同的页时,先判断该页是否在缓冲池中。若在缓冲池中,称该页在缓冲池中被命中,直接读取该页。否则,读取磁盘上的页。
修改:对于数据库中页的修改操作,则先修改在缓冲池中的页,然后再以一定的频率刷新到磁盘上。这里需要注意的是,页从缓冲池刷新回磁盘的操作并不是在每次页发生更新时触发,而是通过一种称为Checkpoint的机制刷新回磁盘。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。