myisam和innodb的锁 对开发到底有什么影响?解决思路

myisam和innodb的锁 对开发到底有什么影响?解决思路

myisam和innodb的锁 对开发到底有什么影响?

我看了文档,

myisam是表锁定 innodb是行锁。

共同点是在占据读锁的时候,其他用户都是可以读的,而占据写锁的时候,都不允许其他用户读写操作。

不知道这样理解是不是正确。

因为我感觉除了表锁和行锁这个范围上的区别,其他的似乎没什么不同。换句话说,这两种引擎不同的锁到底对开发中有什么影响?意味着什么不同的意义呢?



表锁是,锁定整个表。当A连接锁定T表时,其它用户均无法对T表写入数据。

而行锁,是仅锁定某记录。当A连接锁定T表中ID=10的记录时,其它用户仍可对T表中其它记录进行更新操作。




楼主看看这里有没帮助:

http://blog.csdn.net/zdl1016/article/details/6946060




表锁,一次把这个表全锁住了,别的操作都需要等待锁释放,举例:

update tba set id=id+1 where id=100

在MYISAM下,会对tba全部锁住,innodb下,只会锁id=100这一行。

锁定的粒度越小,允许的并发度就越高。

myisam和innodb的锁 对开发到底有什么影响?解决思路

相关文章:

你感兴趣的文章:

标签云: