这篇“mysql中WAL机制是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“mysql中WAL机制是什么”文章吧。
1、WAL预写日志系统。数据库中的高效日志算法,对于非内存数据库来说,磁盘I/O操作是数据库效率的一个重要瓶颈。
在相同的数据量下,使用WAL日志的数据库系统提交业务时,磁盘写作操作只有传统滚动日志的一半左右,大大提高了数据库磁盘I/O操作的效率,从而提高了数据库的性能。
2、使用WAL的原因,是因为磁盘的写作操作是随机io,比较耗性能。
所以如果每次更新操作都先写入log,那么就成了顺序写作操作,实际更新操作是由后台线程再根据log异步写入。因此,对client端来说,延迟会减少。而且,由于顺序写入的可能性很大,因此产生的io次数也会大大降低。因此,WAL的核心就是把随机写作变成顺序写作,减少客户端的延迟,增加吞吐量。
WAL三原则
日志成功写入后,事务不会丢失,后续由checkpoint机制保证磁盘物理文件与redolog的一致性;
使用redolog记录变更后的数据,即在redo中记录变更后的事务数据值;
使用undolog记录变更前的数据,即在undo中记录变更前的事务数据值,用于阅读滚动和其他多版本的事务。
以上就是关于“mysql中WAL机制是什么”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。