【问题标题】:RDS InnoDB RAM usage issueRDS InnoDB RAM 使用问题
【发布时间】:2019-08-26 15:44:45
【问题描述】:

我在生产环境中使用 AWS RDS 很长时间了。 我开始监控它的内存使用情况,尤其是 InnoDB 统计数据。

几乎整个缓冲池都已满,但我知道我创建的索引并没有那么大。数据库有 32GB 的 RAM。 MySQL 版本 5.7.22

在进一步挖掘后,我发现 SYS_TABLES 表中的 CLUST_IND 索引和“未知”类型的页面正在使用大量页面。我想知道是否有什么可以做的清理它?任何建议将不胜感激。

查询:

select
table_name as Table_Name, index_name as Index_Name,
count(*) as Page_Count, sum(data_size)/1024/1024 as Size_in_MB
from information_schema.innodb_buffer_page
group by table_name, index_name
order by Size_in_MB desc;

结果:

【问题讨论】:

  • 问题与 stackoverflow 无关或至少在灰色区域中,请在dba.stackexchange.com 上重新提问或联系亚马逊支持..

标签: mysql innodb amazon-rds


【解决方案1】:

information_schema.innodb_sys_tables 是系统中所有表的内部列表。 不要弄乱它。 不要担心它的空间使用情况。 “CLUST_IND”是人工主键。

至少在 MySQL 5.6 的情况下,它确实占用磁盘空间;它在 RAM 中。它实际上并不占用 4093MB。对于某些系统表,这种计算是虚假的,例如这个。

您有数千张桌子吗?如果是这样,请考虑是否需要所有这些。每个都在 sys_tables 中占用一点空间。

buffer_pool 是一个缓存,所以大部分时间它几乎是满的是正常的。它有多满无关紧要。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-03
    相关资源
    最近更新 更多