zoukankan      html  css  js  c++  java
  • Linux服务器mysql,nginx等自动停止的排查,以及解决方法

    最近发现自己使用的某台云服务武器只要稍微流量大一点,就会出现莫名的的数据库连接错误的情况 ,然后连上服务器查看,发现mysql进程被结束了,经常出现这种情况,这还怎么得了,然后第一时间查看mysql日志 发现是被进程结束了,好端端的怎么就自己结束了呢,这时候想到应该是mysql进程占用太多内存,然后被系统给kill 掉了.
    然后 tail /var/log/messages 查看服务器的系统日志/var/log/messages
    TB1DtElHFXXXXXYXXXXXXXXXXXX

    然后看了下在mysql自动停止的时间段内,有什么异常的日志信息,日志有提示“Out of memory”这就可以判定,是服务器的内存使用不足,导致系统自动杀死的mysql的进程,果然是内存不足,通过升级服务器的内存可以解决。还有就是
    inux开启swap(虚拟内存) 也能相应的解决问题, 所以我选择了后者试一试
    具体步骤如下
    文章出处:极安全 www.jisec.com
    由于开启swap分区会导致硬盘IO性能下降,因此阿里云服务器或者其他的一些云服务器初始状态未配置swap,如果某些应用需要开启swap分区,可以采用如下方法增加:
    1、创建用于交换分区的文件
    #dd if=/dev/zero of=/mnt/swap bs=block_size count=number_of_block
    注:block_size、number_of_block 大小可以自定义,比如bs=1M count=1024 代表设置1G大小swap分区
    2、设置交换分区文件
    #mkswap /mnt/swap
    TB16msyHXXXXXbXXVXXXXXXXXXX
    3、立即启用交换分区文件
    #swapon /mnt/swap
    如果在/etc/rc.local中有swapoff -a 需要修改为swapon -a

    222

    4、设置开机时自启用swap分区

    需要修改文件/etc/fstab中的swap行。

    添加 /mnt/swap swap swap defaults 0 0

    注:/mnt/swap 路径可以修改,可以根据创建的swap文件具体路径来配置。
    文章出处:极安全 www.jisec.com

    333

    设置后可以执行free -m命令查看效果

    444

  • 相关阅读:
    算法笔记--二分图判定
    算法笔记--最小表示法
    Codeforces 525A
    Codeforces 140D
    Codeforces C
    Codeforces 665C
    Codeforces 604B
    Codeforces 285C
    The Fewest Coins POJ
    Triangular Pastures POJ
  • 原文地址:https://www.cnblogs.com/freespider/p/5334179.html
Copyright © 2011-2022 走看看