您的位置:首页 > 数据库 > MySQL

Mysql Redo AND Undo log

2014-11-11 18:30 363 查看
Undo旧:

在操作任何数据之前,首先将原数据备份到一个地方(这个存储数据备份的地方称为UndoLo)。

然后进行数据的修改。如果出现了错误或者用户执行了ROLLBACK语句,系统可以利用UndoLog中的备份将数据恢复到事务开始之前的状态。

Redo新:

Redo log记录的是新数据的备份。在事务提交前,只要将Redo Log持久化即可,不需要将数据持久化。当系统崩溃时,虽然数据没有持久化,

但是RedoLog已经持久化。系统可以根据RedoLog的内容,将所有数据恢复到最新的状态。

Innodb也会将事务回滚时的操作也记录到redo log中。回滚操作本质上也是对数据进行修改,因此回滚时对数据的操作也会记录到Redo Log中。

一个被回滚了的事务在恢复时的操作就是先redo再undo,因此不会破坏数据的一致性.

Mysql升级后要执行upgrade命令,这样可以升级root权限避免一系列古怪问题,命令如下:mysql_upgrade -uroot -p
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: