gpt4 book ai didi

mysql - 为什么mysql在select数据时给myisam引擎表加读锁?

转载 作者:行者123 更新时间:2023-11-29 06:55:53 24 4
gpt4 key购买 nike

为什么mysql在select数据时会对myisam引擎表加读锁?

官方手册上只提到innodb有默认的隔离性。而且我们知道myisam引擎不支持事务。但是为什么mysql要给选择表加读锁呢?

最佳答案

如果在查询读取表时修改表,则读取查询可能会返回不正确的结果。为了防止这种情况,MyISAM 使用锁* 来防止在任何其他线程从该表读取数据时对该表进行写入。不过,此锁不会阻止其他读取查询 - 任意数量的线程都可以共享该锁。

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

关于mysql - 为什么mysql在select数据时给myisam引擎表加读锁?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45669071/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com