表锁 Myisam引擎(表级)
读锁定时,不能写, 写锁定A表时,其他session不能读和写A表
读锁session-1 只能查A表,不能查其他B表
session-2 写阻塞,能查询所有表
写锁session-1 能改A表, 不能查其他表
session-2 不能查A表,更加不能写操作.
lock tables 表名 read|write;
unlock 表名
行锁 InnerDB引擎(行级)
无索引引发的表锁
间隙锁的危害,使用范围检索数据,InnoDB会给符合条件的记录索引枷锁,对于键值范围内但并不存的记录,叫间隙锁
危害:Query时,范围内的所有索引值被锁, 间隙值行记录会被阻塞
分析行锁
show status like 'innodb_row_lock%';
**_current_waits:当前正在等待锁定的数量 和
**_time 等待的总时长
**_time_avg 等待平均时长
**_time_max 等待最长的一次所花时间
**_waits: 系统启动后到现在的总共等待次数
如何锁定一行?
begin
select * from tables where *** for update;
commit;
页锁
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)