我已经使用 ubuntu 14.04 一段时间了,但对 linux 命令行的东西还很陌生。我主要用它进行 Java/android/web 开发。
有时我发现我的笔记本电脑比平时更热,有时在使用 Eclipse+tomcat 时温度甚至会很高。但大多数时候温度都是正常的。因此,每次我看到我的笔记本电脑过热时,我都会检查正在运行的服务,每次我都会发现“mysqld”占用的内存比平时多。通常它占用大约 40-60mb 的内存,但当我发现我的笔记本电脑变得非常热时,我会检查内存使用情况,发现mysqld
占用了大约 500mb 的内存!
一个月以来我都没有再看到这种情况发生。但是昨天我的 ubuntu 进行了更新,从那时起我又遇到了这个问题。有人能帮我解决这个问题吗?
答案1
检查你的 buffer_sizes,我假设你正在使用 innodb,
设置innodb_buffer_pool_size
为低于当前值的值。
连接数也会占用大量内存,因此请将max_connections
值设置得尽可能低
确保应用程序完成其工作后已关闭所有打开的连接。
如果有任何长时间运行的查询,它也会影响性能。您需要检查慢查询日志来查找这些查询。
检查SHOW FULL PROCESSLIST
哪些查询正在运行并等待其他资源。您可以优化这些查询以使其快速完成。