Oracle 的AHF (Automatic Health Framework) 工具

Oracle 的AHF (Automatic Health Framework) 工具

Oracle AHF (Automatic Health Framework) 是 Oracle 官方提供的诊断工具集合,用于自动收集、分析和诊断 Oracle 数据库及集群环境的健康状态和问题。

一 AHF 核心功能概述

1. 主要组件

  • TFA (Trace File Analyzer):日志收集和分析工具
  • ORAchk/EXAchk:健康检查工具(数据库/Exadata专用)
  • OSWatcher:操作系统性能监控工具
  • DBPDA:数据库性能诊断助手

2. 支持环境

  • Oracle Database (单实例/RAC)
  • Oracle Exadata
  • Oracle GI (Grid Infrastructure)
  • Oracle Cloud 环境

二 AHF 安装与配置

1. 安装准备

# 检查系统要求
uname -a
df -h /tmp
df -h /opt# 下载AHF(需MOS账号)
# 从My Oracle Support下载最新版本:
# Autonomous Health Framework (AHF) - Including TFA and ORAchk/EXAchk ( Doc ID 2550798.1 )

2. 安装过程

# 解压安装包
[root@test tmp]# unzip AHF-LINUX_v25.5.0.zip 
Archive:  AHF-LINUX_v25.5.0.zipinflating: ahf_setup               extracting: ahf_setup.dat           inflating: README.txt              inflating: oracle-tfa.pub  # 执行检查
[root@test tmp]# openssl dgst -sha256 -verify ./oracle-tfa.pub -signature ./ahf_setup.dat ./ahf_setup
Verified OK# 执行安装
[root@test tmp]# ./ahf_setupAHF Installer for Platform Linux Architecture x86_64AHF Installation Log : /tmp/ahf_install_255000_2696_2025_06_11-07_15_58.logStarting Autonomous Health Framework (AHF) InstallationAHF Version: 25.5.0 Build Date: 202505290129Default AHF Location : /opt/oracle.ahfDo you want to install AHF at [/opt/oracle.ahf] ? [Y]|N : yAHF Location : /opt/oracle.ahfAHF Data Directory stores diagnostic collections and metadata.
AHF Data Directory requires at least 5GB (Recommended 10GB) of free space.Please Enter AHF Data Directory : /oracle_ahfAHF Data Directory : /oracle_ahf/oracle.ahf/dataDo you want to add AHF Notification Email IDs ? [Y]|N : nExtracting AHF to /opt/oracle.ahfSetting up AHF CLI and SDKSetting up compliance autoruns from AHFConfiguring TFA ServicesDiscovering Nodes and Oracle ResourcesSuccessfully generated certificates.Starting TFA Services
Created symlink from /etc/systemd/system/multi-user.target.wants/oracle-tfa.service to /etc/systemd/system/oracle-tfa.service.
Created symlink from /etc/systemd/system/graphical.target.wants/oracle-tfa.service to /etc/systemd/system/oracle-tfa.service..--------------------------------------------------------------------------.
| Host | Status of TFA | PID  | Port  | Version    | Build ID              |
+------+---------------+------+-------+------------+-----------------------+
| test | RUNNING       | 5045 | 34489 | 25.5.0.0.0 | 250500020250529012923 |
'------+---------------+------+-------+------------+-----------------------'Running TFA Inventory....----------------------------------------------------------.
|               Summary of AHF Configuration               |
+-----------------+----------------------------------------+
| Parameter       | Value                                  |
+-----------------+----------------------------------------+
| AHF Location    | /opt/oracle.ahf                        |
| TFA Location    | /opt/oracle.ahf/tfa                    |
| Orachk Location | /opt/oracle.ahf/orachk                 |
| Data Directory  | /oracle_ahf/oracle.ahf/data            |
| Repository      | /oracle_ahf/oracle.ahf/data/repository |
| Diag Directory  | /oracle_ahf/oracle.ahf/data/test/diag  |
'-----------------+----------------------------------------'AHF binaries are available in /opt/oracle.ahf/binAHF is successfully InstalledDo you want AHF to store your My Oracle Support Credentials for Automatic Upload ? Y|[N] : nMoving /tmp/ahf_install_255000_2696_2025_06_11-07_15_58.log to /oracle_ahf/oracle.ahf/data/test/diag/ahf/# 验证安装
[root@test tmp]# ahf -v
AHF version: 25.5.0
Build Timestamp: 20250529012923
TFA version: 25.5.0
Compliance version: 25.5.0
Compliance metadata version: 20250529

三、核心工具使用详解

1. TFA (Trace File Analyzer)

基本操作
# 启动TFA服务
tfactl start# 停止服务
tfactl stop# 检查状态
tfactl status# 收集诊断数据(指定问题ID)
tfactl diagcollect -srdc "ORA-00600" -database DB1
日志收集
# 收集最近24小时日志
tfactl diagcollect -all -since 24h# 收集特定时间范围日志
tfactl diagcollect -all -from "Sep 01 08:00:00 2023" -to "Sep 01 18:00:00 2023"# 打包收集结果
tfactl diagcollect -zip -name DB_issue_20230901

