参考答案
MySQL中避免死锁的方式:
- 设置锁等待超时参数。
- 尽量以相同的顺序来访问索引记录和表。
- 避免大事务,尽量将大事务拆成多个小事务来处理。
- 业务上能够接受幻读和不可重复读,考虑降低锁的级别到 Read committed,降低死锁发生的概率。
- 添加合理的索引,走索引避免为每一行加锁,降低死锁的概率。
- 在事务中一次锁定所需要的所有资源,如 MyISAM 引擎的表锁。
- 尽量避免同时并发对同一表进行读写操作,特别是执行加锁且操作数据量较大的语句。
以上,是MySQL面试题【MySQL中避免死锁的方式有哪些】的参考答案。
输出,是最好的学习方法。
欢迎在评论区留下你的问题、笔记或知识点补充~
—end—