这两天网站一直出现
Error establishing a database connection
登录服务器一看发现是MySQL服务挂了,这已经出现了好几次。今天我非得解决他不可。
先看下日志
130728 6:50:14 [Note] Plugin 'FEDERATED' is disabled. 130728 6:50:14 InnoDB: The InnoDB memory heap is disabled 130728 6:50:14 InnoDB: Mutexes and rw_locks use GCC atomic builtins 130728 6:50:14 InnoDB: Compressed tables use zlib 1.2.3.4 130728 6:50:14 InnoDB: Initializing buffer pool, size = 128.0M InnoDB: mmap(137363456 bytes) failed; errno 12 130728 6:50:14 InnoDB: Completed initialization of buffer pool 130728 6:50:14 InnoDB: Fatal error: cannot allocate memory for the buffer pool 130728 6:50:14 [ERROR] Plugin 'InnoDB' init function returned error. 130728 6:50:14 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed. 130728 6:50:14 [ERROR] Unknown/unsupported storage engine: InnoDB 130728 6:50:14 [ERROR] Aborting 130728 6:50:14 [Note] /usr/sbin/mysqld: Shutdown complete
百度了一波,发现是因为MySQL5.5占用内存太大,然后服务器撑不住就挂了。我也是无奈脸,MySQL也欺负穷人。
解决方法:
修改my.ini
innodb_buffer_pool_size = 64M
根据自己服务器的性能来配置MySQL的性能,太小网站卡,太大服务挂。你明白我意思吧?
如果可以的话你需要设置下swap分区。因为我的vps是没有swap分区的,通过fdisk -l 和 1mount 看不到swap的信息,需要手动添加一下。
添加swap分区的步骤:
2.1) dd if=/dev/zero of=/swapfile bs=1M count=1024 2.2) mkswap /swapfile 2.3) swapon /swapfile 2.4) 添加这行: /swapfile swap swap defaults 0 0 到 /etc/fstab
重启MySQL服务。
这两天再观察观察会不会挂了。
原创文章,作者:Y4er,未经授权禁止转载!如若转载,请联系作者:Y4er
评论列表(2条)
wordpress太庞大,调用数据太猛了~ 😈
所以我换了oneinstack,自带缓存,现在没挂过了