搭的wordpress报错:

后台用的mysql,之前也崩过,原因是虚拟内存耗尽,通过增加swap空间最终让数据重新启动。

但仅过一晚上,数据库再次崩溃。看来要查一查是什么程序耗尽资源。

执行top,切到VIRT列,以虚拟内存使用量进行排序。

root@ns-xxzx-svr:/var/log/mysql# top
top - 10:51:24 up 81 days, 19:52, 2 users, load average: 1.47, 1.14, 0.89
Tasks: 774 total, 3 running, 770 sleeping, 0 stopped, 1 zombie
%Cpu(s): 1.8 us, 32.4 sy, 0.0 ni, 36.4 id, 28.0 wa, 0.0 hi, 1.4 si, 0.0 st
KiB Mem: 1026284 total, 941336 used, 84948 free, 188 buffers
KiB Swap: 3952632 total, 3952632 used, 0 free, 4152 cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
9065 root 20 0 328m 50m 0 S 2.0 5.0 28:07.37 java
26155 hyang0 20 0 170m 24m 660 S 0.0 2.4 0:03.38 check-new-relea
28176 hyang0 20 0 170m 24m 624 S 0.0 2.4 0:04.07 check-new-relea
26782 hyang0 20 0 170m 23m 516 S 0.0 2.3 0:03.35 check-new-relea
25522 hyang0 20 0 169m 23m 652 S 0.0 2.3 0:04.92 check-new-relea
27531 hyang0 20 0 170m 23m 704 S 0.0 2.3 0:05.11 check-new-relea
28832 hyang0 20 0 169m 23m 516 S 0.0 2.3 0:07.84 check-new-relea
19835 hyang0 20 0 170m 22m 604 S 0.0 2.3 0:03.34 check-new-relea
20530 hyang0 20 0 170m 22m 704 S 0.0 2.2 0:03.81 check-new-relea
24742 hyang0 20 0 168m 21m 848 S 0.0 2.2 0:04.99 check-new-relea
11952 hyang0 20 0 170m 21m 856 S 0.0 2.1 0:03.28 check-new-relea
23943 hyang0 20 0 170m 21m 748 S 0.0 2.1 0:04.97 check-new-relea
6850 hyang0 20 0 168m 20m 876 S 0.0 2.0 0:03.00 check-new-relea
17144 hyang0 20 0 170m 19m 648 S 0.0 1.9 0:03.24 check-new-relea
18423 hyang0 20 0 170m 19m 640 S 0.0 1.9 0:03.23 check-new-relea
3105 hyang0 20 0 106m 18m 1796 S 41.5 1.9 1:40.46 check-new-relea
2387 hyang0 20 0 170m 18m 624 S 0.0 1.9 0:03.18 check-new-relea

发现有几十个check-new-relea的进程,每个占用170多兆虚拟内存。再查看swap使用量:

root@ns-xxzx-svr:/var/log/mysql# sudo swapon  -s
Filename Type Size Used Priority
/dev/sda5 partition -
/dev/sdd1 partition -

像上次一样,已经耗尽。在网上也找到类拟的问题:

下面就是处理这些进程了。用pstree, pgrep查找这些进程,确认不会误杀,pkill干掉这些进程。

root@ns-xxzx-svr:~# pgrep check-new- -l
check-new-relea
check-new-relea
check-new-relea
check-new-relea
check-new-relea
check-new-relea
check-new-relea
check-new-relea
check-new-relea
check-new-relea
check-new-relea
check-new-relea

root@ns-xxzx-svr:~# pkill check-new-
root@ns-xxzx-svr:~# pgrep check-new- -l
root@ns-xxzx-svr:~#

再次通过top 和 swapon工具查看资源情况,已经都释放了。mysql 再次复活。

root@ns-xxzx-svr:/var/log/mysql# sudo swapon  -s
Filename Type Size Used Priority
/dev/sda5 partition -
/dev/sdd1 partition -
root@ns-xxzx-svr:/var/log/mysql# /etc/init.d/mysql start
Rather than invoking init scripts through /etc/init.d, use the service()
utility, e.g. service mysql start Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the start() utility, e.g. start mysql
mysql start/running, process
root@ns-xxzx-svr:/var/log/mysql#

