使用sqlplus 连接报错
ORA-09925: Unable to create audit trail file Linux-x86_64 Error: 28: No space left on device Additional information: 9925 ORA-01075: you are currently logged on
发生以上报错可能如下
① 磁盘空间已满,导致无法创建审核文件,使用df -h查询磁盘空间;
② 磁盘inodes已经占用完了,导致无法打开新的文件,使用df -i查看inode使用情况;
③ 路径权限不足或adump目录不存在,无法创建审核文件,查看路径权限情况ls -l。
以上三种报错的差异主要在Linux 部分的报错信息上:
磁盘空间不足或inodes用完时为:Linux-x86_64 Error:28:No space left on device
权限不足为:Linux-x86_64 Error:30:Read-only file system 或者 Linux Error:13: Permission denied
df -h 查看空间并没满
于是df -i 查看,发现/u01目录inodes已100%
解决方法,删除adump下的文件
find /u01/app/ORACLE/admin/system/adump -mtime +20 -name "*.aud" | xargs rm -f;
再次查看:
重新sqlplus,已恢复正常。
inode译成中文就是索引节点,每个存储设备(例如硬盘)或存储设备的分区被格式化为文件系统后,应该有两部份:
1.inode,用来存储这些数据的信息,这些信息包括文件大小、属主、归属的用户组、读写权限等。
2.Block,用来存储数据。inode为每个文件进行信息索引,所以就有了inode的数值。操作系统根据指令,能通过inode值最快的找到相对应的文件。
而这台服务器的Block虽然还有剩余,但inode已经用满,因此在创建新目录或文件时,系统提示磁盘空间不足。