Mysql并发:如果访问锁定表会发生什么?

时间:2012-03-20 11:27:52

标签: mysql concurrency myisam

问题很简单,但我找不到准确的答案: 在myisam数据库中,如果一个php文件锁定一个表(使用原子操作,比如一个INSERT)而另一个php文件试图访问同一个表(读或写)会发生什么?

现在,虽然很明显第二个会话无法访问该表,但到底发生了什么?它会返回某种错误吗?在它能够访问它之前它是否在队列中等待?

1 个答案:

答案 0 :(得分:7)

第二个连接将等待锁定释放。

使用MyISAM任何写入(插入/更新/删除)都将锁定表格,

但是对于INNODB表类型,原子操作只会锁定受影响的行