原创

InnoDB事务锁之行锁-delete流程upd阶段加锁流程

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://yanzongshuaidba.blog.csdn.net/article/details/79243727

1、介绍

delete流程分search和update两个阶段。在search阶段对聚集索引记录加锁,参考上一篇文章。在update阶段会对聚集索引记录打上delete标签,然后search二级索引记录,对二级索引记录加隐式锁,即不加锁,最后将二级索引记录打上delete标签。

mysql_delete::
	//rr_quick->...->row_search_for_mysql
	while (!(error=info.read_record(&info)) && !thd->killed &&! thd->is_error()){
		...
		//...->row_update_for_mysql
		error= table->file->ha_delete_row(table->record[0]);
		...
	}

2、流程原理图


展开阅读全文

没有更多推荐了,返回首页