zoukankan      html  css  js  c++  java
  • 记一次 mysql 启动没反应

     记一次 mysql 启动没反应 ,重启linux又可以启动

    vim /var/log/mysqld.log

    2018-02-04 13:22:49 28507 [ERROR] InnoDB: Cannot allocate memory for the buffer pool
    2018-02-04 13:22:49 28507 [ERROR] Plugin 'InnoDB' init function returned error.
    2018-02-04 13:22:49 28507 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
    2018-02-04 13:22:49 28507 [ERROR] Unknown/unsupported storage engine: InnoDB
    2018-02-04 13:22:49 28507 [ERROR] Aborting

    https://stackoverflow.com/questions/25965638/mysql-fatal-error-cannot-allocate-memory-for-the-buffer-pool

    http://blog.csdn.net/xianglingchuan/article/details/72725346

    最终找到了解决方法:原址引用: http://blog.csdn.net/qq648472886/article/details/78936040

    于是继续,来看看内存占用情况:

    [plain] view plain copy
     
    1. <span style="font-size:18px;">[root@iZuzc9f4ma6h2iZ ~]# free -m  
    2.               total        used        free      shared  buff/cache   available  
    3. Mem:            992         435         413           1         142         403  
    4. Swap:             0           0           0</span>  

    显然,结果很磕馋。内存仅413M,而且没有 Swap 分区。

    那么问题来了,mysql 启动到底需要多少内存?

    官网是这什么回答的:

    How MySQL Uses Memory


    MySQL allocates buffers and caches to improve performance of database operations. The default configuration is designed to permit a MySQL server to start on a virtual machine that has approximately512MB of RAM. You can improve MySQL performance by increasing the values of certain cache and buffer-related system variables. You can also modify the default configuration to run MySQL on systems with limited memory.

    于是,那么有什么办法可以小内存启动 mysql 吗?

    答案是有,

    vim /etc/my.cnf

    添加:

    performance_schema_max_table_instances=200
    table_definition_cache=200
    table_open_cache=128

    ok,再次运行 service mysqld restart ,没什么问题。

  • 相关阅读:
    python之简单爬虫
    python之正则表达式
    python之面向对象
    python之模块与包
    python之循环嵌套与算法
    linux shell实现从函数返回数组
    linux脚本实现数组值相加
    linux中使用函数输出
    linux shelll中显示的意义
    lsof命令
  • 原文地址:https://www.cnblogs.com/xiaoruilin/p/8413730.html
Copyright © 2011-2022 走看看