华为云云数据库rds使用pg_profile_pro插件_云淘科技

操作场景

pg_profile_pro是一款用于监测RDS for PostgreSQL实例性能及运行状况的插件,针对SQL语句、表、索引、函数、事务、vacuum等,pg_profile_pro提供了监测数据报表,能够尽可能发现数据库存在的或潜在的性能问题。

该插件基于PostgreSQL的pg_stat_statements视图,会在用户的实例中创建历史统计,并生成统计样本,定期的统计样本用于生成监测报告,帮助识别最耗费资源的活动等。

因发现插件存在缺陷,现暂时关闭支持,我们会在缺陷修复后重新开放,给您造成不便敬请谅解。

约束条件

仅RDS for PostgreSQL 12支持。

操作步骤

root用户连接postgres数据库,获取样本列表。

# psql –host= –port=<DB_PORT>–dbname=postgres –username=root -c “select * from profile.show_samples();”

表1 参数说明

参数

说明

RDS_ADDRESS

RDS实例的IP地址。

DB_PORT

RDS数据库实例的端口。

根据提示输入root用户密码。

Password for user root:

回显结果示例如下:

 sample |      sample_time       | dbstats_reset | clustats_reset | archstats_reset
--------+------------------------+---------------+----------------+-----------------
      1 | 2021-04-02 17:15:49+08 |               |                |
      2 | 2021-04-02 17:25:57+08 |               |                |
      3 | 2021-04-02 17:36:04+08 |               |                |
(3 rows)

请以实际查询结果为准。

以root用户连接postgres数据库,参考以下方式获取报告。

方式一:通过样本ID获取报告

# psql –host=<RDS_ADDRESS> –port=<DB_PORT> –dbname=postgres –username=root -Aqtc “select profile.get_report(<sample_start_id>, <sample_end_id>)” -o <filename>.html

表2 参数说明

参数

说明

RDS_ADDRESS

RDS实例的IP地址。

DB_PORT

RDS数据库实例的端口。

sample_start_id

报告包含起始样本ID。

sample_end_id

报告包含结束样本ID。

filename

报告内容保存的文件名,支持指定相对路径或绝对路径。

其中sample_start_id 必须小于sample_end_id,否则无法生成报告。

方法二:通过指定时间段获取报告

# psql –host=<RDS_ADDRESS> –port=<DB_PORT> –dbname=postgres –username=root -Aqtc “select profile.get_report(tstzrange(‘sample_start_time‘, ‘sample_end_time‘))” -o <filename>.html

表3 参数说明

参数

说明

RDS_ADDRESS

RDS实例的IP地址。

DB_PORT

RDS数据库实例的端口。

sample_start_time

报告包含起始时间。

sample_end_time

报告包含结束时间。

filename

报告内容保存的文件名,支持指定相对路径或绝对路径。

目前相关参数保持默认值,详情如下:

采样周期(单位:分钟):10
采样保留时间(单位:天):7
显示记录数:20

参数配置

表4 影响采样报告的参数

参数名称

默认值

是否需要重启

功能描述

备注

pg_profile_pro.topn

20

控制每个排序报表中需要上报对象(语句、关系等)的数量。

该参数会影响样本的大小,如果您想在报表中显示更多的对象,样本中需要保留的对象也会越多。

pg_profile_pro.max_sample_age

3

样本的保留时间(单位:天)。保留时间超过参数时间的样本将在下一次采样时自动删除。

参数最小粒度为天。

pg_profile_pro.track_sample_timings

off

启用此参数后,pg_profile_pro将跟踪详细的采样时间。

开启后,会记录每一细分采样的耗时,会增加空间占用。

pg_profile_pro.period

3600

采样周期(单位:秒)。

用于控制样本的采样周期。

该参数会影响样本的大小,采样周期越短,单位时间内的样本越多,插件表中保留的对象也会越多。

pg_profile_pro.enable

on

采样开关,用于控制插件是否采样。

on:是。
off:否。

插件生成的报告依赖于样本,关闭了采样那么就无法生成最新的报告,但是可以查看历史采样的报告。

表格中参数默认值为最新RDS版本的默认值,其他版本可能会有不同。

报告示例

报告由三部分组成,包含标题、目录和报表。

标题

报告标题包含以下内容:报告起止样本ID、pg_profile_pro内核版本、服务名称、报告起止时间。

图1 报告标题

目录

每层目录分别链接一个报表,用户可以通过目录总览报告中所有报表,也可通过单击链接查看报表内容。

如下图所示:

报表

报告呈现丰富的报表,从不同的维度、关注点来展现数据库的性能情况。

在每个报表后方会针对该报表关注点的提出建议。

图2 报表及建议

在报表中,将鼠标悬停在列标题上,可以看到对列标题的注解(中英文)。

图3 列标题注解

父主题: 插件管理

同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家