首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >调优MySQL以减少内存消耗

调优MySQL以减少内存消耗
EN

Database Administration用户
提问于 2012-09-28 09:40:37
回答 4查看 7.9K关注 0票数 2

我有一个VM,它有2GB的Ram,(全规格),我正在建立一个站点,它有一个表,特别是有超过一百万条记录。很少或根本不使用这个特定的数据库(可能一天一两次),但只需运行mysql就会使整个服务器陷入瘫痪。我已经查看了top的结果,但是没有什么东西真正削弱了CPU,但是内存似乎是问题所在。该网站甚至还没有接受请求的生活。内存状况如下所示:

代码语言:javascript
复制
# free -m
             total       used       free     shared    buffers     cached
Mem:          2006       1880        126          0          3         53
-/+ buffers/cache:       1823        183
Swap:         2047        345       1702

是否有好的指针来调优mysql以停止占用系统内存?

非常感谢

编辑:(由8位请求):

http://tny.cz/b41a0b12

EN

回答 4

Database Administration用户

回答已采纳

发布于 2012-09-28 12:05:11

MySQL应该包括许多用于my.cnf的起点配置文件,这些文件可以调整内存的使用。这些文件名为my-small.cnf、my-medium.cnf、my-large.cnf和my-huge.cnf。

在MySQL上有一个在线的http://www.mysqlcalculator.com/内存使用计算器。通过比较起始点文件和使用内存使用计算器,您应该能够调整my.cnf配置文件以容纳服务器的内存约束。

有关每个参数的更多信息,您可以参考联机可用的MySQL文档。下面是指向MySQL服务器5.1:http://dev.mysql.com/doc/refman/5.1/en/server-system-variables.html的MySQL文档的链接

票数 2
EN

Database Administration用户

发布于 2012-09-28 12:56:07

我怀疑是MySQL服务器本身,而是它正在处理的查询才是您的罪魁祸首。

您是否启用了任何形式的查询日志记录(例如,MySQL中的缓慢查询日志以及从您的web应用程序中捕获任何查询)?也许可以对它们进行优化以提高性能。

运行GloMac提到的GloMac脚本和tuning-primer.sh脚本也将有助于指出配置问题。

票数 0
EN

Database Administration用户

发布于 2012-09-28 14:26:44

我的第一个想法是:你做一个完整的表格扫描吗?如果是,这有必要吗?在大多数情况下,索引首先有助于提高数据库的性能,其次,mysql数据库不需要将整个数据库加载到内存中,只需加载所需的行。

票数 0
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/25231

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档