问题是这样的
oracle的安装目录/u01下,df -h已经100%了。
不小心把redo给删掉了,后又恢复过去,有备份。但是数据库已经无法启动。
undotbs01.dbf文件有5G大小。
现在connect /as sysdba的时候报错
ERROR:
ORA-09817: Write to audit file failed.
Linux Error: 28: No space left on device
ORA-09945: Unable to initialize the audit trail file
Linux Error: 28: No space left on device
请大家指点一下。谢谢啦。

解决方案 »

  1.   

    主要是没有空间了,你这里是sysdba登录时的audit trail写入时磁盘空间不够了。先清理一些日志文件,重做undo空间,不过这些都是治标的做法,最好治本的方法就是增大磁盘空间了,如果是lvm的话,可以增大oracle所在的分区的物理空间。
      

  2.   

    看错误应该是起用了oracle的审计功能,但是现在空间满了,没法记录审计日志。最好是再扩点空间,或者删除一些文件。要不试试手工修改oracle的初始化文件,停止审计,然后再启动数据库。
      

  3.   


    重做undo表空间的方法可以参考
    http://www.inthirties.com/?p=681这里也可以重建temporary tablespace,
    http://www.inthirties.com/?p=639或者如果可以停机的话,在停机的时候直接把临时表空间的文件删除掉
      

  4.   

    : No space left on device 错误信息很明确了
      

  5.   


    ORA-09817: Write to audit file failed. 
    Linux Error: 28: No space left on device1,关闭oracle的审计功能( audit )选项2,或者扩大审计所占据的空间。
      

  6.   


    群已经满了,你直接加我QQ  370140387吧注明你csdn里的姓名。
      

  7.   

    你把oracle目录下的adump目录清理下。