FLUSH TABLES

FLUSH TABLES 语句用于提供 MySQL 兼容性,但在 TiDB 中并无有效用途。

语法图

FlushStmt:

flushtables\_1.png

NoWriteToBinLogAliasOpt:

flushtables\_2.png

FlushOption:

flushtables\_3.png

TableOrTables:

flushtables\_4.png

TableNameListOpt:

flushtables\_5.png

WithReadLockOpt:

flushtables\_6.png

示例

mysql> FLUSH TABLES;
Query OK, 0 rows affected (0.00 sec)
mysql> FLUSH TABLES WITH READ LOCK;
ERROR 1105 (HY000): FLUSH TABLES WITH READ LOCK is not supported.  Please use @@tidb_snapshot

MySQL 兼容性

  • TiDB 没有 MySQL 中的表缓存这一概念。所以,FLUSH TABLES 因 MySQL 兼容性会在 TiDB 中解析出但会被忽略掉。
  • 因为 TiDB 目前不支持锁表,所以FLUSH TABLES WITH READ LOCK 语句会产生错误。建议使用 [Historical reads] 来实现锁表。

另请参阅

  • LOCK TABLES
  • Read historical data

看完两件小事

如果你觉得这篇文章对你挺有启发,我想请你帮我两个小忙:

  1. 关注我们的 GitHub 博客,让我们成为长期关系
  2. 把这篇文章分享给你的朋友 / 交流群,让更多的人看到,一起进步,一起成长!
  3. 关注公众号 「方志朋」,公众号后台回复「资源」 免费领取我精心整理的前端进阶资源教程

JS中文网是中国领先的新一代开发者社区和专业的技术媒体,一个帮助开发者成长的社区,目前已经覆盖和服务了超过 300 万开发者,你每天都可以在这里找到技术世界的头条内容。欢迎热爱技术的你一起加入交流与学习,JS中文网的使命是帮助开发者用代码改变世界

results matching ""

    No results matching ""