暂无图片
暂无图片
5
暂无图片
暂无图片
暂无图片

Oracle目录由于TFA触发bug导致jdb文件未自动清理引起空间不足

原创 刘宗宝 2021-01-21
1293

原文链接

数据库目录空间使用问题的坑,又踩一个,今天这个比较特殊,客户反馈在网上各种搜,都搜不到。。。Oracle数据库这么多年的技术积累,居然还有网上搜不到的技术,确实难得。

今天这个案例是客户的一个12c的集群环境,由于TFA的jdb文件无限积累造成大量空间被占用,导致数据库目录使用率比较高。

[root@orcl2 database]# du -sh *

25.1G   BERKELEY_JE_DB

[root@orcl2 database]# pwd

/u01/app/grid/tfa/orcl2/database/

[root@ orcl2 database]# cd ./BERKELEY_JE_DB/

[root@ orcl2 BERKELEY_JE_DB]#

[root@ orcl2 BERKELEY_JE_DB]# ll

… …

-rw-r--r-- 1 root root  9999986 1229 14:53 00001fbb.jdb

-rw-r--r-- 1 root root  9999987 14 11:26 00001fbd.jdb

-rw-r--r-- 1 root root  9999971 112 15:18 00001fc0.jdb

-rw-r--r-- 1 root root  9999995 113 10:59 00001fc1.jdb

-rw-r--r-- 1 root root  9999976 116 23:05 00001fc2.jdb

-rw-r--r-- 1 root root  9999983 118 00:31 00001fc3.jdb

-rw-r--r-- 1 root root   899218 118 10:42 00001fc4.jdb


可以看到tfa的BERKELEY_JE_DB目录占用了25G的磁盘空间,累积了大量的000开头.jdb结尾的文件。一般情况下,tfa对该目录下的jdb文件是自动维护的,不会引起持续的积累引起文件目录堆积占用过多的空间,既然出现了问题,直接处理就行了。Tfa只是Oracle日子采集分析的一个小工具,不影响数据库及集群的整体运行,直接通过tfactl停止tfa服务,然后删除文件,再起tfa服务即可(若是删了tfa起不来,大不了重新配置一下tfa)。思路有了,以下就是处理过程。

[grid@orcl2 ~]$ tfactl stop

Access Denied: Only TFA Admin can run this command

[grid@orcl2 ~]$

[grid@orcl2 ~]$ exit

logout

[root@orcl2 database]# cd /u01/app/12.1.0/grid/bin/

[root@orcl2 bin]# ./tfactl stop

Stopping TFA

TFA is running  - Will wait 5 seconds (up to 3 times) 

TFA is running  - Will wait 5 seconds (up to 3 times) 

TFA is running  - Will wait 5 seconds (up to 3 times) 

TFAmain Force Stopped Successfully

. . .

Successfully stopped TFA..

[root@orcl2 bin]#

[root@orcl2 bin]# cd /u01/app/grid/tfa/orcl2/database/BERKELEY_JE_DB

[root@orcl2 BERKELEY_JE_DB]# rm -f ./00000*.jdb

[root@orcl2 BERKELEY_JE_DB]# cd /u01/app/12.1.0/grid/bin/

[root@orcl2 bin]# ./tfactl start

Starting TFA..

start: Job is already running: oracle-tfa

Waiting up to 100 seconds for TFA to be started..

. . . . .

. . . . .

. . . . .

Successfully started TFA Process..

. . . . .

TFA Started and listening for commands

[root@orcl2 bin]#

[root@orcl2 bin]# cd /u01/app/grid/tfa/orcl2/database

[root@orcl2 database]# du -sh *

9.9M     BERKELEY_JE_DB

[root@orcl2 database]#


可以看到,结果很理想,不仅空间清理了,tfa服务也起来了,皆大欢喜。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论