oracle tfactl使用 TFA 安装TFA
12c以后我们开始使用TFA(跟踪文件分析器)工具来管理oracle日志,osw等小工具,方便快捷打包日志便于分析
简介
TFA是个11.2版本上启动的用于收集网格基础设施/ RAC环境下的诊断日志的工具,它可以使用非常简单的命令协助用户进行分类; TFA是类似diagcollection的一个Oracle部署TFA有以下几个特点:
1. TFA可以放在台机器上执行一条简单的命令把所有的日志进行打包,封装;
2. TFA可以在收集的过程中对日志进行”微调”操作,减少数据的收集量;
3. TFA可以收集用来诊断用的‘一段时间内’的数据;
4. TFA可以把所有节点的日志收集并封装好放在某一个节点上以便传输阅读;
5. TFA可以指定集群中的某一部分组件进行日志收集,如:ASM,RDBMS,集群
6. TFA可以根据条件配置对告警日志进行实时扫描( DB Alert Logs,ASM Alert Logs,Clusterware Alert Logs等);
7. TFA可以根据实时扫描的结果自动的收集诊断日志;
8. TFA可以根据指定的错误进行对错误日志的扫描;
9. TFA可以根据指定的错误扫描后的结果收集;
2. TFA的安装要求:
平台:
目前的TFA支持以下几个平台:
Intel Linux(企业Linux,RedHat Linux,SUSE Linux)
Linux Itanium
Oracle Solaris SPARC
Oracle Solaris x86-64
AIX(需要安装bash shell 3.2或更高版本)
HPUX Itanium
HPUX PA-RISC
3.支持的数据库版本:
TFA当前的设计是分离RDBMS和CRS进行设计的,所以设计的初衷是针对所有的版本而设计的,而不是RDBMS或CRS的版本限制;
下载TFA收藏者:
该版本的TFA和相关TFA用户指南可以通过点击下面的相关下载链接。
TFA收集器:
https ://mosemp.us.oracle.com/epmos/main/downloadattachmentprocessor?attachid = 1513912.2:TFA_NOJRE&clickstream = no
TFA用户手册:
https://mosemp.us.oracle.com/epmos/main/downloadattachmentprocessor?attachid=1513912.2:TFA_USER_GUIDE&clickstream=no
命令 | 描述 |
---|---|
|
在本地节点上启动 Oracle 跟踪文件分析器守护程序。 |
|
停止本地节点上的 Oracle 跟踪文件分析器守护程序。 |
|
在故障或系统重新启动后启用 Oracle 跟踪文件分析器守护程序的自动重新启动。 |
|
停止任何正在运行的 Oracle 跟踪文件分析器守护程序并禁用自动重新启动。 |
|
从本地节点中删除 Oracle 跟踪文件分析器。 |
|
生成 Oracle Trace File Analyzer 证书并将其从一个 Oracle Trace File Analyzer 节点复制到其他节点。 |
|
限制某些协议的使用。 |
|
检查 Oracle 跟踪文件分析器进程的状态。 输出与 相同 |
tfa目录不足使用root设置
tfactl set reposizeMB=20000
tfactl start oswbb 10 72 gzip
列出当前TFA的配置信息
tfactl print config
查看当前TFA观察节点状态
[root@ethanDB-rac1 ~]# tfactl print status [root@host1 tmp]# tfactl print hosts
查看当前哪些用户可以使用tfactl
[root@ethanDB-rac1 ~]# tfactl access lsusers
启动和关闭TFA
[root@ethanDB-rac1 ~]#tfactl start
[root@ethanDB-rac1 ~]# tfactl stop
--自启动关闭
#tfactl disable
给oracle使用TFA权限
[root@ethanDB-rac1 ~]# tfactl access add -user oracle
tfactl access promote -user oracle(给运行root用户的特权特权)
tfactl access promote -user grid
tfactl access lsusers(检查权限)tfactl access remove -user user_name(取消权限)
日志收集,不用DBA来回cd找目录去一个个拿日志,可以一次性全部取出来OS,DB,ASM,OSW日志
(最常用集中方式如下)
收集日志的语法如下,可以通过以下命令进行查询获取:
[root@host1 oswbb]# tfactl diagcollect -h
指定时间区域,对节点1上的ASM的日志进行收集
tfactl diagcollect -asm -node host1 -from "Feb/27/2016" -to "Feb/28/2016 01:00:00"
指定时间区域,对节点1上的DB的日志进行收集
tfactl diagcollect -database -node host1 -from "Feb/27/2016" -to "Feb/28/2016 01:00:00"
指定时间区域收集所有日志
tfactl diagcollect -from "2021-12-31 19:30:55" -to "2021-12-31 21:30:55"
收集2个小时之前的由TFA管理的所有的日志:
#tfactl diagcollect –all –since 2h
收集1天内由TFA管理的所有日志,并压缩存放在本地foo为后缀
[root@host1 oswbb]# tfactl diagcollect -since 1d -z foo
收集1个小时的所有节点上数据库相关的日志,并压缩放在本地,以test为后缀:
[root@host1 oswbb]# tfactl diagcollect -database orcl -since 1h -z test
收集1个小时的节点host1上的日志
[root@host1 oswbb]# tfactl diagcollect -node host1 -since 1h
收集所有节点上在"Feb/28/2016"发生的日志
[root@host1 oswbb]# tfactl diagcollect -for "Feb/28/2016"
管理自动诊断存储库日志和跟踪文件
使用该managelogs
命令来管理自动诊断存储库日志和跟踪文件。
该-purge
命令选项删除由自动诊断信息库管理的文件。此命令清除诊断目标下的“ ALERT
”、“ INCIDENT
”、“ TRACE
”、“ CDUMP
”、“ HM
”、“ UTSCDMP
”、“ LOG
”中的文件。该-purge
命令还提供有关文件系统空间更改的详细信息。
如果诊断目标包含大量文件,则该命令会运行一段时间。检查正在从相应目录中删除的文件。
要删除文件,您必须对相应的诊断目标具有操作系统权限。
要管理自动诊断存储库日志和跟踪文件:
tfactl managelogs -older nm|h|d Files from past 'n' [d]ays or 'n' [h]ours or 'n' [m]inutes
$ tfactl managelogs -purge -older 30d
–dryrun
选项:
$ tfactl managelogs -purge -older 30d -dryrun
$ tfactl managelogs -purge -older 30d
$ tfactl managelogs -purge -older 30d –gi
$ tfactl managelogs -purge -older 30d -database
$ tfactl managelogs -show usage
$ tfactl managelogs -show usage –gi
$ tfactl managelogs -show usage -database
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了