首页 > 解决方案 > 在 RDS Aurora 上失败的两个大表的联合

问题描述

我有以下查询

select count(*) from
(
    SELECT
        *
    FROM
        table_1
  UNION
    SELECT
        *
    FROM
        table_2
)  AS REPORT

表 table_1 和 table_2 有

我正在将服务器从 RDS MySQL 迁移到 RDS Aurora。此查询在 RDS MySQL 实例上运行良好。
但是当我在比 MySQL 实例更大的 Aurora 实例上运行它时 - Aurora 实例空间不足,顺便说一下,它有 70GB 的可用空间。最终查询失败,给出如下错误,我理解是因为没有可用磁盘空间

Incorrect key file for table '/rdsdbdata/tmp/#sql_14be_0.MYI'; try to repair it

我无法理解的是为什么查询会占用 70+ GB 的空间来存储联合中几乎没有 4GB 的数据。

有人对我做错了什么以及如何纠正有任何建议吗?

标签: unionamazon-aurora

解决方案


推荐阅读