在 Site24x7 中添加 Oracle 数据库监视器
通过监控 Oracle 数据库实例和数据库的关键性能指标——包括可插拔数据库(PDB)、响应时间、命中率、系统全局区域(SGA)、程序全局区域(PGA)、表空间、会话、重做日志文件和自动存储管理(ASM)磁盘组——追踪其可用性和性能,并在出现阈值突破时立即收到告警。
前提条件
支持的版本:
- Oracle 版本:12c 及以上
- Linux Site24x7 服务器监控代理版本 19.8.0
添加 Oracle 数据库监视器
安装 Instant Client
- 导航至 Oracle Instant Client 下载页面:
https://www.oracle.com/database/technologies/instant-client/downloads.html - 下载所需的 Oracle Instant Client 压缩文件。请确保选择正确的平台、架构和软件包。例如,如果您的应用程序是 64 位的,请选择 64 位 Instant Client 并下载 Basic Package 压缩文件。
所有安装均需要 Basic 或 Basic Light 软件包,其他软件包为可选项。更多信息,请参阅 Instant Client 安装指南。 - 确保解压后的目录可供服务器上的 Site24x7 Linux 代理访问。请注意,此 Instant Client 路径将在 Site24x7 Oracle 监控中使用。
- 示例:
mkdir -p /opt/oracle/ && cd /opt/oracle/
unzip /opt/oracle/instantclient-basiclite-linux.x64-21.13.0.0.0dbru.zip
- 示例:
创建用户
- 您需要在 Oracle 数据库中为 Site24x7 服务器监控代理创建一个用户。按照以下说明,您可以创建用户并授予 Oracle 数据库用户权限。
CREATE USER C##<username> IDENTIFIED BY "<password>" CONTAINER=ALL;
示例:
CREATE USER C##site24x7 IDENTIFIED BY "Monitoring@123" CONTAINER=ALL;
授予访问权限
- Site24x7 代理需要一些权限才能收集指标。您需要通过使用 SYS 用户连接到 CDB 容器(CDB$ROOT),为 Oracle 用户提供以下有限权限:
GRANT CREATE SESSION TO <username> CONTAINER=ALL; GRANT CONNECT TO <username> CONTAINER=ALL; GRANT SELECT_CATALOG_ROLE TO <username> CONTAINER=ALL; ALTER USER <username> SET container_data=all container=current;
如果存在多个 Oracle 数据库实例,请对每个实例重复上述步骤。
安装并配置代理
提供所需权限后,您可以按照以下步骤添加 Oracle 数据库监视器。
- 登录 Site24x7,并在您的 Linux 服务器上安装 Site24x7 Linux 服务器监控代理。
- Site24x7 服务器监控代理会自动发现服务器中的 Oracle 数据库实例,并在首页选项卡上添加 Oracle 监视器的示例视图。要开始监控,请按照以下说明授权 Site24x7 收集指标。

输入从上述步骤获取的 Instant Client 路径。此步骤仅需执行一次,无需对每个实例重复操作。此 Instant Client 路径将被 Site24x7 代理用于所有 Oracle 实例。
如果 Instant Client 路径发生变化,请使用以下命令更新:
/opt/site24x7/monagent/scripts/AgentManager.sh oracledb --update_library_path

- 在终端中执行以下命令,输入步骤 1 中创建的 Oracle 数据库实例的用户名和密码,以及主机名、端口和服务名,以便 Site24x7 代理进行身份验证并配置 Oracle 监控:
/opt/site24x7/monagent/scripts/AgentManager.sh oracledb --add_instance
注意此步骤需要对服务器上要监控的每个 Oracle 实例重复执行。

