Aurora 不是 MySQL。
亚马逊已经从存储引擎中剥离了很多代码和功能,但他们并没有禁用相应的功能或状态变量或配置变量。
MySQL 用户熟悉的许多功能仍然可以在 Aurora 上使用,但它们没有任何作用。就像其中一个投币式儿童游乐设施上的方向盘一样。
Aurora 没有提供有关哪些功能仍在运行以及哪些功能以这种方式“断开”的完整文档。
在 的情况下SQL_CALC_FOUND_ROWS
,它可能仍然有效,具体取决于您的 Aurora 版本。我在他们的发行说明中找到了对它的引用:
https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Updates.20170515.html
修复了在 Aurora MySQL 版本 1.11 中引入的回归,其中在使用 SQL_CALC_FOUND_ROWS 选项和调用 FOUND_ROWS() 函数时查询可能返回不正确的结果。
您是否可能正在使用受此错误影响的 Aurora 实例,或者该错误是否可能在您使用的版本中再次退化?
您需要仔细检查可用的 Aurora 信息,如果找不到所需的信息,请联系 AWS 支持。
并且不要假设在 MySQL 中工作的东西在 Aurora 中也会以同样的方式工作。它们实际上是不同的软件产品。MySQL 是开源的,Aurora 不是。