linux线程意外终止的监,当EC2微实例上的ubuntu在内存不足时将其杀死时,自动重启Mysql...

当系统内存不足时,ubuntu 12.04会终止

mysql进程:

Out of memory: Kill process 17074 (mysqld) score 146 or sacrifice child

所以这个过程最终被杀死了.

这发生在服务器负载的高峰期,主要是因为apache变得疯狂并且吃剩余的可用内存.可能的方法可能是:

>以某种方式改变mysql的优先级,所以它没有被杀死(可能是一个糟糕的修复,因为其他东西将被杀死)

>监视mysql的状态,并在它被杀死时自动重启(我正在思考的那个,但不知道该怎么做).

你怎么看?

突然终止数据库服务器是一个非常严重的崩溃.您需要在生产系统中避免这种情况,因为它可能无法干净地重新启动.

数据库服务器是一个共享资源,几乎不应该在生产中以非计划的方式终止.应该导致意外终止的唯一因素是灾难性的硬件或电源故障.大多数配置正确的生产数据库服务器每十年或更少一次具有计划外终止.认真.

该怎么办?

修复您的apache配置.限制它可以使用的工作线程和进程的数量,因此它无法运行.学习如何做到这一点.这至关重要.见:http://httpd.apache.org/docs/current/mod/mpm_common.html#maxrequestworkers

修复您的Web应用中导致您的Apache疯狂运行的缺陷.

如果可以的话,将mysqld服务器从apache移到另一台服务器上,这样两者就不会争用相同的硬件资源.

配置mysqld以限制它将从apache工作线程或其他客户端接受的连接数.您的Web应用程序可能会处理工作线程需要等待连接的情况.看这里. http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html#sysvar_max_connections

你是EC2微型实例吗?你需要做一些认真的调整.见:http://ubuntuforums.org/showthread.php?t=1979049

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值