如何在从中读取数据库表时重命名

时间:2015-07-14 18:23:41

标签: mysql innodb

在查阅MySQL手册[1,2]后,似乎执行表的重命名需要全局表锁。一些快速实验证实了这一点这意味着如果针对此表执行任何SELECT语句,则RENAME操作将阻塞,直到SELECT语句完成执行。

我想知道是否可以使用InnoDB或任何其他数据库引擎(PostgreSQL可能?),其中只读操作不会阻止数据库执行RENAME table

我认为如果两个操作同时发生,SELECT将继续从新表名中读取。

[1] https://dev.mysql.com/doc/refman/5.0/en/rename-table.html

[2] https://dev.mysql.com/doc/refman/5.0/en/select.html

0 个答案:

没有答案