MySQL中Update修改数据与原数据相同会再次执行吗?
发布时间:2019-03-22 20:56:53 所属栏目:编程 来源:powdba
导读:一、配景 本文首要测试MySQL执行update语句时,针对与原数据(即未修改)沟通的update语句会在MySQL内部从头执行吗? 二、测试情形 MySQL5.7.25 Centos 7.4 三、binlog_format为ROW 1、参数 2、测试步调 session1 session2 session1 3、总结 在binlog_format=
一、配景本文首要测试MySQL执行update语句时,针对与原数据(即未修改)沟通的update语句会在MySQL内部从头执行吗? 二、测试情形MySQL5.7.25 Centos 7.4 三、binlog_format为ROW1、参数 2、测试步调 session1 session2 session1 3、总结 在binlog_format=row 和binlog_row_image=FULL时, 因为MySQL 必要在 binlog 内里记录全部的字段,,以是在读数据的时辰就会把全部数据都读出来,那么一再数据的update不会执行。即MySQL 挪用了 InnoDB 引擎提供的“修改为 (1,55)”这个接口,可是引擎发明值与原本沟通,不更新,直接返回。 四、binlog_format为STATEMENT1、参数 2、测试步调 session1 session2 session1 3、总结 在binlog_format=statement 和binlog_row_image=FULL时, InnoDB内部当真执行了update语句,即“把这个值修改成 (1,999)“这个操纵,该加锁的加锁,该更新的更新。 【编辑保举】
点赞 0 (编辑:河北网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |