日期:2014-05-16  浏览次数:20849 次

mysql备份出现swap问题

最近一台mysql机器晚上备份的时候总是出现swap告警,网上搜了一下mysql + swap 出了一堆结果。解决方案大致有这么一些:

1、修改swappiness的值,设为0;

2、mysql使用huge page。

?

在我自己遇到的问题里,出现swap是因为swappiness设置为60导致的:/etc/sysctl.conf里swappiness为0,/proc/sys/vm/swappiness为60(估计被人不小心改掉了)。

swap具体的原因和原理就不多说了,个人感觉taobaodba的2篇文章讲的比较清楚。

http://www.taobaodba.com/html/552_mysql_avoid_swap.html

http://www.taobaodba.com/html/554_mysql_avoid_swap_2.html

下面的一些链接多少都有重复,不过都有一些扩展,比如,使用ramdisk(ram as swap partition),memlock。

http://www.mysqlperformanceblog.com/2008/04/06/should-you-have-your-swap-file-enabled-while-running-mysql/
http://www.ha97.com/4201.html
http://linuxgazette.net/155/krishnakumar.html
http://harrison-fisk.blogspot.com/2009/01/enabling-innodb-large-pages-on-linux.html
http://www.mjmwired.net/kernel/Documentation/vm/hugetlbpage.txt
http://www.linux.com/news/software/applications/8208-all-about-linux-swap-space
http://www.incutio.com/blog/2009/11/27/mysql-swapping-resolution/
http://don.blogs.smugmug.com/2008/05/01/mysql-and-the-linux-swap-problem/