当AWS RDS(Mysql)的可用内存少于RDS总内存的20%时,我该怎么办?

时间:2018-12-23 16:56:01

标签: mysql memory amazon-rds

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

可用内存<总内存* 20%

此Picture1(可用内存)显示如下: enter image description here

Picture2(交换使用情况)显示如下: enter image description here

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


内存

可用内存–数据库实例上可用的内存量(以兆字节为单位)。 “监视”选项卡指标中的红线针对CPU,内存和存储指标标记为75%。如果实例内存消耗经常超过该界限,则表明您应检查工作负载或升级实例。

交换使用率–数据库实例使用了多少交换空间,以兆字节为单位。


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

我还找到了此链接:

Amazon RDS running out of freeable memory. Should I be worried?

它说:

“简短答案-除非FreeableMemory变得非常低(大约100-200 Mb)或发生大量交换(请参阅RDS SwapUsage指标),否则您不必担心。

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

问题1:

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

问题2:

RDS的可用内存是否会继续减少,直到小于100M?

如果发生这种情况,我可以使用什么方法使可释放内存不小于某个值?

问题3:

此图片显示了innodb_buffer_pool_size: enter image description here

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

innodb_buffer_pool_size与可释放内存有关吗?

我猜:

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

我对吗?

问题4:

CLoudwatch的哪些参数用于判断我的RDS内存不足,交换使用,可用内存,可用内存?

0 个答案:

没有答案