mysql启动失败又一例的更多相关文章

  1. MySQL安装过程net start mysql 启动失败 报“错误2,系统找不到文件”的解决办法

    MySQL安装过程net start mysql 启动失败 报“错误2,系统找不到文件”的解决办法 错误2,系统找不到文件. 开始...运行... regedit  注册表项: HKEY_LOCAL_ ...

  2. mysql 启动失败,数据恢复

    mysql 启动失败,数据恢复 2017年02月13日 16:46:36 阅读数:621 Forcing InnoDB Recovery提供了6个等级的修复模式,需要注意的是值大于3的时候,会对数据文 ...

  3. Mysql启动失败解决方案 - 个人经验可能不适合所有场景

    以前一直用的Mysql5.5,安装程序是一个exe程序,安装完了相应的服务也给我注册好了,然后直接启动连接即可. 最近升级到了8.0.15,发现和以前不一样了. 8.0.15下载地址 安装解压之后目录 ...

  4. XAMPP中Apache和Mysql启动失败问题总结

    一.Apache启动失败 xampp启动时显示的错误为: 9:52:41  [Apache]  Attempting to start Apache app... 9:52:41  [Apache]  ...

  5. Linux下mysql启动失败

    原因:强制重启服务器之后,发现mysql启动 失败 解决方法:强制清空 报错路径下的tmp文件,清空之后在tmp下面新建一个文件夹,文件夹的名字在你清空tmp之后启动mysql系统会给你提示 欧克,完 ...

  6. win10 MySQL启动失败问题

    系统升级到win10之后,本地装的MySQL却突然不能启动,系统显示明明就有,可是总是启动失败.在这里解决一下: 解决win10  mysql服务消失,连接不上的问题,注意:以管理员身份运行DOS命令 ...

  7. mysql 启动失败

    1 mysql 启动时报:MySQL Daemon failed to start.并且启动失败 2 查看mysql log日志  less /var/log/mysqld.log 3 从两行erro ...

  8. Mysql启动失败 MYSQL:The server quit without updating PID file

    MySQL5.6启动时出错 提示MYSQL:The server quit without updating PID file 首先执行 /bin/mysqld_safe --user=mysql & ...

  9. mysql启动失败问题记录

    net start mysql 启动mysql服务,启动失败: 手动启动服务,又失败 命令查看日志:mysqld --console 在网上找了解决办法如下: 找到mysql目录,进去bin目录,找到 ...

随机推荐

  1. 使用jdk的keytool 生成CA证书的方法

    一.CA证书生成设置总共分为以下5步: 步骤: 1.根据java的keytool生成CA根证书,放在服务器 2.根据服务器CA根证书导出客户端证书 3.tomcat增加SSL配置 4.客户端IE浏览器 ...

  2. Android 引用文件(.db)的三种方式

    1.assets —— 资产目录(该目录中的文件会被直接打包到 apk 文件中).获取该目录下的文件的方式是: InputStream is = getContext().getAssets().op ...

  3. 基于Flume的日志收集系统方案参考

    前言 本文将简单介绍两种基于Flume的日志收集系统可能的架构方案,可根据不同的实际场景参考使用. 方案一 示例图如下: 说明: 每个日志源(http上报.日志文件等)对应一个Agent-c用于收集对 ...

  4. angular学习笔记-关于ng-class的那些事儿

    在angular中为我们提供了3种方案处理class: 第一种:通过数据的双向绑定(一般是不推荐的) 注意:当它的值为一个字符串时,它就会把用空格分开的字符串加到class中(不推荐,与常用class ...

  5. PHP算法之快速排序、冒泡排序

    快速排序 <?php Class Sort { //快速排序 public function quickly($array) { //判断排序的数组是否大于1 if (count($array) ...

  6. Jmeter JDBC Request 查询语句中有汉字查询结果为空的解决方法

    搜索接口我会校验返回值,查询JDBC Request 查询语句有中文字的时候查询会有问题. 解决方法很简单,在JDBC Connection Configuration的Database URL里加一 ...

  7. Visual Studio 2015 激活码

    专业版:HMGNV-WCYXV-X7G9W-YCX63-B98R2 企业版:HM6NR-QXX7C-DFW2Y-8B82K-WTYJV

  8. MVC基础篇—控制器与视图数据的传递

    Viewdata,Viewbag,Tempdata 1  Vewdata:简单来说就是数据字典,通过键值对的形式来存放数据.举例如下: //后台控制器代码: public ActionResult V ...

  9. razor视图使用三元表达式

    根据条件是否满足给input标签添加属性. <input type="radio" value="1" name="PortType" ...

  10. 【WebSocket No.2】WebSocket和Socket实现聊天群发

    介绍: 前面写过一篇简单的websocke实现服务端.这一篇就不在说什么基础的东西主要是来用实例说话,主要是讲一下实现单聊和群组聊天和所有群发的思路设计. 直接不懂的可以看一下上一篇简单版本再来看也行 ...