• 今天阿里云1C0.5G装zabbix又装mysql发现内存不够了,增加swap虚拟内存


    查看mysql的日志

    cat /var/log/mysqld.log

    发现有错误

    mmap(137428992 bytes) failed; errno 12

    系统日志里有,进程被杀掉了。

     随增加虚拟内存:一般是内存的两倍  

    原文:

    https://www.cnblogs.com/zdz8207/p/linux-centos-swap.html

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

    free -m查看swap已经增加了,但这只是临时性的,如果机器重启会失效
    vi /etc/fstab
    最后一行添加
    /swapfile swap swap defaults 0 0

    linux centos 如何设置swap大小?

    swap的值都是安装系统的时候设置好的,一般设置为内存的两倍大小。使用过程中发现swap值过小只能添加。
    用free -m 命令查看当前swap大小

    使用下面的命令创建2G的空间
    dd if=/dev/zero of=/var/swap bs=1024 count=2048000
    if 表示infile,of表示outfile,bs=1024代表增加的模块大小,count=2048000代表2048000个模块,也就是2G空间
    将目的文件设置为swap分区文件
    mkswap /var/swap
    激活swap,立即启用交换分区文件
    mkswap -f /var/swap
    free -m查看swap已经增加了,但这只是临时性的,如果机器重启会失效
    vi /etc/fstab
    最后一行添加
    /var/swap swap swap defaults 0 0
    重启或free -m测试 swap添加成功

    下面是实战命令:
    [root@JD ~]# free -m
    total used free shared buff/cache available
    Mem: 3789 130 3401 8 258 3432
    Swap: 0 0 0
    [root@JD ~]# dd if=/dev/zero of=/var/swap bs=1024 count=2048000
    2048000+0 records in
    2048000+0 records out
    2097152000 bytes (2.1 GB) copied, 19.4374 s, 108 MB/s
    [root@JD ~]# mkswap /var/swap
    Setting up swapspace version 1, size = 2047996 KiB
    no label, UUID=a23c9dd9-87af-4517-8d70-bff7c714c18f
    [root@JD ~]# swapon /var/swap
    swapon: /var/swap: insecure permissions 0644, 0600 suggested.
    [root@JD ~]# cat /proc/swaps
    Filename Type Size Used Priority
    /var/swap file 2047996 0 -2
    [root@JD ~]# vim /etc/fstab
    -bash: vim: command not found
    让上面命令在重启后仍然生效需要以下操作:
    [root@JD ~]# vi /etc/fstab
    最后一行添加
    /var/swap swap swap defaults 0 0
    再查看内存,已经设置了swap了,执行上面命令导致buff/cache里面多了不少内存,过段时间会减少,或者直接重启可以清掉
    [root@JD ~]# free -m
    total used free shared buff/cache available
    Mem: 3789 154 1286 8 2348 3379
    Swap: 1999 0 1999
    reboot重启后再查看结果如下:
    [root@JD ~]# free -m
    total used free shared buff/cache available
    Mem: 3789 146 3411 8 232 3414
    Swap: 1999 0 1999

    如果不再需要swap,可以清理该分区:
    [root@mysql01 var]# swapoff /var/swap

    ==============

    下面是实战命令:
    [root@host ~]# free -m
    total used free shared buff/cache available
    Mem: 1006 381 190 42 434 427
    Swap: 259 94 165
    [root@host ~]# dd if=/dev/zero of=/var/swap bs=1024 count=2048000
    2048000+0 records in
    2048000+0 records out
    2097152000 bytes (2.1 GB) copied, 8.71197 s, 241 MB/s
    [root@host ~]# mkswap /var/swap
    Setting up swapspace version 1, size = 2047996 KiB
    no label, UUID=941931fe-683b-4082-a6db-82bb741f77e5
    [root@host ~]# mkswap -f /var/swap
    mkswap: /var/swap: warning: wiping old swap signature.
    Setting up swapspace version 1, size = 2047996 KiB
    no label, UUID=17a9a21e-67d2-4343-b95d-d8958814c334
    [root@host ~]# swapon /var/swap
    swapon: /var/swap: insecure permissions 0644, 0600 suggested.
    [root@host ~]# free -m
    total used free shared buff/cache available
    Mem: 1006 388 65 42 552 417
    Swap: 2259 94 2165
    [root@host ~]# cat /proc/swaps
    Filename Type Size Used Priority
    /swap file 266236 96512 -2
    /var/swap file 2047996 0 -3
    [root@host ~]# vi /etc/fstab
    最后一行添加
    /var/swap swap swap defaults 0 0


    如果不再需要swap,可以清理该分区:
    [root@mysql01 var]# swapoff /var/swap

  • 相关阅读:
    原代码,反码,解释和具体的补充 Java在>>和>>>差异
    开源 自由 java CMS
    Socket方法LAN多线程文件传输
    《》猿从程序书评项目经理-猿自办节目
    今年,我开始在路上
    mysql 拒绝访问的解决办法
    Mysql连接错误:Mysql Host is blocked because of many connection errors
    基于jquery的从一个页面跳转到另一个页面的指定位置的实现代码
    【转】URL编码(encodeURIComponent和decodeURIComponent)
    oracle sql日期比较
  • 原文地址:https://www.cnblogs.com/itfat/p/12966604.html
Copyright © 2020-2023  润新知