Oracle Database Resource Manager
图片很清楚的讲明了 ORM 的关系结构Resource consumer group (资源用户组)资源管理器将资源统一分配给资源用户组,而不是某一个具体的会话,当会话建立时会根据自身属性映射到不同的用户组,并从中申请系统资源Resource plan (资源计划)一个数据库可以有多个Resource Plan,但是同一时刻只能有一个Plan...
driving_site
环境描述10.135.175.133 LLTEST10.135.175.136 TEST1.TEST 数据库执行SQL> create table system.t1 as select * from dba_objects;Table created.insert into system.t1 select * from system.t1; 构造500万数据SQL> create table system.t2 as select * from system.t1;Table...
SQL Performance Analyzer(SPA)
SPA 有这样的一个功能,变更前的 STS 与变更后的 STS 做对比. 我们现在就来测试一下1.构造 STSSQL> create table system.wh as select * from dba_objects;表已创建。SQL> execute dbms_stats.gather_table_stats('SYSTEM','WH');PL/SQL 过程已成功完成。SQL> select /* find_me */ count(*...
SQL TUNING SET FROM AWR
我们现在测试 从AWR导入DBMS_SQLTUNE.SELECT_WORKLOAD_REPOSITORY ( begin_snap IN NUMBER, end_snap IN NUMBER, basic_filter IN VARCHAR2 := NULL, object_filter IN VARCHAR2 := NULL,...
SQL PLAN BASELINE
oracle 为了优化SQL性能,最初引入 outline 之后是 sql profile 然后是 sql plan baseline可以理解 SQL PLAN BASELINE 就是 outline / sql profile 的升级版那么我们就来测试一下建立 sql plan baseline1.检查参数SQL> show parameter OPTIMIZER_USE_SQL_PLAN_BASELINENAME &nbs...
SELECT_CURSOR_CACHE
DBMS_SQLTUNE.SELECT_CURSOR_CACHE ( basic_filter IN VARCHAR2 := NULL, object_filter IN VARCHAR2 := NULL, ranking_measure1 IN VARCHAR2 := NULL, ranking_measure2 IN VARCHAR2...
SQL PROFILE
1.创建模拟表SQL> create table system.wh as select * from dba_objects;表已创建。SQL> create index system.id on system.wh(object_id);索引已创建。2.进行一次全表扫SQL> SELECT /*+ FULL(wh)*/count(*) FROM system.wh WHERE OBJECT_ID=2; COUNT(*)---------- ...
Merge Sort Join
Merge Sort Join连接的优势就是可以一定程度上减少随机读的情况。就是逻辑读少,但是sort 排序多.hash join 逻辑读多,但是sort 排序少.hash join 是 Merge Sort Join的一个升级补充1.建立测试表SQL> create table system.t1(id number(10),name varchar(10));Table created.SQL> begin 2  ...
nest loop
nested loop join 一般适和大小表,且大表有index,全表scan小表,然后按index抽取大表匹配记录,返会第一条记录快。1.建立测试表SQL> create table system.t1(id number(10),name varchar(10));Table created.SQL> begin 2 for i in 1 .. 10000 loop &nb...
left/right/inner/full join与加号 --hash join
1.建立测试表SQL> create table system.t1(id number(10),name varchar(10));Table created.SQL> insert into system.t1 2 select 1 as id,'t1' as name from dual 3 union 4 select 2 as id,'t1' as name from dual 5 union 6 select 3 ...
导出/导入 snap信息
由于数据库迁移,希望通过awrdd对比一下迁移前与迁移后的性能.1.导出源库 awr 信息SQL> @?/rdbms/admin/awrextr.sql~~~~~~~~~~~~~AWR EXTRACT~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This script will extract the AWR data for a range of snapshots ~...
awr baseline
1.查询一下snap信息column begin_interval_time format a30column end_interval_time format a30select snap_id,begin_interval_time,end_interval_time from dba_hist_snapshot order by 1 ;....................................... 7764 08-MAR-17 09.00.54.766 AM 08-M...
adaptiver cursor sharing
Oracle使用ACS有两个前提条件:* 绑定变量使用了bind peeking。* 绑定变量的列上有直方图信息。1.构造测试表SQL> create table system.wh(num1 number(10),num2 number(10));Table created.SQL> begin 2 for i in 1 .. 10000 loop &...
SQLHC
Health-checks are performed over:CBO Statistics for schema objects accessed by the one SQL statement being analyzedCBO ParametersCBO System StatisticsCBO Data Dictionary StatisticsCBO Fixed-objects Statistics查看数据库相当性能定位到sql gh1dpjja3mn6w 为查询语句,查询物理读较多O...
bind peeking(绑定变量窥视)
1.创建测试表SQL> create table system.wh(num1 number(10),num2 number(10));Table created.SQL> begin 2 for i in 1 .. 10000 loop 3 if i < 9997 then 4 &...
sql_trace与10046
SQL_TRACE是Oracle提供的用于进行SQL跟踪的手段,是强有力的辅助诊断工具.后期升级版就是10046打开方式alter session set sql_trace=true;alter database set sql_trace=true;1.跟踪当前会话定位当前会话spid为14911SQL> alter session set sql_trace=true;Session altered.SQL> select /*+inde...
INDEX FAST FULL SCAN与INDEX FULL SCAN与区别
索引快速全扫描的执行结果不一定是有序的。这是因为索引快速全扫描时Oracle是根据索引行在磁盘上的物理存储顺序来扫描,而不是根据索引行的逻辑顺序来扫描的,所以扫描结果才不一定有序.我们来测试一下.1.创建测试表create table system.wh(num1 number(10));begin for i in 1 .. 10000 loop ...
gather_plan_statistics使用
1.正常查询SQL> select count(*) from system.wh where num1=100; COUNT(*)---------- 101SQL> select * from table(dbms_xplan.display_cursor(null,null,'ALLSTATS LAST')); PLAN_TABLE_OUTPUT-------------------------------------------------------------------...
收集列直方图
收集方式begin DBMS_STATS.GATHER_TABLE_STATS(ownname=>'SYSTEM',...
outline
1.参数设置alter session set create_stored_outlines = true;2.创建测试表SQL> create table mmm as select * from dba_objects;Table created.3.创建一个 outlineSQL> create or replace outline myoutline for category cate_outline on select * from mmm where object_id=:p; &nb...