每半个小时的SWAP内存交换是什么引起的呢?
[root@tlbb3d_yd_mxy_120-132-43-203_sx ~]# crontab -l
00 05 * * * /bin/bash /home/databak/scripts/xtrabackup.sh FULL_BACKUP
*/30 * * * * /bin/bash /home/databak/scripts/xtrabackup.sh INCRE_BACKUP
00 03 * * * /bin/bash /home/databak/dbbbak.sh xxx
通过crontab 发现,这台服务器每半个小时使用xtrabackup对mysql做一次增备,
这个增备的起点是基于每天凌晨5点的全备进行的,也就意味着随着时间增备的数据量会越来越大,
备份时长也会越来越长,也就意味着系统资源会越来越紧张,以下也可以看到数据的增长情况
# du -sh *
2.4G 201602261030
2.5G 201602261100
很显然通过以上的分析我们需要做以下三件事情来解决mysql的OOM
1.将innodb_buffer_pool_size设置为48G
2.将vm.swappiness设置为1
3.调整增量备份时间(需要和业务平衡),拉长增量备份的间隔,降低系统的资源消耗