MySQL Error--存储inode用完后报设备没有空间
问题描述:
磁盘有足够剩余空间,但在创建文件或文件夹时报错,提示“设备没有空间”。
问题原因:
当存储设备通过分区格式化为文件系统后,会分为两部分:
1、block部分: 存储的最小单位为扇区(Sector),8个连续的扇区为block,为提高效率,操作系统通常按照block来进行数据访问。
2、inode部分: 存储block的元数据信息,如文件创建者/创建时间/文件大小/文件block位置等。
每个分区的inode数量有限,当block有剩余,但inode用完时,系统也会提示磁盘空间不足。
问题排查:
查看各分区的inode使用情况
## 查看根目录下的inode使用:
df -lhi 正常的输出信息:
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/sda1 1.3M 421K 831K % /
tmpfs 7.9M 7.9M % /dev/shm
/dev/sda3 222M 40K 222M % /export 如果IUse%为100%,则表示该分区所有inode用完。
查看根目录下各目录的inode使用情况:
for i in /*;
do
node_count=`find $i | wc -l`
echo "$i : $node_count "
done
输出结果:
/bin :
/boot :
/dev :
/etc :
/export :
/home :
/lib :
/lib64 :
/lost+found :
/media :
/mnt :
/opt :
/proc :
/root :
/sbin :
/selinux :
/srv :
/sys :
/tmp :
/usr :
/var :
可以发现/var目录下使用较多,查看/var目录的使用:
for i in /var/*;
do
node_count=`find $i | wc -l`
echo "$i : $node_count "
done
最后定位到/var/spool/clientmqueue下面使用较多。
问题扩展
由于早期在配置cron进行定时作业时,未在文件头部配置MAILTO="",导致在/var/spool/clientmqueue下面创建大量小文件,导致inode被用完。
如果直接使用rm命令删除特定目录下大量小文件,会存在性能问题,推荐使用下面方式:
ls /var/spool/clientmqueue | xargs /bin/rm -rf
MySQL Error--存储inode用完后报设备没有空间的更多相关文章
- Web自动化框架之五一套完整demo的点点滴滴(excel功能案例参数化+业务功能分层设计+mysql数据存储封装+截图+日志+测试报告+对接缺陷管理系统+自动编译部署环境+自动验证false、error案例)
标题很大,想说的很多,不知道从那开始~~直接步入正题吧 个人也是由于公司的人员的现状和项目的特殊情况,今年年中后开始折腾web自动化这块:整这个原因很简单,就是想能让自己偷点懒.也让减轻一点同事的苦力 ...
- 数据库迁移后报错提示MySQL Error:Can''t find file errno: 13 - Permission denied的解决方法
用户MYSQL数据库迁移后,遇到报错MySQL Error:Can't find file (errno: 13 - Permission denied)使用以下指令重新设置所有者和权限,依然不能解决 ...
- MySQL InnoDB存储引擎大观
转的一篇文章作者:七把刀链接:https://www.jianshu.com/p/d4cc0ea9d097 MySQL InnoDB 引擎现在广为使用,它提供了事务,行锁,日志等一系列特性,本文分析下 ...
- mysql innodb存储引擎介绍
innodb存储引擎1.存储:数据目录.有配置参数为“ innodb_data_home_dir ” .“ innodb_data_file_path ” 和 “innodb_log_group_ho ...
- MySQL的存储引擎与日志说明
1.1 存储引擎的介绍 1.1.1 文件系统存储 文件系统:操作系统组织和存取数据的一种机制.文件系统是一种软件. 类型:ext2 3 4 ,xfs 数据. 不管使用什么文件系统,数据内容不会变化, ...
- MySQL之四 存储引擎
1.介绍 存储引擎MySQL中的"文件系统" MySQL体系结构 InnoDB存储引擎介绍 My1SAM 和InnoDB区别 mysql MariaDB [(none)]> ...
- MySQL Error Handling in Stored Procedures
http://www.mysqltutorial.org/mysql-error-handling-in-stored-procedures/ mysql存储过程中的异常处理 定义异常捕获类型及处 ...
- MYSQL ERROR CODE 错误编号的意义
mysql error code(备忘) 转1005:创建表失败 1006:创建数据库失败 1007:数据库已存在,创建数据库失败 1008:数据库不存在,删除数据库失败 1009:不能删除数据库文件 ...
- MySQL ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO
MySQL安装完server端和客户端后,登录Mysql时报错:[root@rhel204 MySQL 5.6.23-RMP]# mysqlERROR 2002 (HY000): Can't conn ...
随机推荐
- docker 安装redis cluster集群
安装Redis镜像 docker pull yyyyttttwwww/redis 创建redis容器 docker run -it -d --name r1 -p 5001:6379 --net=ne ...
- Cache管理机制(System.Web.Caching)
一,System .Web.Caching与缓存工作机制简介 System.Web.Caching是用来管理缓存的命名空间,其父级空间是System.Web,由此可见,缓存通常用于Web网站的开发,包 ...
- (mac)Idea安装配置maven
一.mac安装配置maven 1)官网下载(http://maven.apache.org/download.cgi) binary .tar.gz 下载解压到某处 2)配置环境变量 $ open ...
- c++ stl bind函数介绍
/* stl::bind 使用 */ #include <iostream> #include <string> #include <functional> /* ...
- C# EF6框架连接postgresql数据库
https://blog.csdn.net/jwdym01/article/details/102845602
- python爬虫2
学习任务 获取去哪儿网的出发地列表 获取旅游景点列表 获取景点产品列表 存储数据 1 获取出发地站点 (1)访问touch.qunar.com (2)按F12,单击自由行,在自由行页面点击搜索框 (3 ...
- Mongodb CPU占用率达90%的优化调整报告
1问题描述 1.1现场的数据库部署情况 服务器基本情况如下: CPU 20逻辑核,40线程 内存 64 G 硬盘 D盘 :1T SSD E盘:3T SATA F盘:3T SATA 在这台机器上同时部署 ...
- Linux学习-IP设置
网卡命名规则 CENTOS6的网卡命名方式:它会根据情况有所改变而非唯一且固定,在CENTOS6之前,网络接口使用连续号码命名: eth0. eth1等,当增加或删除网卡时,名称可能会发生变化 CEN ...
- C++Primer 5th Chap4 Expressions
左值和右值:左值:用的是对象的身份(内存中的位置),右值:用的是对象的值(内容) 解引用与递增(递减)运算符连用: *ivec++:取ivec当前值并向后移动一个元素,等价于*(ivec++),本来+ ...
- 常用Tables控件介绍(一)
1.DataTables Datatables是一款jquery表格插件.它是一个高度灵活的工具,可以将任何HTML表格添加高级的交互功能. 分页,即时搜索和排序 几乎支持任何数据源:DOM, jav ...