欢迎光临
我们一直在努力

centos mysql 因Out of memory停止服务

近一阶段,阿里云VPS服务器,客户经常反应后台登录不了,提示连不上数据库,一检查发现mysqld服务停止了,service mysqld restart重启一下就能正常使用了,不过这个频率有点高了。

首先检查下日志,打开/var/log/messages,发现因为内存溢出,mysqld服务被系统强制kill掉了,Out of memory: Kill process 21886 (mysqld) score 29 or sacrifice child。

 

找到内存原因了,于是就寻求解决办法,可能是一个VPS上网站系统过多,导致内存不够,但这半夜三更的,访问量也不大啊,但有一个会员一直是半夜上网的,会上传大量资料,不排除是他导致的。

方法有两个,一是增加内存,这需要银子,囊中羞涩的我只能用低成本方法来解决,以下方案在测试中,请期待后续报告。

文章出处:极安全 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分区

执行命令:

[code]

dd if=/dev/zero of=/mnt/swap bs=1M count=1024

[/code]

2、设置交换分区文件
#mkswap /mnt/swap
TB16msyHXXXXXbXXVXXXXXXXXXX
3、立即启用交换分区文件

[code]

swapon /mnt/swap

[/code]

如果在/etc/rc.local中有swapoff -a 需要修改为swapon -a

222

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

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

添加

[code]

/mnt/swap swap swap defaults 0 0

[/code]

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

333

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

444

 

赞(0) 打赏
未经允许不得转载:席天卷地个人博客 » centos mysql 因Out of memory停止服务
分享到: 更多 (0)
标签:

评论 抢沙发

评论前必须登录!

 

QQ :13945502电话:13913571631

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

×
订阅图标按钮