IT评测·应用市场-qidao123.com技术社区
标题:
MySQL日记
[打印本页]
作者:
千千梦丶琪
时间:
2025-1-3 07:34
标题:
MySQL日记
MySQL日记
binlog
binlog日记也就是二进制日记,把对于数据库的写入利用以二进制的形式保存到磁盘中。binlog日记是mysql的逻辑日记,可以明白为纪录的是sql日记,由mysql的服务层举行纪录,mysql的任何存储引擎都会纪录binlog日记。
物理日记纪录的是数据页的变更,mysql数据最终都是保存在数据页中的。
binlog日记是通过追加的方式写入的,可以通过max_binlog_size参数来调整每个binlog文件的巨细。
binlog日记可以用于主从复制和数据恢复。主从复制是在master端开启binlog日记,然后将binlog日记发送到各个slave端,slave端重放binlog日记,从而到达数据一致的目的。数据恢复是通过mysqlbinlog工具来恢复数据。
redo
redo日记是物理日记,纪录的是数据页的物理修改,而不是某一行大概某几行修改成怎样,用来恢复提交后的物理数据页。redo日记具体来说就是纪录事务对数据页做了哪些修改。
redo日记主要纪录了一段时间内物理数据页的变化。
undo
undo日记纪录了数据的逻辑变化,好比一条insert新增语句会对应一条delete的undo日记,而对于每个update语句会对应一条相反的update的undo日记,这样一来在发生错误时,就可以或许回滚到事务之前的状态。
redo vs undo
redo日记用来纪录数据块被修改后的值,可以用于恢复未写入数据文件的已乐成事务更新的数据;而undo日记用来纪录数据更新前的值,保证数据更新失败可以或许回滚。
据更新前的值,保证数据更新失败可以或许回滚。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 IT评测·应用市场-qidao123.com技术社区 (https://dis.qidao123.com/)
Powered by Discuz! X3.4