如何在 MySql 中的所有表上暗示 WRITE 锁?我尝试了以下但它给出了错误。
FLUSH TABLES mytest.mytable1 WITH LOCK;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use
near 'WITH LOCK' at line 1
Run Code Online (Sandbox Code Playgroud)
你想在这里做什么?如果您对自己的想法做出假设,MySQL 中的锁可能会有点令人困惑。
该FLUSH TABLES语法不允许您指定表列表以及获取锁。 FLUSH TABLES WITH READ LOCK锁定所有表。 FLUSH TABLES <tables>将刷新这些表。刷新表涉及一些隐式锁定,因为在刷新表时新的写入无法进入表,但是一旦刷新完成,就会释放此隐式锁定。
如果你想用写锁锁定特定的表,LOCK TABLES <table> WRITE就是你想要的。您可以在此处提供以逗号分隔的表格列表。如果要锁定所有表,则需要提供整个列表。
| 归档时间: |
|
| 查看次数: |
6206 次 |
| 最近记录: |