2. ORAchk/EXAchk 健康检查

数据库检查
# 标准检查
orachk -profile database -all# 指定SID检查
orachk -db orcl -check "Database Parameters"# 生成HTML报告
orachk -db orcl -html
Exadata专用检查
# 完整Exadata检查
exachk -all# 检查特定组件
exachk -check "Cell Health"

3. OSWatcher 系统监控

启动监控
# 启动OSWatcher(默认30秒间隔,保留48小时数据)
$OSW_HOME/startOSW.sh 30 48# 停止监控
$OSW_HOME/stopOSW.sh
分析数据
# 生成CPU使用率报告
oswbba -i /opt/oracle.ahf/osw/archive -b "2023-09-01 08:00:00" -e "2023-09-01 18:00:00" -t cpu

四、输出分析与报告

1. 报告解读

# 查看最新检查报告
ls -lrt /opt/oracle.ahf/orachk/output# 典型报告内容:
# - 执行摘要(通过/失败检查项统计)
# - 详细发现(按严重性分类)
# - 修复建议
# - 参考文档链接

2. 关键指标关注

  • Critical/Warning 级别问题
  • 配置偏差(与Oracle最佳实践的差异)
  • 性能瓶颈(高负载指标)
  • 空间预警(存储/内存/表空间)

五、最佳实践

1. 维护建议

# 定期清理旧数据(保留30天)
tfactl purge -age 30# 更新AHF(每季度检查更新)
ahf_update -check
ahf_update -install

2. 安全配置

# 限制访问权限
chmod 750 /opt/oracle.ahf
chown -R oracle:oinstall /opt/oracle.ahf# 加密敏感数据收集
tfactl diagcollect -encrypt -password "MySecurePwd"

Oracle AHF 是DBA工具箱中的"瑞士军刀",通过合理使用可以显著提高问题诊断效率。建议:

  1. 生产环境全部安装AHF
  2. 建立定期健康检查机制
  3. 重大问题前自动收集诊断数据
  4. 保持工具版本更新

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/web/83425.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

华为服务器obsutil使用方法

本文不生产技术,只做技术的搬运工!!! 前言 最近在使用华为云服务器进行模型训练,发现其上传下载文件都极慢,询问华为官方人员是否限速,对方推荐使用obsutil作为中转服务进行下载,在…

【大模型训练】中短序列attention 和MOE层并行方式(二)

我们考虑一个典型的Transformer模型结构,在多层堆叠中,其中包含Attention层和MoE层(FeedForward层被替换为MoE层)。在模型最后是LM Head(语言模型头),通常是一个全连接层,将隐层向量…

2025-06-09(批量智能裁剪视频尺寸并延长视频时长)

import os import subprocess import random import json # 配置参数 TARGET_WIDTH 500 TARGET_HEIGHT 600 TARGET_DURATION 180 # 目标时长(秒) OUTPUT_DIR "processed_videos" MIRROR_MODES ["none", "horizontal&quo…

CKA考试知识点分享(9)---gateway api

CKA 版本:1.32 第九套题是涉及gateway api相关。 注意:本文不是题目,只是为了学习相关知识点做的实验。仅供参考 实验目的 创建一个gateway api,来实现后端镜像的外部访问。 gateway api 通过nginx实现 实验开始 安装nginx ga…

Kafka 消息模式实战:从简单队列到流处理(一)

一、Kafka 简介 ** Kafka 是一种分布式的、基于发布 / 订阅的消息系统,由 LinkedIn 公司开发,并于 2011 年开源,后来成为 Apache 基金会的顶级项目。它最初的设计目标是处理 LinkedIn 公司的海量数据,如用户活动跟踪、消息传递和…

Linux中使用yum安装MYSQL

1、关系型数据库 MySQL 使用 yum 安装mysql 1、检查是否已经安装 Mysql rpm -qa | grep mysql如果安装了 就进行卸载 rpm -e mysql-community-libs-5.7.44-1.el7.x86_64 rpm -e mysql57-community-release-el7-11.noarch rpm -e mysql-community-common-5.7.44-1.el7.x86_64…

Linux 文件系统与 I/O 编程核心原理及实践笔记

文章目录 一、理解文件1.1 狭义理解1.2 广义理解1.3 文件操作的归类认识1.4 系统角度:进程与文件的交互1.5 实践示例 二、回顾 C 文件接口2.1 hello.c 打开文件2.2 hello.c 写文件2.3 hello.c 读文件2.4 输出信息到显示器的几种方法2.5 stdin & stdout & st…

1.9 Express

Express 是一个基于 Node.js 平台的轻量级、灵活的 Web 应用框架,它为构建 Web 应用和 API 提供了一系列强大的功能。 核心特性 中间件支持:Express 使用中间件(middleware)函数来处理 HTTP 请求和响应。中间件可以访问请求对象&…

