AmazonRDS MySQL实例执行非常慢

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (228)

我在AmazonEC 2(新加坡地区)上发布了我的网站,我使用MySQLRDS实例进行数据存储。除了性能外,一切都很顺利。

我似乎,我的所有查询,特别是SELECT语句,执行得很慢。如果我在我的本地电脑上检查这个问题,它在那里工作的很好。但是当我试图从RDS实例获取数据时,它非常慢。有些SELECT语句需要2-3秒才能获取数据。

我已经正确地调整了所有表索引,并根据需要进行了规范化/非规范化。我已经做了所有必要的设置RDS自定义参数组(例如。马克斯_连接,,,缓冲器(等等)。我不知道我是不是错过了什么,但这对我没有用--表现没有提高。

有人能帮我解决这个问题吗?

提问于
用户回答回答于

重要的是让你的RDS和EC2实例不在同一区域,而是位于相同的可用性区域,以尽量减少延迟。

我在爱尔兰的EC2上托管了一个API,并将数据库移到了位于美国弗吉尼亚州的MySQL集群,这是我们为另一个项目设置的,每次SQL查询的往返都使API无法使用。

用户回答回答于

值得注意的是,无论出于什么原因,MySQL查询缓存在RDS中都是默认关闭的。这周我们学会了这一点。

这将无助于你的初始查询的性能,但通常情况下它可能会加快速度。

若要重新启用查询缓存,请执行以下操作:

  1. 登录到RDS控制台
  2. 单击RDS实例查看其详细信息
  3. 编辑数据库参数组
  4. 一定要同时设置query_cache_sizequery_cache_type

扫码关注云+社区

领取腾讯云代金券