OS:HP-UX B.11.31 U ia64
Oracle:10.2.0.4
Oracle的home目录空间占用异常处理,情况如下:
/export/home/oracle 空间占用90%了
du出来的空间是8333060,bdf出来的是18725588
bdf结果如下:
/dev/vg00/lv_oracle
20971520 18726676 2147848 90% /export/home/oracle
du检查结果如下:
[/export/home/oracle]#du -sk
8334001 .
初步判断是由于有人直接删除了Oracle还在读写的后台日志导致。
碰下运气,检查一下.sh_history 看看是否有相关操作记录,果然发现有如下记录:
rm inas2_mmnl_8657.trc
rm inas2_diag_8612.trc
继续检查发现,进程都存在,日志已经不存在了。
试试Recreate删除的后台跟踪文件,重建Trace文件:
SYS@inas2 SQL> oradebug setospid 8612
Oracle pid: 5, Unix process pid: 8612, image: oracle@inasdb2 (DIAG)
SYS@inas2 SQL> oradebug close_trace
Statement processed.
SYS@inas2 SQL> oradebug flush
Statement processed.
SYS@inas2 SQL> exit
另外一个重建过程如上。
重建完毕之后,检查发现,空间已经释放:
bdf
/dev/vg00/lv_oracle
20971520 8485133 11748094 42% /export/home/oracle
非常幸运的处理过程,如果没有办法检查出来是哪些进程占用了空间,只能重启该数据库实例来释放空间了,Oracle日志清理需要检查清楚,不明确的情况下最好使用先备份,再清空文件的方式。
--转自