根据我在下面的内容中阅读:http://dev.mysql.com/doc/refman/5.0/en/lock-tables.html,LOCK TABLES语句仅适用于当前会话。对于所有连接会话,如何永久锁定特定表以使其成为只读,直到我明确解锁它们为止?
答案 0 :(得分:4)
我不认为你可以简单地锁定任何这样的表。您可以执行此操作的最佳方法是撤消所有更新,插入和删除权限
像这样:
REVOKE DROP, INSERT, TRUNCATE ON database.table FOR 'user'@'host'
答案 1 :(得分:0)
对于像这样的大型耗时操作,一个好的选择是将数据复制到新位置,进行操作。这实际上是对数据进行快照,使数据库在您执行操作时不受阻碍(并且可能仍然接受读取和写入)。