Mysql报错:Cannot allocate memory for the buffer pool

4 篇文章 0 订阅

环境

Linux version 4.18.0-147.5.2.1.h579.eulerosv2r10.x86_64 (abuild@szxrtosci10000) (gcc version 7.3.0 (GCC)) #1 SMP Sat Jul 31 09:58:46 UTC 2021

mysqld 8.0.28

问题

mysql运行一段时间后,报错

2022-03-14T10:55:39.841075Z 0 [Warning] [MY-012681] [InnoDB] page_aligned_alloc mmap(137170944 bytes) failed; errno 12
2022-03-14T10:55:39.841217Z 1 [ERROR] [MY-012956] [InnoDB] Cannot allocate memory for the buffer pool
2022-03-14T10:55:39.841288Z 1 [ERROR] [MY-012930] [InnoDB] Plugin initialization aborted with error Generic error.
2022-03-14T10:55:39.841386Z 1 [ERROR] [MY-010334] [Server] Failed to initialize DD Storage Engine
2022-03-14T10:55:39.841636Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initialization failed.
2022-03-14T10:55:39.841797Z 0 [ERROR] [MY-010119] [Server] Aborting
2022-03-14T10:55:39.844824Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.28)  MySQL Community Server - GPL.

解决方案

调整innodb_buffer_pool_size参数
编辑 my.cnf文件

vim /etc/my.cnf

在 [mysqld] 下增加

innodb_buffer_pool_size = 64M

重启

systemctl restart mysqld

查看
连接到数据,使用查询语句

SELECT @@innodb_buffer_pool_size/1024/1024;

在这里插入图片描述

其他系统解决方案

增加swap交换空间

dd if=/dev/zero of=/swapfile bs=1M count=1024
mkswap /swapfile
swapon /swapfile

增加自动挂载:
在文件/etc/fstab中加入 /swapfile swap swap defaults 0 0

查看

free -h

重启数据库

systemctl restart mysqld
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值