本文介绍如何使用PolarDB的AWR功能。

说明 polar_profile插件暂不支持您自行安装,如若需要请您提交工单联系技术支持安装。

依赖插件

AWR报表的部分内容依赖其他监控采集的相关插件,

插件 配置参数 参数说明 关联的展示内容
pg_stat_statements pg_stat_statements.track 用于控制可以被模块技术的语句,默认值为top,表示跟踪顶级的SQL语句,暂不支持修改。 TOP SQL查询统计信息。
pg_stat_statements.enable 是否开启信息统计功能;
  • on:开启功能。
  • off:关闭功能。
polar_monitor_preload
  • CPU统计信息
  • I/O统计信息
  • 网络统计信息

配置参数

您可以通过配置以下参数提高收集到的统计信息的完整性。

  • track_activities:监控当前被任意服务器进程执行的语句。

    建议配置如下:

    track_activities = on
  • track_counts:是否收集访问表和索引的统计信息。

    建议配置如下:

    track_counts = on
  • track_io_timing:监控对块的读写次数。

    建议配置如下:

    track_io_timing = on
  • track_functions:跟踪自定义函数的使用。

    建议配置如下:

    track_functions = all

使用步骤

  1. 使用psql工具连接PolarDB集群。具体操作,请参见通过命令行连接PolarDB
  2. 执行如下命令,给数据库生成第一次快照。
    select profile.snapshot();
  3. 执行如下命令,给数据库生成第二次快照。
    select profile.snapshot();
  4. 查看快照节点信息。
    查询语句如下:
    select profile.snapshot_show();

    返回示例如下:

             snapshot_show          
    --------------------------------
     (1,"2020-08-17 06:15:24+00",,)
     (2,"2020-08-17 06:15:27+00",,)
     (2 rows)
  5. 执行exit命令,断开psql连接。
  6. 基于两次快照生成HTML格式的报告,该AWR报告包含两次快照期间的负载信息。

    命令示例如下:

    psql -h host -p port -U user -d database -qtc "SELECT profile.report(1,2)" --output polardb_awr_report.html

    参数介绍如下。

    参数 描述
    host

    PolarDB集群的连接地址。查看PolarDB集群的地址及端口信息的步骤如下:

    1. 登录PolarDB控制台
    2. 在控制台左上角,选择集群所在地域。
    3. 单击目标集群ID。
    4. 链接地址区域查看PolarDB地址。
    port PolarDB集群端口,默认为1521。
    user PolarDB集群的账号,创建账号请参见创建数据库账号
    database 需要管理的维护数据库名称。如何新建数据库,请参见创建数据库
    "SELECT profile.report(1,2)" 用于生成AWR报告的两个快照节点,其中profile.report(1,2)表示快照1和2。
    polardb_awr_report.html 生成的HTML格式的报名名称。
  7. 使用浏览器打开polardb_awr_report.html文件,即可查看报告内容。
    说明 报告内容大部分数据都是累积数据,部分为瞬间数据。如果是瞬时数据会标记为开始值和结束值。开始值指的是打快照起始时刻的瞬时值,结束值表示打快照结束时刻的瞬时值。