雨中笑 mysql 762热度
昨天发现网站打不开了,有了上次的经验,直接先重启mysql; systemctl start mysqld.service
启动失败
Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.
接着查看mysql日志; tail -100f /var/log/mysqld.log
发现有个错误警告
[ERROR] InnoDB: mmap(137428992 bytes) failed; errno 12
网上查了下资料说是 服务器没有配置Swap分区的原因,找到解决方案就尝试下
1、先查看内存 输入 free
发现Swap下都是0没有分配
2、创建一个Swap分区大小1GB的交换文件
dd if=/dev/zero of=/swapfile bs=1M count=1024
3、将刚创建的交换文件设置为交换分区
mkswap /swapfile
4、启用交换分区
swapon /swapfile
5、设置开机自动启用
/swapfile swap swap defaults 0 0
6、查看分区情况 输入 free
total表示总共有1G, free表示剩余的
7、重启mysql
systemctl start mysqld.service
more
free语句字段意思:
Mem 内存的使用情况。
Swap 交换空间的使用情况;
total 系统总的可用物理内存和交换空间大小;
used 已经被使用的物理内存和交换空间
free 还可用使用物理内存和交换空间的;
shared 被共享使用的物理内存大小。
buff/cache 被buffer 和 cache 使用的物理内存大小。
available 还可被应用程序使用的物理内存大小。
很赞哦!(3)
本文阅读量 2385‧发布于 2020年5月29日
您的访问IP 3.19.26.186‧最早于 2024年5月15日 3时09分18秒 阅读过本文 ‧ 为本文提供了 1 热度 1 阅读量