- 登录 Site24x7 后,在导航窗格中点击数据库 > Oracle。
- 您将被引导至监视器页面,查看已添加监控的 Oracle 数据库实例列表。
- 在 Oracle 数据库实例下,点击 PDB 以查看所选实例中的数据库列表。
注意- 您提供的用户名和密码将在代理中安全加密,不会存储在任何 Site24x7 数据库中。
- 如果您不希望 Oracle 被自动发现并添加到监控,请在设置页面(管理 > 服务器监视器 > 设置)中将自动发现服务器上的应用程序切换为否。
- 默认情况下,每个 Oracle 数据库实例中将自动发现并添加 10 个可插拔数据库和 10 个表空间。
性能指标
监控您的 Oracle 数据库实例的关键性能指标至关重要。通过密切追踪这些参数,您可以主动识别潜在瓶颈,排查问题,并优化 Oracle 环境的整体效率。
独立可插拔数据库(PDB)监控
Site24x7 还提供独立 PDB 监控功能。追踪可插拔数据库的关键性能指标,设置阈值,并接收告警。
阈值配置
将 Oracle 监视器添加到 Site24x7 账户后,您可以添加阈值和可用性配置文件,以设置阈值、在阈值被突破时接收告警,并采取纠正措施。
要设置阈值和可用性配置文件:
- 选择 Oracle 监视器,点击汉堡菜单
图标 > 编辑。
- 在编辑 Oracle 页面上,您将在配置文件下找到阈值和可用性选项卡。点击加号 + 图标添加新的阈值配置文件,或点击铅笔
图标编辑阈值配置文件。
- 点击保存。
当特定阈值被突破时,您将收到告警,相应资源将被声明为告警或严重状态。
仪表板
成功添加 Oracle 实例监视器后,您可以登录 Site24x7 账户并导航至数据库 > Oracle 数据库 > 健康仪表板来查看您的实例和数据库。您可以分析 Oracle 实例环境和单个 PDB 的性能,并检测性能中断。在此您可以:
- 在一个视图中查看所有 Oracle 实例和 PDB 的总数。
- 以独立 NOC 仪表板的形式查看所有 Oracle 服务器的当前状态。点击 NOC 框可转到该特定资源的摘要页面。
- 通过查看服务器的宕机、严重或告警状态来更快速地识别问题。
- 分析 CPU 和内存占用最高的实例,快速排查性能问题,避免未来的性能下降。

安全
Site24x7 服务器监控代理不会在 Site24x7 应用服务器中存储您的数据。出于安全原因,用户名和密码在代理中进行加密。
如有更多疑问,请查看关于 Oracle 数据库监控安全方面的常见问题解答。
常见问题
- Oracle 监控是否必须下载 Instant Client?
不是必须的。默认情况下,我们使用 Thin Client 连接到您的 Oracle 数据库进行监控。我们也可以使用 Thick Client 建立 Oracle 数据库连接,这需要下载并解压 Oracle Instant Client。您还需要使用以下命令将解压后的 Instant Client 文件夹路径提供给我们的代理:
/opt/site24x7/monagent/scripts/AgentManager.sh oracledb --update_library_path
- 同一台机器上的每个 Oracle 数据库实例都需要更新 Instant Client 路径吗?
不需要,您无需提供多个 Instant Client 路径。Instant Client 是 Oracle 提供的一组 .so 文件(库文件),是连接到 Oracle 数据库的唯一方式。因此,提供一个 Instant Client 路径即可。 - 我误填了错误的库路径,如何更新?
您可以使用以下命令更新 Instant Client:
示例:/opt/site24x7/monagent/scripts/AgentManager.sh oracledb --update_library_path

- Site24x7 需要数据库的写入权限吗?
不需要。 - Site24x7 为 Oracle 数据库监控收集哪些性能数据?
Site24x7 收集 Oracle 性能指标文档中列出的性能指标数据,用于监控 Oracle 数据库。 - Site24x7 如何收集 Oracle 监控的性能指标?
性能指标通过 SQL 查询收集,使用用户提供的具有只读访问权限的用户凭据连接到 Oracle 数据库。 - Site24x7 如何连接 Oracle 数据库?
Site24x7 使用在终端控制台中提供的用户凭据连接到 Oracle 数据库并收集数据。 - Site24x7 会保持 Oracle 连接一直开启吗?
不会。Site24x7 会建立到 Oracle 数据库的连接以收集性能指标。数据收集完成后,连接将关闭。 - Site24x7 是否直接存储 Oracle 用户密码?
不会。Site24x7 会对提供的密码进行加密。出于安全原因,用户名和密码在代理中进行加密,不会在 Site24x7 应用服务器中保存或存储。
许可
每个 Oracle 数据库实例消耗一个高级监视器许可证,并包含对 25 个 PDB 的监控。每增加一个 PDB,将消耗一个基础监视器许可证。目前,每个 Oracle 实例和每个 PDB 最多可以包含对 10 个表空间的监控。更多信息,请联系 support@site24x7.com。
相关链接
- 数据库监控:Oracle PDB | PostgreSQL | MySQL | Microsoft SQL | MySQL NDB 集群
- 服务器监控:Linux
