解决小内存机器 MySQL 总是 OOM 的问题
有一台512M内存的小机器总是报数据库错误, 查看了下日志是OOM了
解决方案:
一 Add swap file to cloud instance
http://www.prowebdev.us/2012/05/amazon-ec2-linux-micro-swap-space.html
- Run dd if=/dev/zero of=/swapfile bs=1M count=1024
- Run mkswap /swapfile
- Run swapon /swapfile
- Add this line /swapfile swap swap defaults 0 0 to /etc/fstab
Some useful command related to SWAP space:
$ swapon -s
$ free -k
$ swapoff -a
$ swapon -a
二 limit mysql buffersize
innodb_buffer_pool_size = 8M
三 limit apache memory cosumption,editing /etc/apache2/mods-enabled/mpm_prefork.conf
<IfModule mpm_prefork_module>
StartServers 3
MinSpareServers 3
MaxSpareServers 5
MaxRequestWorkers 25
MaxConnectionsPerChild 0
</IfModule>