zoukankan      html  css  js  c++  java
  • MySQL运行环境中,当发现系统已经用到了swap,该怎么处理?

    MySQL运行环境中,当发现系统已经用到了swap,该怎么处理?
    
    
    一般来说,发生swap的原因是系统认为内存不够了。
    那么,当物理内存真的不够了,或者著名的NUMA都是引起swap的可能原因。通常的应对方法有几种:
        1、通过BIOS、系统内核参数关闭NUMA,或者在mysqld启动时,利用numactl关闭NUMA的使用。
        2、调低系统使用swap的权重,设置内核参数 参数 vm.swappiness 不高s 不高于10。
        3、Linux下使用free命令查看内存使用情况,确认是否发生了内存泄露,可以去微信公众号「老叶茶馆」中发送“OOM”。
        4、修改MySQL参数innodb_flush_method = O_DIRECT,这样InnoDB在读写物理数据的时候会绕过cache来访问磁盘。
        5、优化SQL效率,避免产生额外的分组、排序、临时表情况发生,参考文章:文章:http://t.cn/EwLIuFv
        6、在【夜间或业务不繁忙】时适合执行 swapoff -a,并执行sync刷新操作系统内存脏页到硬盘。
  • 相关阅读:
    Mysql备份和恢复
    前端Css学习
    jQuery学习
    HTML页面学习
    Linux下java环境变量配置
    windows下java环境变量标准配置
    oracle查询消耗服务器资源SQL语句
    Java主线程在子线程执行完毕后再执行
    CentOS7 安装 Redis
    查看Oracle表空间使用情况
  • 原文地址:https://www.cnblogs.com/zhouwanchun/p/13153212.html
Copyright © 2011-2022 走看看