Oracle 12.2 使用Database Link优化Standby Database Workload

栏目: 数据库 · 发布时间: 5年前

内容简介:从Oracle 12.2开始,可以通过在database_link_to参数来指定一个数据库链路来优化备库workload。由于安全原因,Oracle建议使用私有数据库链路。这个链路必须属于sys用户并且能让有权限的用户来访问。Oracle数据库包含一个缺省的权限用户名为SYS$UMF。在主库中使用sys用户创建表t1与配置sys$umf用户,这个用户默认是被锁定的,所以需要先解锁这个用户并设置密码:创建一个备库(cs_dg)到主库的链路,由于ADG是只读的,所以创建数据库链路操作都需要在主库中执行:

从Oracle 12.2开始,可以通过在database_link_to参数来指定一个数据库链路来优化备库workload。由于安全原因,Oracle建议使用私有数据库链路。这个链路必须属于sys用户并且能让有权限的用户来访问。Oracle数据库包含一个缺省的权限用户名为SYS$UMF。

在主库中使用sys用户创建表t1与配置sys$umf用户,这个用户默认是被锁定的,所以需要先解锁这个用户并设置密码:

SQL> alter user sys$umf account unlock identified by xxzx7817600;

User altered.

SQL>create table t1 as select * from user_tables;
Table created.

SQL> create index idx_t1_tablename on t1(table_name);

Index created.

SQL> exec dbms_stats.gather_table_stats('sys','t1',degree => 4,cascade => true);

PL/SQL procedure successfully completed.

创建一个备库(cs_dg)到主库的链路,由于ADG是只读的,所以创建数据库链路操作都需要在主库中执行:

SQL> create database link cs_dg2_to_cs2 connect to sys$umf identified by abcd1234 using   'CS';

Database link created.

在备库中验证数据库链路是否创建成功

<
SQL> col owner for a20
SQL> col object_name for a50
SQL> select owner,object_name from dba_objects where object_type='DATABASE LINK';

OWNER                OBJECT_NAME
-------------------- --------------------------------------------------
SYS                  CS_DG2_TO_CS2
SYS                  SYS_HUB

SQL>  select table_name from user_tables@cs_dg2_to_cs2;

no rows selected

SQL> select sysdate from dual@cs_dg2_to_cs2;

SYSDATE
------------
24-JAN-19

在备库中对表t1执行查询,database_link_to参数用来指定备库到主库的数据链路名cs_dg2_to_cs2

SQL> variable tname varchar2(30);
SQL> variable query varchar2(500);
SQL> exec :tname := 'jy_task';

PL/SQL procedure successfully completed.

SQL> exec :query := 'select /*+ full(t)*/ col1 from t1 t where table_name=''T1''';

PL/SQL procedure successfully completed.

SQL> begin
  2  :tname := dbms_sqltune.create_tuning_task
  3  (
  4  sql_text => :query,
  5  task_name => :tname,
  6  database_link_to => 'CS_DG2_TO_CS2',
  7  scope=>'COMPREHENSIVE',
  8  time_limit=>60,
  9  description=>'Task to tune a query_on adg');
 10  end;
 11  /

PL/SQL procedure successfully completed.

SQL> exec dbms_sqltune.execute_tuning_task(:tname);

PL/SQL procedure successfully completed.

SQL> select dbms_sqltune.report_tuning_task(:tname) from dual;

DBMS_SQLTUNE.REPORT_TUNING_TASK(:TNAME)
--------------------------------------------------------------------------------
GENERAL INFORMATION SECTION
----------------------------------------------------

以上所述就是小编给大家介绍的《Oracle 12.2 使用Database Link优化Standby Database Workload》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

编程之魂

编程之魂

Federico Biancuzzi、Shane Warden / 闫怀志 / 电子工业出版社 / 2010-04 / 59.80元

本书是27位杰出的设计师与你分享他们的智慧和经验。书中以问答方式告诉为什么要创建某种编程语言、它在技术上如何开发、如何教授和学习,以及它如何顺应时代发展等。你会发现构建成功编程语言所需的思想和步骤,它广受欢迎的原因,以及如何处理程序员常见的问题。因此,如果你想深入学习设计成功编程语言的思想,本书会对你大有帮助。一起来看看 《编程之魂》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具