华为云云数据库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();”
参数 |
说明 |
---|---|
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
参数 |
说明 |
---|---|
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
参数 |
说明 |
---|---|
RDS_ADDRESS |
RDS实例的IP地址。 |
DB_PORT |
RDS数据库实例的端口。 |
sample_start_time |
报告包含起始时间。 |
sample_end_time |
报告包含结束时间。 |
filename |
报告内容保存的文件名,支持指定相对路径或绝对路径。 |
目前相关参数保持默认值,详情如下:
采样周期(单位:分钟):10
采样保留时间(单位:天):7
显示记录数:20
参数配置
参数名称 |
默认值 |
是否需要重启 |
功能描述 |
备注 |
---|---|---|---|---|
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:是。 |
插件生成的报告依赖于样本,关闭了采样那么就无法生成最新的报告,但是可以查看历史采样的报告。 |
表格中参数默认值为最新RDS版本的默认值,其他版本可能会有不同。
报告示例
报告由三部分组成,包含标题、目录和报表。
标题
报告标题包含以下内容:报告起止样本ID、pg_profile_pro内核版本、服务名称、报告起止时间。
图1 报告标题
目录
每层目录分别链接一个报表,用户可以通过目录总览报告中所有报表,也可通过单击链接查看报表内容。
如下图所示:
报表
报告呈现丰富的报表,从不同的维度、关注点来展现数据库的性能情况。
在每个报表后方会针对该报表关注点的提出建议。
图2 报表及建议
在报表中,将鼠标悬停在列标题上,可以看到对列标题的注解(中英文)。
图3 列标题注解
父主题: 插件管理
同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)
内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家