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

  • 相关阅读:
    用js实现广告图片后加载
    Sql server存储过程和C#分页类简化你的代码
    SQL Server 1069 错误(由于登录失败而无法启动服务)解决方法
    ASP.NET编程中的十大技巧
    ASP.NET通用分页程序
    asp.net中使用SPLIT这个函数把一个字符串分成数组
    win2003+iis6服务器设置问题集
    一个较优雅的GridView隐藏列取值解决方案
    ACCESS的iif语句转到SQL语句!!!
    SCOPE_IDENTITY 和 @@IDENTITY
  • 原文地址:https://www.cnblogs.com/freespider/p/5334179.html
Copyright © 2011-2022 走看看