MySQL运行一段时间后自动停止问题的排查
2017-09-06 20:11
204 查看
在进入主题前,一定要先吐槽下自己,前段时间购买了一台阿里云服务器,最开始打算只是自己个人用的,就买了一台配置很寒碜的服务器:
CPU: 1核
内存: 1 GB
操作系统: CentOS 7.2 64位
这个配置亮出来估计好多人都已经知道答案了,下面就说下问题排查的步骤:
使用Xshell远程连接上服务器,使用命令 service mysqld restart重启mysql,提示:
2. 去看mysql的错误日志,但是不知道错误日志在哪里,先去找找mysql的my.cnf文件,这里需要注意下,我在mysql的安装目录下的确找到了一个my.cnf文件,但是改了很多配置项发现没有任何作用,google后才知道这个并不是当前使用的配置文件my.cnf,参考这篇文章找到当前使用的配置文件https://my.oschina.net/manech/blog/861991,找到了配置文件(/etc/my.cnf),找到了错误日志的地方:
3. 去错误日志看看:
其中标为黄色的就比较重要了,百度Cannot allocate memory for the buffer pool都说是无法给innodb分配足够的内存,大多数给出的解决的方案是:修改innodb_buffer_pool_size,但是我这个my.cnf里面没有,那就加一个被呗,顺便将这个字段设置成200M,重启mysql发现一样的结果,还是启动不了,去看日志还是一样的问题,还是太大咯?
4.用free -m看下
只有185M的内存了,只能再改小点咯,改成64.
5.service mysqld restart,终于
买了一台废柴。。。
CPU: 1核
内存: 1 GB
操作系统: CentOS 7.2 64位
这个配置亮出来估计好多人都已经知道答案了,下面就说下问题排查的步骤:
使用Xshell远程连接上服务器,使用命令 service mysqld restart重启mysql,提示:
MySQL server PID file could not be found! [FAILED] Starting MySQL.The server quit without updating PID file(/[FAILED]server/mysql/data/iZ2zeabsxnnfzh13g8yqxjZ.pid).
2. 去看mysql的错误日志,但是不知道错误日志在哪里,先去找找mysql的my.cnf文件,这里需要注意下,我在mysql的安装目录下的确找到了一个my.cnf文件,但是改了很多配置项发现没有任何作用,google后才知道这个并不是当前使用的配置文件my.cnf,参考这篇文章找到当前使用的配置文件https://my.oschina.net/manech/blog/861991,找到了配置文件(/etc/my.cnf),找到了错误日志的地方:
log-error=/alidata/log/mysql/error.log,
3. 去错误日志看看:
2017-09-03 17:38:21 20390 [Note] InnoDB: The InnoDB memory heap is disabled 2017-09-03 17:38:21 20390 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins 2017-09-03 17:38:21 20390 [Note] InnoDB: Memory barrier is not used 2017-09-03 17:38:21 20390 [Note] InnoDB: Compressed tables use zlib 1.2.3 2017-09-03 17:38:21 20390 [Note] InnoDB: Using Linux native AIO 2017-09-03 17:38:21 20390 [Note] InnoDB: Using CPU crc32 instructions 2017-09-03 17:38:21 20390 [Note] InnoDB: Initializing buffer pool, size = 128.0M InnoDB: mmap(137363456 bytes) failed; errno 12 2017-09-03 17:38:21 20390 [ERROR] InnoDB: Cannot allocate memory for the buffer pool 2017-09-03 17:38:21 20390 [ERROR] Plugin ‘InnoDB’ init function returned error. 2017-09-03 17:38:21 20390 [ERROR] Plugin ‘InnoDB’ registration as a STORAGE ENGINE failed. 2017-09-03 17:38:21 20390 [ERROR] Unknown/unsupported storage engine: InnoDB 2017-09-03 17:38:21 20390 [ERROR] Aborting 2017-09-03 17:38:21 20390 [Note] Binlog end 2017-09-03 17:38:21 20390 [Note] Shutting down plugin ‘partition’ 2017-09-03 17:38:21 20390 [Note] Shutting down plugin ‘PERFORMANCE_SCHEMA’
其中标为黄色的就比较重要了,百度Cannot allocate memory for the buffer pool都说是无法给innodb分配足够的内存,大多数给出的解决的方案是:修改innodb_buffer_pool_size,但是我这个my.cnf里面没有,那就加一个被呗,顺便将这个字段设置成200M,重启mysql发现一样的结果,还是启动不了,去看日志还是一样的问题,还是太大咯?
4.用free -m看下
total used free shared buff/cache available Mem: 992 574 159 0 258 260 Swap: 0 0 0
只有185M的内存了,只能再改小点咯,改成64.
5.service mysqld restart,终于
Starting MySQL. [ OK ]
买了一台废柴。。。
相关文章推荐
- 服务器的mysql老是运行一段时间,自动停止
- 阿里云的小内存服务器,mysql总是运行一段时间后自动停止
- Mysql服务启动遇到“某些服务启动后自动停止”的问题的解决方案
- mysql无任何征兆,自动停止问题
- php分享二十八:mysql运行中的问题排查
- 遇到几个问题:1.昨天还能连上数据库,今天不能;2.mysql服务自动停止
- 解决MYSQL启动后自动停止问题
- 关于在ie8beta2下用vs2005运行调试,自动停止的问题
- Linux服务器mysql,nginx等自动停止的排查,以及解决方法
- 关于在ie8下用vs2005运行调试,自动停止的问题
- 关于Mysql服务自动停止的问题
- 测试环境mysql参数max_allowed_packet自动更改的问题排查过程
- MySQL自动断开连接的问题
- 阿里云服务器 mysql经常自动停止挂掉重启的完美解决方式
- C++ dll 调用C#传入的回调函数,运行一段时间程序自动出错
- MySQL 自动断开连接的问题
- Hibernate中Javabean不能自动生成MySQL表结构问题
- tomcat启动与停止时自动运行代码
- 长时间运行的spark-streaming程序自动退出的问题
- MySQL 的自动断开连接问题