网站建设犀牛云,域名优化在线,小米开发者模式怎么关闭,西安有啥好玩的地方update delete 操作#xff0c;如果走的索引#xff0c;对索引和主键索引加行锁 如果没有走索引#xff0c;锁整张表。
不开启事务#xff0c;mysql本身也会加锁 一般MYSQL在执行CREATE,ALTER,INSERT等命令时会自动加锁
在对数据进行更新操作时 如果update没用到索引如果走的索引对索引和主键索引加行锁 如果没有走索引锁整张表。
不开启事务mysql本身也会加锁 一般MYSQL在执行CREATE,ALTER,INSERT等命令时会自动加锁
在对数据进行更新操作时 如果update没用到索引直接锁表不会死锁 如果update用到了索引根据索引查询顺序进行索引加锁。因此可能会加锁顺序不一致导致死锁。
解决办法 1、禁用index_merge 在查询的时候只会走一个索引不会都走。如果不禁用index_merge。会先走id1索引再走id2索引将查询结果求交集。
2、把两个索引设置成联合索引
3、先使用select查询出要更新的数据主键再根据主键进行更新。