Re: 网站不能访问了,如何排查?
« 回复 #10 于: 2018-02-02, 17:44:57 »
https://cnhap.org/csharr/download/mariadb.log
简单点说就是你的服务器内存不足,无法满足数据库运行所需要的内存需求,然后它就崩溃退出了。

建议你尝试在数据库的配置中禁用 InnoDB 引擎。具体的配置你需要自己搜索一下。如果禁用之后网站运行正常,那就一直保持禁用状态吧。

下面是对你提供的日志的标注,
程序代码: [选择]
...
180113  9:37:20 [ERROR] mysqld: Out of memory (Needed 128917504 bytes) ==> 内存不足
...
180113  9:37:21 [Note] /usr/libexec/mysqld: ready for connections. ==> 但是没有造成停止运行
...
180114 17:58:22 [Note] /usr/libexec/mysqld: Normal shutdown ==> 正常关闭/重启数据库
...
180120 14:52:55 mysqld_safe mysqld restarted    ==> 已重启
180120 14:52:56 InnoDB: The InnoDB memory heap is disabled
180120 14:52:56 InnoDB: Mutexes and rw_locks use GCC atomic builtins
180120 14:52:56 InnoDB: Compressed tables use zlib 1.2.7
180120 14:52:56 InnoDB: Using Linux native AIO
180120 14:52:56 [Note] /usr/libexec/mysqld (mysqld 5.5.56-MariaDB) starting as process 32374 ...
180120 14:52:56 InnoDB: Initializing buffer pool, size = 128.0M
InnoDB: mmap(137756672 bytes) failed; errno 12
180120 14:52:56 InnoDB: Completed initialization of buffer pool
180120 14:52:56 InnoDB: Fatal error: cannot allocate memory for the buffer pool
180120 14:52:56 [ERROR] Plugin 'InnoDB' init function returned error.
180120 14:52:56 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
180120 14:52:56 [ERROR] mysqld: Out of memory (Needed 128917504 bytes) ==> 内存不足
180120 14:52:56 [ERROR] mysqld: Out of memory (Needed 96681984 bytes) ==> 内存不足
180120 14:52:56 [ERROR] mysqld: Out of memory (Needed 72499200 bytes) ==> 内存不足
180120 14:52:56 [Note] Plugin 'FEEDBACK' is disabled.
180120 14:52:56 [ERROR] Unknown/unsupported storage engine: InnoDB   ==> 不支持 InnoDB 存储引擎
180120 14:52:56 [ERROR] Aborting

180120 14:52:56 [Note] /usr/libexec/mysqld: Shutdown complete   ==> 已停止运行

... ==> 错误同上

180122 12:11:44 [Note] /usr/libexec/mysqld: Shutdown complete

... ==> 错误同上

180123 19:18:45 [Note] /usr/libexec/mysqld: Shutdown complete

... ==> 错误同上

180131 17:00:14 [Note] /usr/libexec/mysqld: Shutdown complete

... ==> 正常运行中
欢迎光临水景一页

请阅读“论坛管理”里面的置顶内容,帮助维护论坛正常运行,方便你我他!

*

离线 cnhap

  • *
  • 40
Re:
« 回复 #11 于: 2018-02-02, 18:06:37 »
引用
简单点说就是你的服务器内存不足,无法满足数据库运行所需要的内存需求,然后它就崩溃退出了。

建议你尝试在数据库的配置中禁用 InnoDB 引擎。具体的配置你需要自己搜索一下。如果禁用之后网站运行正常,那就一直保持禁用状态吧。

测试网站会造成数据库 内存不足,从而操作数据库关闭?


程序代码: [选择]
[root@cnhap ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:           1839         371         721          41         746        1241
Swap:             0           0           0

http://www.jb51.net/article/92990.htm  按照 这个贴上说的方法 可以不,百度没有 搜索到   MariaDB 5.5.56 禁用 InnoDB   的方法。
« 最后编辑时间: 2018-02-02, 18:15:54 作者 cnhap »

Re:
« 回复 #12 于: 2018-02-02, 19:44:12 »
测试网站会造成数据库 内存不足,从而操作数据库关闭?
我不知道这个测试是怎么运作的,所以无法回答你这个问题。按常理讲,测试不会造成内存不足,也许是它触发了别的什么东西吧。

程序代码: [选择]
[root@cnhap ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:           1839         371         721          41         746        1241
Swap:             0           0           0

http://www.jb51.net/article/92990.htm  按照 这个贴上说的方法 可以不,百度没有 搜索到   MariaDB 5.5.56 禁用 InnoDB   的方法。
看你的 `free -m` 结果似乎不至于内存不足。我的 VPS 才 1GB 内存,不过我的 VPS 的确用到了一些 swap 空间(大约 100MB 左右吧)。但是因为不了解你的服务器的具体情况,无法作出判断,或许你需要优化服务器的配置,比如运行的软件、软件的资源配额等。显然即使你愿意让我登录你的服务器调查我也没有那么多时间。最近忙得头晕脑胀。所以无法给出具体的建议。不过你可以按照网上已有的一些常规的优化思路挨个儿检查。我以前的博文里应该就有相关的操作。

你提到的这个链接给出的 VPS 配置了不到 1GB 内存,而你上面给出的处于 free 状态的内存都有他的内存多了。综合考虑上面的观察结果,他的这个方法不一定适合你的服务器。但是试试也无妨。

所以我还是维持原来的建议,先尝试关闭 InnoDB 引擎。观察一下。然后慢慢一项一项地检查服务器配置,重点是 apache (httpd)、其它运行中的服务和 MariaDB 的配置(主要是内存占用方面的分析)。
欢迎光临水景一页

请阅读“论坛管理”里面的置顶内容,帮助维护论坛正常运行,方便你我他!

*

离线 cnhap

  • *
  • 40
Re:
« 回复 #13 于: 2018-02-02, 20:06:27 »
引用
所以我还是维持原来的建议,先尝试关闭 InnoDB 引擎。观察一下。然后慢慢一项一项地检查服务器配置,重点是 apache (httpd)、其它运行中的服务和 MariaDB 的配置(主要是内存占用方面的分析)。

用  mysql  关闭  InnoDB  引擎  的方法可以不,搜索不到mariadb 关闭的方法。

Re:
« 回复 #14 于: 2018-02-03, 19:50:17 »
用  mysql  关闭  InnoDB  引擎  的方法可以不,搜索不到mariadb 关闭的方法。
我也找了找,找不到具体的说明,也许不可行吧。那就不要想着关闭 InnoDB 吧。我刚看了看,我的似乎没有禁用则个引擎。

然后你可以优化一下内存占用。可能是你配置的资源占用太高了。可以参考这个博文来优化一下:https://www.lyblog.net/detail/467.html
欢迎光临水景一页

请阅读“论坛管理”里面的置顶内容,帮助维护论坛正常运行,方便你我他!

*

离线 cnhap

  • *
  • 40
Re: 网站不能访问了,如何排查?
« 回复 #15 于: 2018-02-10, 17:33:22 »
可以关帖了,我添加了 swap 区  还特意 用 17ce 对网站进行测试了 没有在出现之前的问题。

Re: 网站不能访问了,如何排查?
« 回复 #16 于: 2018-02-11, 05:31:21 »
我添加了 swap 区  还特意 用 17ce 对网站进行测试了 没有在出现之前的问题。
总算是解决问题了。再加一句。你的VPS有2GB内存,应该还存在优化的空间。

好了,有问题再开新帖子吧。
欢迎光临水景一页

请阅读“论坛管理”里面的置顶内容,帮助维护论坛正常运行,方便你我他!