我在Amazon EC2(新加坡区域)上发布了我的网站,并使用MySQL RDS实例进行数据存储。除了性能之外,一切都工作得很好。
我看来,我的所有查询,尤其是 select 语句,执行速度非常慢。如果我在本地电脑上检查这个问题,它运行得很好。但是当我尝试从 RDS 实例获取数据时,速度非常慢。某些 select 语句需要 2-3 秒才能获取数据。
我已经正确调整了所有表索引,并根据需要进行规范化/反规范化。我已对 RDS 自定义参数组进行了所有必要的设置(例如最大连接数, bufferETC)。我不知道我是否错过了一些东西,但它对我不起作用 - 性能没有提高。
那么,有人可以帮我解决这个问题吗?
值得注意的是,无论出于何种原因,RDS 中 MySQL 查询缓存默认处于关闭状态。这周我们自己经历了惨痛的教训才明白了这一点。
这不会帮助提高初始查询的性能,但总体上可能会加快速度。
要重新启用查询缓存:
- 登录RDS控制台
- 单击您的 RDS 实例以查看其详细信息
- 编辑数据库参数组
- 请务必同时设置
query_cache_size
and query_cache_type
(免责声明:我不是 DBA,所以这里可能还遗漏了其他内容)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)