上午开虚拟机登录数据库的时候,突然就报错:ORA-09817: Write to audit file failed

ORA-09817: Write to audit file failed 报错解决办法_第1张图片


写入失败?不会是磁盘满了吧?当然,no space left on device提示的很明显,df -h 查询一下,果然100%了:

ORA-09817: Write to audit file failed 报错解决办法_第2张图片


马上搜罗下oracle目录有什么能删的,发现有补丁文件,果断删除,腾出将近200M空间,应该能起来了:

ORA-09817: Write to audit file failed 报错解决办法_第3张图片


终于又见面了,回想一下,之前做实验的时候有开过归档,确认下:

ORA-09817: Write to audit file failed 报错解决办法_第4张图片


的确是开着的,归档文件就在/oracle目录,大小1G左右,先关归档再删除文件吧。

[oracle@db01 oracle]$ du -sh archive/
1019M   archive/


关闭归档步骤:

1、关闭数据库,启动到mount状态;

shutdown immediate;

startup mount;

2、关闭归档;

alter database noarchivelog;

3、启动到open状态;

alter database open;

4、查看归档状态;

archive log list; 


ORA-09817: Write to audit file failed 报错解决办法_第5张图片


删完之后,df -h看到剩余有1.5g,虽然不多,但基本满足目前的学习使用了,以后再重新做吧。

[oracle@db01 oracle]$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        12G  4.4G  6.9G  39% /
tmpfs           2.0G  300M  1.7G  16% /dev/shm
/dev/sdb1        20G   18G  1.5G  93% /oracle
/dev/sdc1        20G  172M   19G   1% /soft


最后,再把db_recovery_file_dest_size和db_recovery_file_dest两个参数重置一下:

alter system reset db_recovery_file_dest_size scope=spfile;
alter system reset db_recovery_file_dest scope=spfile;


重启数据库检查已经恢复默认:

ORA-09817: Write to audit file failed 报错解决办法_第6张图片