mysql中undo log指的是什么

发布时间:2021-10-19 13:36:47 作者:小新
来源:亿速云 阅读:179

小编给大家分享一下mysql中undo log指的是什么,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

1、undo log是为了实现事务的原子性。在mysql数据库的innodb存储引擎中,undolog实现多版本并发控制。

2、在操作任何数据之前,首先将数据备份到一个地方,存储数据备份的地方称为undo log。

实例

//每次purge操作需要清理的undo page数量
mysql> show variables like 'innodb_purge_batch_size';
+-------------------------+-------+
| Variable_name           | Value |
+-------------------------+-------+
| innodb_purge_batch_size | 300   |
+-------------------------+-------+
 
//用来控制history list的长度,若长度大于该参数时,其会“延缓”DML的操作。该参数默认值为0,表示不对history list做任何限制。
mysql> show variables like 'innodb_max_purge_lag';
+----------------------+-------+
| Variable_name        | Value |
+----------------------+-------+
| innodb_max_purge_lag | 0     |
+----------------------+-------+
 
//当innodb_max_purge_lag 大于0时,就会延缓DML的操作,其延缓的算法为:delay=((length(history_list)-innodb_max_purge_lag)*10)-5
//来控制delay的最大毫秒数。也就是当上述计算得到的delay值大于该参数时,将delay设置为innodb_max_purge_lag_delay,避免由于purge操作缓慢导致其他SQL线程出现无限制的等待。
mysql> show variables like 'innodb_max_purge_lag_delay';
+----------------------------+-------+
| Variable_name              | Value |
+----------------------------+-------+
| innodb_max_purge_lag_delay | 0     |
+----------------------------+-------+

看完了这篇文章,相信你对“mysql中undo log指的是什么”有了一定的了解,如果想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

推荐阅读:
  1. MySQL中的redo及undo简单分析
  2. MySQL中如何理解Semaphore wait与undo log

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

mysql undo log

上一篇:如何使用自定义注解进行restful请求参数的校验方式

下一篇:如何使用python中__del__方法

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》