Oracle 手动生成快照 生成AWR报告及简单分析

此操作在windows 10 上操作,Linux系统类似。

  1. 登录有dba权限的账号:
    $ su - oracle
    $ sqlplus / as sysdba

  2. 如果有多个数据库,用以下登录:
    使用命令“sqlplus”,命令格式:sqlplus 用户名/口令@数据库名 as sysdba
    $ sqlplus sys/sys@localhost:1521/orcl as sysdba
    登录成功

  3. 手动生成快照,账号须有dba权限。正常情况下默认1小时生成一个。
    SQL>exec dbms_workload_repository.create_snapshot();
    生成成功

  4. 查看快照,比较多,一般忽略这步。
    SQL>select * from dba_hist_snapshot;

  5. 生成awr报告:
    windows:D:\app\admin\product\11.2.0\dbhome_1 是Oracle的安装路径。
    SQL>@D:\app\admin\product\11.2.0\dbhome_1\RDBMS\ADMIN\awrrpt.sql;
    linux:
    SQL> @$ORACLE_HOME/rdbms/admin/awrrpt.sql;
    或者
    SQL> @/u01/oracle/product/10.2.0/db_1/rdbms/admin/awrrpt.sql;
    /u01/oracle/product/10.2.0/db_1 是Oracle的安装路径(不知道或找不到的执行命令 whereis oracle 或 which oracle)。
    在这里插入图片描述

  6. 输入 report_type 的值:直接回车则为默认的 html 格式
    在这里插入图片描述

  7. 输入 num_days 的值:看今天的则输入:1 。可以看到今天的快照列表,Snap Id 为 6679和6680是手动生成的快照,待会就可以用这两个相邻的id来生成awr报告。也可以使用其他的id,但两个id必须是相邻的,隔一空行也不行,如 6673和6674。
    在这里插入图片描述

  8. 输入 begin_snap 的值:6679
    在这里插入图片描述

  9. 输入 end_snap 的值:6680
    在这里插入图片描述

  10. 输入 report_name 的值:awrrpt_20220214_1530.html
    这里为输入报告的名称,爱写啥写啥。
    或者直接回车则使用默认名称:awrrpt_1_6679_6680.html,开始id和结束id。
    然后就哗啦哗啦一大片…
    出现 Report written to … 字样就好了。
    在这里插入图片描述

  11. 生成的报告在连接数据库之前的路径。
    比如连接之前在路径 C:\Users\admin,那报告就在下面。
    Linux 默认在oracle用户的根目录下,执行命令 cd 到根目录,pwd 查看当前路径,用ftp工具下载文件。
    在这里插入图片描述
    在这里插入图片描述

简单分析

  1. Top 5 Timed Events,等待时间在前五位的事件,基本上可以判断出问题在哪。
    当 CPU time 出现在这个列表,说明cpu空闲时间较大,基本上就没什么问题。
    在这里插入图片描述
  2. SQL Statistics,sql 统计,一般查看 SQL ordered by CPU Time
    在这里插入图片描述
  3. SQL ordered by CPU Time,查看耗时靠前的20个sql。点击 SQL id 就能查看具体sql。
    在这里插入图片描述
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值