检查告警日志,确认drop tablespace执行完成
比较 df 和 du 结果,确认的确有未释放情况
去目录下检查文件的确不存在了
通常是由于有文件句柄没释放,一般是有会话占用着,os不释放,哪些会话呢?
lsof -n|grep deleted,例如:
[oracle@apex ~]$ lsof -n|grep deleted
oracle_10 10554 oracle 262u REG 8,3 10493952 104811433 /u01/app/oracle/oradata/ORCL/tst1.dbf (deleted)
针对显示的进程,执行 kill -9 10554
或者重启实例
看看还有哪些进程占用着
lsof |grep deleted |grep oradata|awk '{print $9}'|sort|uniq
参考:
删除表空间后文件句柄未释放(文档 ID 469731.1)
后继,没有 lsof 怎么办?
find /proc/*/fd |xargs ls -l>/tmp/fd.txt
grep deleted /tmp/fd.txt|grep oracle|grep proc
例子:
lrwx------ 1 oracle oinstall 64 Aug 28 11:45 /proc/10554/fd/263 -> /u01/app/oracle/oradata/ORCL/tst1.dbf (deleted)
阅读(1953) | 评论(0) | 转发(0) |