Ubuntu 20.04设置虚拟内存 (交换内存swap)解决内存不足 | 您所在的位置:网站首页 › 虚拟内存设置错了怎么办恢复 › Ubuntu 20.04设置虚拟内存 (交换内存swap)解决内存不足 |
数据库服务器程序在运行起来之后,系统内存不足。 在系统监控中发现,当数据库服务程序启动后,占用了大量内存空间,导致系统的剩余的内存往往只有几十MB。 在ubuntu系统中,swap空间就是虚拟内存,所以考虑在磁盘空间富余的目录下设置虚拟内存swap文件,用来缓解内存不足的问题。 free -m 命令查看内存情况和swap分区大小 total used free shared buff/cache available Mem: 3846 254 3296 4 295 3557 Swap: 0 0 0 可以看到swap空间目前为0。 df -h 查看磁盘空间大小 云服务器一般默认禁止虚拟内存,我们可以通过 shell 快速开启虚拟内存。 bs=1M count=4096 表示创建一个4G(1M*4096)大小的块文件。 建立swap分区大小的标准一般为物理内存的两倍,如果内存是4G,语句修改为: count=8192 swappiness=0 表示最大限度使用物理内存,然后才是swap空间。 swappiness=100 表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。 # 创建虚拟内存文件 cd / # 在根目录下创建 dd if=/dev/zero of=/mnt/swap bs=1M count=8192 chmod 0600 /mnt/swap mkswap /mnt/swap swapon /mnt/swap # 写入自动挂载参数 if ! grep -q swap /etc/fstab; then echo "/mnt/swap swap swap defaults 0 0" >> /etc/fstab fi # 设置虚拟内存使用率 if ! grep -q swappiness /etc/sysctl.conf; then echo "vm.swappiness = 10" >> /etc/sysctl.conf else sed -i 's/vm.swappiness = 0/vm.swappiness = 10/' /etc/sysctl.conf fi # 使配置生效 sysctl -p以上命令逐行执行。 # 执行命令检验是否操作成功free -m 如果需要释放的话 # 执行命令后,删除创建的swap目录即可sudo swapoff swapfile 我的操作过程截图 供参考返回信息:
|
CopyRight 2018-2019 实验室设备网 版权所有 |