当AWS RDS (Mysql)的可用内存小于RDS总内存的20%时,我需要做什么?

And*_*rew 7 mysql memory amazon-rds

我的RDS实例类是db.m3.xlarge,它的总内存是15G,我使用RDS有一段时间了,RDS Freeable Memory持续下降,目前不到3G。

\n

可用内存 < 总内存 * 20%

\n

此图 1(可用内存)显示:\n在此输入图像描述

\n

图片 2(交换使用)显示:\n在此输入图像描述

\n

根据链接:\n https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_BestPractices.html#CHAP_BestPractices.Performance.RAM

\n
\n

记忆

\n

Freeable Memory \xe2\x80\x93 数据库实例上的可用 RAM 量(以兆字节为单位)。“监控”选项卡指标中的红线标记为 CPU、内存和存储指标的 75%。如果实例内存消耗经常跨越该线,则表明您应该检查您的工作负载或升级您的实例。

\n

swap 使用 \xe2\x80\x93 数据库实例使用了多少交换空间(以兆字节为单位)。

\n
\n

根据上面一段话,我应该增加实例来增加内存吗?(将RDS实例从db.m3.xlarge修改为db.m3.2xlarge)

\n

我还找到了这个链接:

\n

Amazon RDS 可用内存不足。我应该担心吗?

\n

它说:

\n

“简短的回答 - 您不应该担心可用内存,除非它变得非常低(大约 100-200 Mb)或发生大量交换(请参阅 RDS SwapUsage 指标)。”

\n

但我的FreeableMemory是2.9G,swapUsage是0。

\n

问题一:

\n

是否需要扩容实例增加内存?(将RDS实例从db.m3.xlarge修改为db.m3.2xlarge)

\n

问题2\xef\xbc\x9a

\n

RDS的Freeable内存会继续减少直到小于100M吗?

\n

如果出现这种情况,用什么方法可以让Freeable内存不小于某个值呢?

\n

问题3\xef\xbc\x9a

\n

这张图片显示了 innodb_buffer_pool_size:\n在此输入图像描述

\n

innodb_buffer_pool_size 的值为 {DBInstanceClassMemory*3/4} 。

\n

innodb_buffer_pool_size与可用内存有关吗?

\n

我猜:

\n

总内存 - innodb_buffer_pool_size - 数据库内存 = 可用内存

\n

我对吗?

\n

问题4\xef\xbc\x9a

\n

CLoudwatch的哪些参数用来判断我的RDS内存不够,Swap使用情况,Free Memory,Freeable内存?

\n