首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么mysql在选择数据时向myisam引擎表添加读锁?

为什么mysql在选择数据时向myisam引擎表添加读锁?
EN

Stack Overflow用户
提问于 2017-08-14 07:04:19
回答 1查看 428关注 0票数 0

为什么mysql在选择数据时向myisam引擎表添加读锁?

在官方手册中,它只提到了innodb有一个默认的isolation.And --我们知道myisam引擎不支持transaction.But --为什么mysql在选择表中添加一个读锁?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-14 07:21:11

如果在读取查询时修改了表,则读取的查询可能返回不正确的结果。为了防止这种情况,MyISAM使用锁*来防止在任何其他线程从该表读取时写入到表中。但是,这个锁并不阻止其他读取查询--任何数量的线程都可以共享该锁。

当查询写入表时,表也会被锁定。这使用了另一种类型的锁,以防止任何其他写入或读取发生在该表上。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45669071

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档