面壁智能MiniCPM4.0技术架构与应用场景

📋 目录 1. 引言:端侧智能新时代2. MiniCPM4.0概述3. 核心技术架构 3.1 高效双频换挡机制3.2 稀疏注意力机制3.3 系统级优化创新 4. 技术突破与性能表现5. 应用场景深度解析 5.1 智能手机应用5.2 智能家居场景5.3 汽车智能化5.4 其他端侧应用 6. 行业影…

RabbitMQ路由核心解密:从Exchange到RoutingKey的深度实践与避坑指南

🔍 RabbitMQ路由核心解密:从Exchange到RoutingKey的深度实践与避坑指南 “消息去哪了?”——这是每位RabbitMQ使用者在调试时最常发出的灵魂拷问。 理解Exchange与RoutingKey的协作机制,正是解开路由谜题的关键钥匙。 一、Exchang…

Spring MVC完全指南 - 从入门到精通

目录 1. Spring MVC简介 2. MVC架构模式 3. Spring MVC核心组件 4. 请求处理流程 5. 控制器详解 6. 请求映射 7. 参数绑定 8. 数据验证 9. 视图解析器 10. 模型数据处理 11. 异常处理 12. 拦截器 13. 文件上传下载 14. RESTful API 15. 配置详解 总结 1. Sprin…

实战使用docker compose 搭建 Redis 主从复制集群

文章目录 前言技术积累1、Redis 主从复制机制2、Docker Compose 编排3、 Redis 配置文件定制4、 验证主从状态5、 自动化部署与维护 环境准备实战演示创建redis目录及配置1、创建redis目录2、创建redis配置文件 启动redis集群服务1、创建docker-compose编排文件2、编排docker-c…

【学习笔记】RTSP-Ovnif-GB28181

【学习笔记】RTSP-Ovnif-GB28181 一、RTSP_RTP_RTCP RTSP(Real Time Streaming Protocol),RFC2326,实时流传输协议,是TCP/IP协议体系中的一个应用层协议。 RTP协议详细说明了在互联网上传递音频和视频的标准数据包格…

stm32-c8t6实现语音识别(LD3320)

目录 LD3320介绍: 功能引脚 主要特色功能 通信协议 端口信息 开发流程 stm32c8t6代码 LD3320驱动代码: LD3320介绍: 内置单声道mono 16-bit A/D 模数转换内置双声道stereo 16-bit D/A 数模转换内置 20mW 双声道耳机放大器输出内置 5…

RAG技术全解析:从概念到实践,构建高效语义检索系统——嵌入模型与向量数据库搭建指南

一、RAG技术概述:为什么需要RAG? 1.1 什么是RAG? RAG(Retrieval-Augmented Generation)是一种结合检索与生成能力的AI架构。其核心思想是通过外部知识库动态增强大语言模型(LLM)的生成能力&…

【资源分享】手机玩转经典游戏!小鸡模拟器1.9.0:PSP/NDS/GBA完美运行!

阿灿今天给大家推荐一款小鸡模拟器,这是一个老款PC和掌上游戏机模拟器。完美模拟街机(fbamamemameplus).PS、PSP、FC(NES)SFC(SNES)、GBA、GBC、MD、NDS、DC、NGP、WS (WSC) PCE、ONS 等18款经典掌机游戏机。小鸡模拟器同时也提供海量热门的汉化版游戏免…

matlab脉冲信号并绘制波形2025.6.11

以下是一个使用MATLAB生成5V、10MHz脉冲信号并绘制波形的示例代码: % 5V 10MHz脉冲信号仿真 clc; clear; close all; % 参数设置 voltage = 5; % 信号幅度(V) frequency = 10e6; % 脉冲频率(10MHz) duty_cycle =

ElasticJob初探

依赖版本 JDK版本是&#xff1a;jdk17 springboot版本 <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.2.4</version></parent>zookeeper elasticjo…

【Vue3】(三)vue3中的pinia状态管理、组件通信方式及总结、插槽

目录 一、vue3的pinia 1、什么是pinia&#xff1f; 2、为什么Vue3选择pinia&#xff1f; 3、使用pinia的好处 4、安装pinia 2、项目配置 3、存储/读取pinia中的数据 4、修改pinia中的数据 5、storeToRefs&#xff08;保持store中数据的响应式&#xff09; 6、getters 7、…

WEB3全栈开发——面试专业技能点P1Node.js / Web3.js / Ethers.js

一、Node.js 事件循环 Node.js 的事件循环&#xff08;Event Loop&#xff09;是其异步编程的核心机制&#xff0c;它使得 Node.js 可以在单线程中实现非阻塞 I/O 操作。 &#x1f501; 简要原理 Node.js 是基于 libuv 实现的&#xff0c;它使用事件循环来处理非阻塞操作。事件…