2013-04-11 51 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