MySQL性能优化之swap占用高

页面导航:首页 > 数据库 > Mysql > MySQL性能优化之swap占用高

MySQL性能优化之swap占用高

来源: 作者: 时间:2016-02-03 08:56 【

MySQL性能优化之swap占用高 在MySQL的大数据量测试时,发现MySQL单表数据约超过4000万行时出现性能拐点。查询性能逐步下降,但下降还算缓慢。 继续添加数据,又出现一次明显的性能拐点
MySQL性能优化之swap占用高
 
    在MySQL的大数据量测试时,发现MySQL单表数据约超过4000万行时出现性能拐点。查询性能逐步下降,但下降还算缓慢。
 
    继续添加数据,又出现一次明显的性能拐点。性能可谓是陡降,磁盘IO显著上升,开始使用交换分区。
 
    此时MySQL的数据文件和内存一般大!这不太可能吧,当数据文件和内存一般大时就会出现性能下降?那以前服务器内存小的时候,MySQL岂不是不用干了?
 
    部分内存是被操作吃了。手动干掉操作系统的文件缓存`echo 3 > /proc/sys/vm/drop_caches`,以为这样会让MySQL可用内存更多。但结果并未见好转,反而是缓存刚被清是性能更差了。
 
    经过一轮搜索,原来是需要告诉操作系统尽可能的不要使用磁盘作交换:`echo 0 > /proc/sys/vm/swappiness`(更新到系统配置,在/etc/sysctl.conf上添加vm.swappiness = 0)。
 
    此值默认为60,即(60%)。当然,设为0并非禁用,而是最大限度地使用物理内存。
 
    OK,加此设置之后,MySQL在更多数据量时也未出现swap交换的现象、性能随数据量的增加平缓下降
Tags:

文章评论

最 近 更 新
热 点 排 行
Js与CSS工具
代码转换工具

<