MySQL 5.6版本內存占用過高的解決辦法


最近在阿里雲購買了一台雲服務器,因為是自己測試玩的,所以配置按最低的來了,1G內存,然后啪啪啪(指鍵盤聲音)的安裝了JDK,Tomcat,MySQL(5.6)等一系列環境,開始很爽,然后噩夢開始了:

MySQL會經常停止運行,而且啟動都起不起來,要reboot才行,常看MySQL保存日志,發現是內存不夠,看了一下,環境全部開啟以后,內存占用基本都在90%以上,通過htop仔細查看內存占用,MySQL要占用460M左右…

后來查閱相關資料,MySQL 5.6的默認緩存設置對於低內存的環境並不合理,如果使用默認的配置,至少要占用400M以上。可以修改my.cnf中的默認配置,降低內存占用。

我的系統是centos,my.cnf位於/etc目錄下,先關閉MySQL服務然后編輯配置文件:

service mysql stop
sudo vi /etc/my.cnf

 默認的配置是:

performance_schema_max_table_instances 12500
table_definition_cache 1400
table_open_cache 2000

修改為:

 

performance_schema_max_table_instances=600
table_definition_cache=400
table_open_cache=256

 即可,如果沒有找到這三個配置,可以直接在文件尾添加,然后啟動MySQL服務即可,我這邊修改后后MySQL的內存占用大概在70M多。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM