未分配swap区导致mysql出现的bug

首先看下mysql出现的bug信息

2020-04-04T05:36:34.509831Z 0 [ERROR] [MY-012681] [InnoDB] mmap(137363456 bytes) failed; errno 12
2020-04-04T05:36:34.509963Z 1 [ERROR] [MY-012956] [InnoDB] Cannot allocate memory for the buffer pool
2020-04-04T05:36:34.510098Z 1 [ERROR] [MY-012930] [InnoDB] Plugin initialization aborted with error Generic error.
2020-04-04T05:36:34.510181Z 1 [ERROR] [MY-010334] [Server] Failed to initialize DD Storage Engine
2020-04-04T05:36:34.510357Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initialization failed.
2020-04-04T05:36:34.510509Z 0 [ERROR] [MY-010119] [Server] Aborting

网上搜索了问题上面说swap分区可能出了问题

free -m 

一看的确swap分区显示的内存为0
因此修改swap分区的大小


任务:新增一个1GB的SWAP分区,并开机自动挂载

1、在/var目录下新增SWAPFILE交换区文件
dd if=/dev/zero of=/var/SWAPFILE bs=1k count=1024000
2、生成SWAP分区
mkswap /var/SWAPFILE
3、激活SWAP分区

swapon /var/SWAPFILE
4、开机自动挂载SWAP分区,编辑/etc/fstab,末行添加:
/var/SWAPFILE swap swap defaults 0 0
5、检查SWAP分区状态
swapon -s
在这里插入图片描述
停止SWAP分区

swapoff /var/SWAPFILE
删除SWAP文件
rm /var/SWAPFILE
删除/etc/fstab相应的行即可
然后连接mysql,就进去了
在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章