金华专业网站建设公司,网站建设空间和服务器方式,如何设计制作一般企业网站,五种商业模式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查询出要更新的数据主键再根据主键进行更新。