在Oracle 数据库系统中,出现no space left on device的几种可能性。

今天客户现场遇到了一个问题,简单给大家描述一下,11g rac ,linux 操作系统,节点1数据库运行正常,借点2 crsctl start crs启动报错。

首先,我们要查看日志,查看集群相关的日志,这里面关键是大家要会查看日志,Oracle各种日志。然后在日志中发现关键问题。no space left on device,看到这里首先想到的是不是磁盘哪个目录满了,使用df -h查看没有目录使用率超过80%,难道是数据库归档满了,查看一下也没问题。其实这里大家忽视了一个知识点就是inode,linux 中一个很重要的概念就是inode。
想到这里使用命令df -i 发现确实使用率100%。

df -h

[root@roidb1 ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda5        16G   11G  4.4G  71% /
tmpfs           2.0G     0  2.0G   0% /dev/shm
/dev/sda1       190M   33M  148M  19% /boot
/dev/sda2        20G  9.5G  9.2G  51% /u01

df -i

[root@roidb1 ~]# df -i
Filesystem      Inodes  IUsed   IFree IUse% Mounted on
/dev/sda5      1036320 114697  921623   12% /
tmpfs           506862      1  506861    1% /dev/shm
/dev/sda1        51200     39   51161    1% /boot
/dev/sda2      1310720  58397 1252323    5% /u01
[root@roidb1 ~]# 

小结:
no space left on device 可能的出现的问题。

1.系统目录慢,df -h ,清理日志及垃圾文件。
2.inode使用完,df -i 使用率到达100%,清理小文件。
3.ASM中的归档满,使用rman清理,如果有ADG要注意了,不要硬来哈。

如果还有其他可能性,大家可以给留言哈。