Oracle中大量无用小文件可能带来的问题及解决方法

罗海雄 2019-05-22
21
0 0
摘要:近期在升级迁移几个项目中碰到由于Oracle或者grid软件目录下存在大量小文件导致升级和迁移过程缓慢的情况。

近期在升级迁移几个项目中碰到由于Oracle或者grid软件目录下存在大量小文件导致升级和迁移过程缓慢的情况。

为了避免这种情况,请大家在进行升级迁移前,先进行文件个数的检查:

ls -aR /u01 2>/dev/null | awk '/\:$/{if(fileCount>999){print fileCount,dirName};dirName=substr($0,1,length($0)-1);fileCount=-2}{fileCount++}'

1265 /u01/app/oracle/Middleware/rcuHome/rdbms/admin
2456 /u01/app/oracle/Middleware/user_projects/domains/base_domain/ucm/cs/data/contenttracker/data
1076 /u01/app/oracle/Middleware/user_projects/domains/base_domain/ucm/cs/search/bulkload/~vault
84402 /u01/app/oracle/admin/DG/adump
1499 /u01/app/oracle/admin/DODB/adump


以上命令可以帮你找出/u01目录下超过1000个文件的子目录。

其中 /u01/app/oracle/admin/BXDG/adump 下有84402个文件,显然多得有点离谱。

在确认目录底下的文件是无用文件后,可以根据一定规则进行删除

[root@docs ~]# cd /u01/app/oracle/admin/DG/adump
[root@docs adump]# ls | more
DG_ora_10000_20160711162034305012143795.aud
DG_ora_10000_20160721142137539646143795.aud
DG_ora_10000_20160723030212169610143795.aud
DG_ora_10001_20160714042348098941143795.aud
DG_ora_10001_20160721020640791406143795.aud
DG_ora_10002_20160709054844176924143795.aud
DG_ora_10002_20160714163931494740143795.aud
DG_ora_10002_20160718124212430078143795.aud
DG_ora_10002_20160724033007335028143795.aud
DG_ora_10003_20160720134948829463143795.aud
DG_ora_10003_20160722144920712432143795.aud
DG_ora_10004_20160718014337507568143795.aud


比如说,这个目录下面,都是 *.aud文件,是以sysdba登录后产生的文件,一定时间以前的,其实已经没有参考价值,因此,可以以时间及扩展名为条件进行删除:

find /u01/app/oracle/admin/DG/adump -name "*.aud" -mtime +30 -exec rm {} \;

以上命令可以删除/u01/app/oracle/admin/DG/adump目录下,修改时间(mtime)超过30天(+30), 名字为"*.aud"的文件。


运行完毕后,文件量会大幅下降。

由于删除的时候文件过多会耗很多时间,因此建议这个检查和数据删除在进行升级/迁移的准备过程中事先完成,而不是等待正式升级/迁移时才做。


其实,除了升级迁移前,对于维保人员,平时也可以进行定期的检查和清理(确认文件无用的情况下

「喜欢文章,快来给作者赞赏墨值吧」

评论

0
0
Oracle
订阅
欢迎订阅Oracle频道,订阅之后可以获取最新资讯和更新通知。
墨值排行
今日本周综合
近期活动
全部
相关课程
全部