这篇文章给大家分享的是有关Oracle中怎么在12.2版本ADG备库生成AWR报告的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
从 Oracle Database 12.2开始,可以为 Active Data Guard(ADG)备库生成AWR报告,备库不再需要statspack去分析性能了。
主库和备库位于2节点RAC上
主库(db_unique_name = pridb)节点prihost1,prihost2
备库(db_unique_name = stbdb)节点stbhost1,stbhost2
1) 确认备库上的打开模式和数据库角色:
SQL> select inst_id, open_mode, database_role from gv$database order by 1;
INST_ID OPEN_MODE DATABASE_ROLE
---------- -------------------- ----------------
1 READ ONLY WITH APPLY PHYSICAL STANDBY
2 READ ONLY WITH APPLY PHYSICAL STANDBY
2) 在主库上
SYS$UMF 用户是默认具有访问系统级远程管理框架(RMF)视图和表的所有权限的数据库用户。RMF 中的所有 AWR 相关操作只能由 SYS$UMF 用户执行。
SYS$UMF 用户默认处于锁定状态,在部署RMF拓扑之前必须将其解锁:
SQL> alter user sys$umf identified by sysumf account unlock;
3) 在主库和备库之间分别创建database link:
在主库上
create database link dbl_pridb_to_stbdb CONNECT TO sys$umf IDENTIFIED BY sysumf using 'stbdb';
create database link dbl_stbdb_to_pridb CONNECT TO sys$umf IDENTIFIED BY sysumf using 'pridb';
4) 我们需要配置数据库节点以添加到拓扑中。必须为拓扑中的每个数据库节点分配唯一名称(默认为DB_UNIQUE_NAME):
在这个例子中,我们为主库选择名字“prim”,为备库选择名字“stby”
在主库上
exec dbms_umf.configure_node ('prim');
5) 把备库远程注册到主库。我们可以通过相应的database link注册它。
在备库上
exec dbms_umf.configure_node ('stby','dbl_stbdb_to_pridb');
6) 创建RMF拓扑:
在主库上
exec DBMS_UMF.create_topology ('Topology_1');
7) 验证到目前为止所完成的步骤:
set line 132
col topology_name format a15
col node_name format a15
select * from dba_umf_topology;
select * from dba_umf_registration;
For example
SQL> select * from dba_umf_topology;
TOPOLOGY_NAME TARGET_ID TOPOLOGY_VERSION TOPOLOGY
--------------- ---------- ---------------- --------
Topology_1 2014871576 1 ACTIVE
SQL> select * from dba_umf_registration;
TOPOLOGY_NAME NODE_NAME NODE_ID NODE_TYPE AS_SO AS_CA STATE
--------------- --------------- ---------- ---------- ----- ----- --------------------
Topology_1 prim 2014871576 0 FALSE FALSE OK
8) 注册备库到拓扑。
在主库上:
exec DBMS_UMF.register_node ('Topology_1', 'stby', 'dbl_pridb_to_stbdb', 'dbl_stbdb_to_pridb', 'FALSE', 'FALSE');
PL/SQL procedure successfully completed.
在节点上启用 AWR 服务:
exec DBMS_WORKLOAD_REPOSITORY.register_remote_database(node_name=>'stby');
PL/SQL procedure successfully completed.
如果遇到“ORA-15766: already registered in an RMF topology请注销以下节点,然后重新运行“DBMS_UMF.register_node”注册:
exec DBMS_UMF.unregister_node ('Topology_1', 'stby');
PL/SQL procedure successfully completed.
“ORA-13519: Database id (1730117407) exists in the workload repository"”
请按如下所示注销远程数据库,然后重新运行“DBMS_WORKLOAD_REPOSITORY.register_remote_database”:
exec DBMS_WORKLOAD_REPOSITORY.unregister_remote_database('stby','Topology_1',TRUE);
PL/SQL procedure successfully completed.
验证
set line 132
col topology_name format a15
col node_name format a15
SQL> select * from dba_umf_topology;
TOPOLOGY_NAME TARGET_ID TOPOLOGY_VERSION TOPOLOGY
--------------- ---------- ---------------- --------
Topology_1 2014871576 6 ACTIVE
SQL> select * from dba_umf_registration;
TOPOLOGY_NAME NODE_NAME NODE_ID NODE_TYPE AS_SO AS_CA STATE
--------------- --------------- ---------- ---------- ----- ----- --------------------
Topology_1 prim 2014871576 0 FALSE FALSE OK
Topology_1 stby 1730117407 0 FALSE FALSE OK
SQL> select * from dba_umf_service;
TOPOLOGY_NAME NODE_ID SERVICE
--------------- ---------- -------
Topology_1 1730117407 AWR
9) RMF创建远程快照
在主库上
exec dbms_workload_repository.create_remote_snapshot('stby');
我们需要运行至少两次来获取begin_snap和end_snap。
如果您遇到“ORA-13516: AWR Operation failed: Remote source not registered for AWR”,则在主库上手动切换几(2-3)个日志文件:
alter system switch logfile;
10) 创建AWR报告
@?/rdbms/admin/awrrpti.sql
根据dbid和host找到备库即可
感谢各位的阅读!关于“Oracle中怎么在12.2版本ADG备库生成AWR报告”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。