mysql - Aurora - MySQL 5.7 - Adaptive_hash_index 配置 - 读取与写入副本
问题描述
我正在运行 Aurora MySQL 5.7。我已经在每个实例的 db 级别将自适应哈希索引设置为 true。Write 实例设置为 true,但只读副本仍设置为 false。不知道为什么。这不可能改变吗?
解决方案
这似乎是 Aurora 的已知且经过验证(未记录)的限制。根据 Percona 博客文章“ AWS Aurora 上的自适应哈希索引”,AWS 工程师已经确认无法在 Reader 节点上启用自适应哈希索引。如果您有需要 AHI 的工作负载,则需要在 Writer 节点或单独的 MySQL 副本上运行它们。
您仍然可以在 Reader 实例(该参数无效)上修改此 Parameter Group 参数这一事实似乎是他们正在调查的一个错误。
另请参阅Stefano@AWS 于 2015 年 8 月发布的 AWS 论坛帖子,该帖子证实了这一限制:
关于跨大型数据集连接查询的性能问题。正如一些人所指出的,启用 innodb_adaptive_hash_index 可以改进此类查询。该参数在 Aurora 中默认禁用,因为它可能不利于性能密集型混合读/写工作负载,但可以随时通过参数组重新启用。我可以确认,目前该参数仅适用于集群的主实例,而不适用于只读副本。可以通过创建单独的 Aurora 实例并启用 binlog 复制来解决此限制,这是我们支持的。这是我们计划改进并且目前正在努力的领域。
推荐阅读
- python - 以相同的顺序随机化 3 个单独的向量
- java - Spring Data JPA 创建 DATETIME 列,但插入 TIMESTAMP
- javascript - React Native Web 视图未显示
- mongodb - 无法通过 Mongo Shell 连接 mongoDB 服务器
- javascript - 如何禁止 javascript 脚本?
- sqlite - 如何通过 sql Lite 加载数据
- kotlin - 如何在不使用异常的情况下为 Flow 提供“关闭原因”?
- node.js - 如何使用 axios 在 Nuxtjs 项目的“静态”目录中上传文件?
- vbscript - 如何检查 URL 健康同步而没有超时错误?
- razor - 如果路由匹配但参数错误,如何手动显示 Blazor-Webassembly-404-Not-Found 页面?