"EXPLAIN PARTITIONS" 在 MySQL 8

"EXPLAIN PARTITIONS" in MySQL 8

在一个我们已经有一段时间没有改动的老项目中,使用如下请求进行分区:

EXPLAIN PARTITIONS SELECT * FROM table

然后,从该请求结果的“partitions”列中检索分区列表,并从该列表中推导出要对分区采取的操作。

此项目已部署并 运行 正在使用 MySQL 5.7.xx.

的多台服务器上

现在,我们正在尝试将其部署到我们的新 AWS 服务器上,使用 运行 MySQL 8.0.21 的 RDS 实例,但无法识别“EXPLAIN PARTITIONS”请求,错误是:

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 'SELECT * FROM table' at line 1

我的问题是:

来自Features Removed in MySQL 8.0

The EXTENDED and PARTITIONS keywords for the EXPLAIN statement have been removed. These keywords are unnecessary because their effect is always enabled.

所以“新语法”就是EXPLAIN SELECT * FROM table