2013-04-11 52 views
0

如果我运行:MySQL:INNODB表可以完全锁定吗?

LOCK TABLE table1, table2 READ 
// DO STUFF 
UNLOCK TABLES 

请问该块访问Table 1和Table如果表类型是INNODB其他所有会话?如果不是,那我该如何锁定INNODB中的表格?

回答

0

这里阅读这篇文章有用:http://www.mysqlperformanceblog.com/2012/07/31/innodb-table-locks/

MySQL的水平明确锁定表将阻止访问表和SHOW ENGINE INNODB STATUS不会出现。因为Innodb使用行级锁,所以当您使用Innodb Tables从性能持续性时不使用LOCK TABLES是一种好的做法。

+0

但是,你如何锁定整个桌子,或者是离开innodb的解决方案? – coderama 2013-04-11 11:16:13

+0

您可以将混合表引擎放在同一个数据库中,因此您可以轻松切换某些表以使用MyISAM。 – bodi0 2013-04-11 11:20:57