mysql中bin.log和redo.log都可以做恢复?

和尚要吐槽 2017-09-25 08:48:23
我搜资料,的确两者都可以做数据恢复。但是他们的区别是什么?有人知道么?
...全文
622 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
damayi1988 2018-12-11
  • 打赏
  • 举报
回复
redo log的写入时机不一定实在事务提交时,那如何保证redo log的内容是正确的,比如一个事务执行过程中redo log发生了更新,此时机器断电。如果从redo log里恢复数据,岂不有错。
allstarvirgo 2017-10-14
  • 打赏
  • 举报
回复
binlog 是针对MySQL数据库的,不局限于某一种存储引擎,记录的是SQL语句,你可以理解为一种逻辑日志,它一般在事务提交完成后写入一次。 redolog 是针对Innodb存储引擎而言,它记录的是页的物理修改操作。它会在事务进行中不断被写入,日志并不是随事务的提交顺序进行写入。
zjcxc 2017-09-26
  • 打赏
  • 举报
回复
redolog 是在数据服务崩溃后用来恢复正确数据的(自动行为) binlog 是mysql 所有操作的二进制日志记录,这个 binlog 可以用于复制,也可以自己用(比如用 mysqlbinlog)
zjcxc 2017-09-26
  • 打赏
  • 举报
回复
简单的说,redo log 记录的是操作过程数据,目的保证操作的正确完成(比如不会因为意外导致一个字段只写了一半的数据) binlog记录的是操作结果数据(比如 update 失败或者回滚的操作不会在 binlog中) 所以你觉得 redo log 你可以用来做复制么?
和尚要吐槽 2017-09-26
  • 打赏
  • 举报
回复
你的意思是redo.log是用于数据崩溃间的数据恢复? 然后binlog是用于假如说删库表后,或者数据复制之类的操作? 那我想问问,那redolog可以做到复制呢?因为redolog也记录了所有操作啊

56,677

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