生成分析报告
操作场景
WSR(Workload Statistics Report)用于生成性能分析报告。默认只有SYS用户有权限执行相关操作。普通用户如需使用,需要SYS用户授权:grant statistics to user; 将statistics角色授予给普通用户。授权后,普通用户具有创建快照、查看快照、生成WSR报告的权限,但是没有更改WSR参数和删除快照权限。普通用户执行操作时,需要携带SYS名去执行对应的存储过程(例如, CALL SYS.WSR$CREATE_SNAPSHOT;)。
注意事项
当前仅支持在DN主节点上生成分析报告,不支持在CN节点上生成分析报告。
操作步骤
- 通过zsql工具,使用SYS用户登录数据库。
zsql SYS@127.0.0.1:40000 Please enter password: ***********
SYS仅支持本地登录数据库,其默认密码是Changeme_123。
- (可选)直接运行WSR,可以获得帮助信息。
WSR
The syntax of generating a WSR report is as follows: Format: WSR snap_id1 snap_id2 "FILENAME" snap_id1 and snap_id2 indicate the IDs of the start and end snapshots, respectively. FILENAME is optional. You can create a snapshot using the WSR$CREATE_SNAPSHOT stored procedure and obtain snapshot IDs from the adm_hist_snapshot system view. You can drop snapshots using the WSR$DROP_SNAPSHOT_RANGE stored procedure and obtain the latest 20 snapshot IDs by running the WSR list command. Example1: WSR 10 20 Use snapshot 10 and snapshot 20 to generate a report, with a default report name. Example2: WSR 10 20 "e:\wsr.html" Use snapshot 10 and snapshot 20 to generate a report, with a specified report name. Example3: WSR list Obtain information about the latest 20 snapshots. Example4: CALL WSR$CREATE_SNAPSHOT; Create a snapshot. Example5: CALL WSR$DROP_SNAPSHOT_RANGE(10, 20); Drop snapshots from snapshot 10 to snapshot 20. Note: For WSR, the values of the SQL_STAT and TIMED_STATS system parameters are true.
- 使用WSR LIST获取对应这两次时间点的快照ID。
WSR LIST Listing the lastest Completed Snapshots Snap Id Snap Started DB_startup_time --------------- ------------------- ------------------ 2 2018-09-21 17:11:20 2018-09-20 11:44:36 1 2018-09-21 17:11:14 2018-09-20 11:44:36
说明:- 系统会自动生成快照,如果用户需要自己手动创建快照,可以使用如下命令执行。
CALL WSR$CREATE_SNAPSHOT;
- 如果需要删除快照,请参见删除指定快照。
- 如果用户需要修改WSR的配置信息,可以通过WSR$MODIFY_SETTING存储过程进行修改,详细信息请参见表1进行修改。
- 系统自动创建的快照和手动创建的快照,都会生成唯一的快照ID;生成后的快照可以基于该ID进行操作;该ID是通过全局序列SNAP_ID$在创建阶段自动生成,最小值为1,递增为1。
表1 WSR的配置信息 WSR配置信息
单位和取值
查看配置命令
修改命令举例
是否自动收集快照。
取值范围:
- Y:自动收集。
- N:不自动收集。
默认值:Y
SELECT STATUS from ADM_HIST_WR_CONTROL;
call WSR$MODIFY_SETTING(STR_IN_STATUS=> 'Y');
自动生成快照的间隔。
取值范围:【5,1440】
单位:分钟
默认值:30分钟
参数为整数
SELECT SNAP_INTERVAL from ADM_HIST_WR_CONTROL;
call WSR$MODIFY_SETTING(I_IN_INTERVAL_MINUTES => 30);
快照保留的天数。
取值范围:【1,3000】
单位:天
默认值:2天
参数为整数
SELECT RETENTION from ADM_HIST_WR_CONTROL;
call WSR$MODIFY_SETTING(I_IN_RETENTION_DAYS => 30);
报告中Top SQL个数。
取值范围:【1,1000】
单位:个
默认值:200个
参数为整数
SELECT TOPNSQL from ADM_HIST_WR_CONTROL;
call WSR$MODIFY_SETTING(I_IN_TOPSQL=> 100);
是否开启准实时收集任务。
取值范围:
- Y:开启。
- N:不开启。
默认值:Y
SELECT SESSION_STATUS from ADM_HIST_WR_CONTROL;
call WSR$MODIFY_SETTING(STR_IN_SESSION_STATUS=> 'Y');
准实时收集任务的间隔。
取值范围:【1,1000】
单位:秒
默认值:30秒
参数为整数
SELECT SESSION_INTERVAL from ADM_HIST_WR_CONTROL;
call WSR$MODIFY_SETTING(I_IN_SESSION_INTERVAL => 30);
异常日志的保留天数。
取值范围:【1,1000】
单位:天
默认值:30天
参数为整数
SELECT LOG_DAYS from ADM_HIST_WR_CONTROL;
call WSR$MODIFY_SETTING(I_IN_LOG_DAYS => 30);
- 生成性能分析报告。
WSR 1 2 "/export/home/omm/wsr12.html" WSR report file name : /export/home/omm/wsr12.html WSR report Generation Success.
说明:- 生成分析报告的路径用户可根据实际情况进行更改,但是需用户有写的权限。
- 生成性能分析报告时,较小的Snap Id值在前,较大的Snap Id值在后,否则会报错“GS-00601, [1:3]sql syntax error: start_snap_id is greater than end_snap_id!”,同时返回“WSR Report Build failed.”提示信息。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」关注作者【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。评论
- (可选)直接运行WSR,可以获得帮助信息。