磁盘中如何清空swap分区,并且加大swap的分区

本文涉及的产品
RDS AI 助手,专业版
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
简介:

1 我的系统是Centos6.x 内存有32G,按理来说应该分配swap分区为8G但,但是由于历史原因,这个分配的swap分区为4G,但是这个机器上跑了mysql,占用了swap分区为1G多,导致swap消耗一般以上,zabbix监控一直在报警,所以要加大swap分区!前提是要把这个swap给下了,首先要将swap分区dump到内存中去!



步骤:

第一

sync 将系统缓冲区同步到磁盘中去

1
sync


第二:

1
echo  "3"  >   /proc/sys/vm/drop_caches

解释:是释放cache的操作!

As this is a non-destructive operation, and dirty objects are not freeable, the user should run "sync" first in order to make sure all cached objects are freed.


默认是0


第三:disable all swaps

1
swapoff -a


第四:用文件作为Swap分区


1.创建要作为swap分区的文件:增加1GB大小的交换分区,则命令写法如下,其中的count等于想要的块的数量(bs*count=文件大小)。

1
dd  if = /dev/zero  of= /root/swapfile  bs=1G count=8


2.格式化为交换分区文件:

1
mkswap  /root/swapfile

#建立swap的文件系统


3.启用交换分区文件:

1
swapon  /root/swapfile

#启用swap文件


4.使系统开机时自启用,在文件/etc/fstab中添加一行:(将以前的注释掉)

/root/swapfile swap swap defaults 0 0



第五:还原使用cache的模式

1
echo  "0"  >   /proc/sys/vm/drop_caches




真实环境中,发现mysql自动重启了,3306有down了一会,且进程有重新启动过,然后是自动的,怀疑是swap被全部dump到内存中,而内存不足导致! 或者mysql没使用到swap会down,因为mysql配置原因吧,我也没有深入研究它!




阅读:

To free pagecache:


echo 1 > /proc/sys/vm/drop_caches

To free dentries and inodes:


echo 2 > /proc/sys/vm/drop_caches

To free pagecache, dentries and inodes:


echo 3 > /proc/sys/vm/drop_caches

As this is a non-destructive operation, and dirty objects are not freeable, the user should run "sync" first in order to make sure all cached objects are freed.

本文转自残剑博客51CTO博客,原文链接http://blog.51cto.com/cuidehua/1773203如需转载请自行联系原作者


cuizhiliang

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
计算机毕业设计 图书管理系统 Vue+SpringBoot+MySQL(二)
计算机毕业设计 图书管理系统 Vue+SpringBoot+MySQL
410 2
|
Go API 开发工具
Go etcd 的依赖问题终于解决了。。。
Go etcd 的依赖问题终于解决了。。。
|
存储 关系型数据库 MySQL
(十九)MySQL之表分区篇:涨知识了!携手共探鲜为人知的表分区!
分库分表相信大家都听说过,但(partitioning)表分区这个概念却鲜为人知,MySQL在5.1版本中开始支持了表分区技术,同时在MySQL5.5中进行了优化,自从MySQL支持的绝大部分引擎都开启了表分区功能。
1429 2
|
负载均衡 Java 开发者
细解微服务架构实践:如何使用Spring Cloud进行Java微服务治理
【6月更文挑战第30天】Spring Cloud是Java微服务治理明星框架,整合Eureka(服务发现)、Ribbon(客户端负载均衡)、Hystrix(断路器)、Zuul(API网关)和Config Server(配置中心),提供完整服务治理解决方案。通过Eureka实现服务注册与发现,Ribbon进行负载均衡,Hystrix确保服务容错,Config Server集中管理配置,Zuul则作为API入口统一处理请求。理解和使用Spring Cloud是现代Java开发者的关键技能。
368 2
|
机器学习/深度学习 存储 数据采集
【博士每天一篇文献-综述】A survey on few-shot class-incremental learning
本文是一篇关于少量样本增量学习(Few-shot Class-Incremental Learning, FSCIL)的综述,提出了一种新的分类方法,将FSCIL分为五个子类别,并提供了广泛的文献回顾和性能评估,讨论了FSCIL的定义、挑战、相关学习问题以及在计算机视觉领域的应用。
1136 6
|
关系型数据库 Serverless 分布式数据库
评测|PolarDB MySQL 版 Serverless
评测|PolarDB MySQL 版 Serverless PolarDB Serverless构建了一个全新的数据库形态,这种情况下,CPU和内存资源因其池化其使用率将会大幅度提升,云原生数据的成本将会远低于自建和RDS等一体化数据库,云原生技术的价值将会得到充分的体现。Serverless数据库能够使得数据库集群资源随客户业务负载动态弹性扩缩,将客户从复杂的业务资源评估和运维工作中解放出来。下面我尝试从几个维度对PolarDB的Serverless能力进行产品测评。
1151 0
评测|PolarDB MySQL 版 Serverless
|
JavaScript
js element.scrollIntoView()
js element.scrollIntoView()
159 0
|
Windows
IIS应用程序池崩溃的解决方案
IIS是微软开发的Web服务器软件,被广泛用于Windows平台上的网站托管。在使用IIS过程中,可能会遇到应用程序池崩溃的问题,原因可能有很多,包括代码错误、资源不足、进程冲突等。本文将为大家介绍IIS应用程序池崩溃的问题分析和解决方案。如果您在IIS的Events日志下观察到以下任一事件,那么本文适合您。
520 0
|
网络协议 PHP 网络虚拟化
BGP MPLS VPN(OPTION C)实验笔记
BGP MPLS VPN(OPTION C)实验笔记
561 1
|
NoSQL Shell MongoDB
MongoDB Shell工具:mongosh的使用
MongoDB Shell工具:mongosh的使用
5124 0

热门文章

最新文章