• 针对跑MySQL的Linux优化【转】


    因为很多MySQL的生产环境都在Linux下,我决定指出一些Linux下跑MySQL的很重要的优化点。这些是大家都知道的,也没什么新东西,但我想在这一个blog里收集整理一下Linux相关的配置优化经验。

    文件系统:
    ext4(or xfs) mount时使用notime选项
    文件系统调度策略: 使用deadline or noop

    # echo deadline > /sys/block/sda/queue/scheduler
    add "elevator=deadline" to grub.conf

    译者推荐: XFS , 目前来看Red hat Enterprise 7 后面XFS成为了默认的文件系统。

    内存:
    Swappiness and NUMA
    译者注: 最好禁掉swappiness 或是在系统标识不使用他。

    # echo 0 > /proc/sys/vm/swappiness
    add "vm.swapiness=0" to /etc/sysctl.conf

    使用numa的interleave all 模式
    numactl –interleave=all 启动mysqld
    如果使用Percona-server 在mysql_safe里有关于使用numa_interleave的选项。更多关于信息可以查看Percona Server对numa的支持

    (并且别忘了使用innodb_flush_method=O_DIRECT)rformance/innodb_numa_s

    译者注: 内存优化这块可以考虑使用jemalloc( tokudb,percona都有使用这个方式,官方版本需要自已加载)

    CPU:
    确认启用CPU的低功耗(powersave)选项
    检查:

    /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

    确认这里显示是不是ondemand,如查是则启用了节能模式。

    另外检查/proc/cpuinfo并对比cpu MHZ的数字和”model name”后面显示的数字是否一样
    如果使用了ondemand请禁用他。

    例如: “ondemand” 在服务器上运行:

    $ps ax|grep kondmand|wc -l
    65
    $ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
    ondemand

    另外查看CPU的标注频率是否和实际频率相符:

    /proc/cpuinfo:
    model name : Intel(R) Xeon(R) CPU E5-4640 0 @ 2.40GHz
    ..
    cpu MHz : 1200.000

    如果不符请禁用ondemand(需要更改bois里的配置)

    译者注: 如果CPU超过24个核,建议使用MySQL5.6后面的版本。

  • 相关阅读:
    tr 字符转换命令
    Log4cpp配置文件及动态调整日志级别的方法
    Ubuntu使用总结
    vim安装与配置(进阶版)
    [转载] Linux CC与GCC的区别
    C语言基础总结
    VIM之ctags & Taglist 插件
    vim之基础配置
    使用问题:Chrome卡死崩溃
    Ubuntu16.10安装之后的软件安装
  • 原文地址:https://www.cnblogs.com/moss_tan_jun/p/6026025.html
Copyright © 2020-2023  润新知