oracle 11g 自动调优

--:自动调优计划

begin

dbms_workload_repository.create_snapshot();

end;

select /*+ result_cache */ count(*) from (select * from  HJ.dbtan where object_type=‘TABLE‘ ORDER BY 1 DESC ,2 ASC ,3 DESC ,4 ASC);

begin

dbms_workload_repository.create_snapshot();

end;

--ft8s1pfmz9ph0

SET SERVEROUTPUT ON

DECLARE

l_sql_tune_task_id  VARCHAR2(100);

BEGIN

l_sql_tune_task_id := DBMS_SQLTUNE.create_tuning_task (

begin_snap  => 21,

end_snap    => 22,

sql_id      => ‘ft8s1pfmz9ph0‘,

scope       => DBMS_SQLTUNE.scope_comprehensive,

time_limit  => 300,

task_name   => ‘ft8s1pfmz9ph0d_AWR_tuning_task‘,

description => ‘Tuning task for statement f3hc7r4trnn1d in AWR.‘);

DBMS_OUTPUT.put_line(‘l_sql_tune_task_id: ‘ || l_sql_tune_task_id);

END;

begin DBMS_SQLTUNE.execute_tuning_task(task_name => ‘ft8s1pfmz9ph0d_AWR_tuning_task‘);end;

SELECT DBMS_SQLTUNE.report_tuning_task(‘ft8s1pfmz9ph0d_AWR_tuning_task‘) AS recommendations FROM dual;

GENERAL INFORMATION SECTION

-------------------------------------------------------------------------------

Tuning Task Name   : ft8s1pfmz9ph0d_AWR_tuning_task

Tuning Task Owner  : SYS

Workload Type      : Single SQL Statement

Scope              : COMPREHENSIVE

Time Limit(seconds): 300

Completion Status  : COMPLETED

Started at         : 09/01/2014 14:55:32

Completed at       : 09/01/2014 14:55:44

-------------------------------------------------------------------------------

Schema Name: SYS

SQL ID     : ft8s1pfmz9ph0

SQL Text   : select /*+ result_cache */ count(*) from (select * from

HJ.dbtan where object_type=‘TABLE‘ ORDER BY 1 DESC ,2 ASC ,3

DESC ,4 ASC)

-------------------------------------------------------------------------------

FINDINGS SECTION (2 findings)

-------------------------------------------------------------------------------

1- Statistics Finding

---------------------

尚未分析表 "HJ"."DBTAN"。

Recommendation

--------------

- 考虑收集此表的优化程序统计信息。

execute dbms_stats.gather_table_stats(ownname => ‘HJ‘, tabname =>

‘DBTAN‘, estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,

method_opt => ‘FOR ALL COLUMNS SIZE AUTO‘);

Rationale

---------

为了选择好的执行计划, 优化程序需要此表的最新统计信息。

2- Index Finding (see explain plans section below)

--------------------------------------------------

通过创建一个或多个索引可以改进此语句的执行计划。

Recommendation (estimated benefit: 95.98%)

------------------------------------------

- 考虑运行可以改进物理方案设计的访问指导或者创建推荐的索引。

create index HJ.IDX$$_00360001 on HJ.DBTAN("OBJECT_TYPE");

Rationale

---------

创建推荐的索引可以显著地改进此语句的执行计划。但是, 使用典型的 SQL 工作量运行 "访问指导"

可能比单个语句更可取。通过这种方法可以获得全面的索引建议案, 包括计算索引维护的开销和附加的空间消耗。

-------------------------------------------------------------------------------

EXPLAIN PLANS SECTION

-------------------------------------------------------------------------------

1- Original

-----------

Plan hash value: 1782547706

--------------------------------------------------------------------------------------------------

| Id  | Operation           | Name                       | Rows  | Bytes | Cost (%CPU)| Time     |

--------------------------------------------------------------------------------------------------

|   0 | SELECT STATEMENT    |                            |     1 |    11 |  4706   (1)| 00:00:57 |

|   1 |  RESULT CACHE       | 81z3k6zbauk9s2c83c03s270ja |       |       |            |          |

|   2 |   SORT AGGREGATE    |                            |     1 |    11 |            |          |

|*  3 |    TABLE ACCESS FULL| DBTAN                      | 40006 |   429K|  4706   (1)| 00:00:57 |

--------------------------------------------------------------------------------------------------

Predicate Information (identified by operation id):

---------------------------------------------------

3 - filter("OBJECT_TYPE"=‘TABLE‘)

Result Cache Information (identified by operation id):

------------------------------------------------------

1 - column-count=1; dependencies=(HJ.DBTAN); attributes=(single-row); parameters=(nls); name="select /*+ result_cache */ count(*) from (select * from  HJ.dbtan where object_type=‘TABLE‘ ORDER BY 1 DESC ,2 ASC ,3 DESC ,4 AS

2- Using New Indices

--------------------

Plan hash value: 2810514733

-------------------------------------------------------------------------------------------------

| Id  | Operation          | Name                       | Rows  | Bytes | Cost (%CPU)| Time     |

-------------------------------------------------------------------------------------------------

|   0 | SELECT STATEMENT   |                            |     1 |    11 |   189   (1)| 00:00:03 |

|   1 |  RESULT CACHE      | 27yjysxpdun18b2utun82bynny |       |       |            |          |

|   2 |   SORT AGGREGATE   |                            |     1 |    11 |            |          |

|*  3 |    INDEX RANGE SCAN| IDX$$_00360001             | 40006 |   429K|   189   (1)| 00:00:03 |

-------------------------------------------------------------------------------------------------

Predicate Information (identified by operation id):

---------------------------------------------------

3 - access("OBJECT_TYPE"=‘TABLE‘)

Result Cache Information (identified by operation id):

------------------------------------------------------

1 - column-count=1; dependencies=(HJ.DBTAN); attributes=(single-row, ordered); parameters=(nls); name="select /*+ result_cache */ count(*) from (select * from  HJ.dbtan where object_type=‘TABLE‘ ORDER BY 1 DESC ,2 ASC ,3 DESC ,4 AS"

-------------------------------------------------------------------------------

begin DBMS_SQLTUNE.drop_tuning_task (task_name => ‘ft8s1pfmz9ph0d_AWR_tuning_task‘);end;

时间: 2024-08-01 11:19:11

oracle 11g 自动调优的相关文章

如何使用oracle 的DBMS_SQLTUNE package 来运行 Sql Tuning Advisor 进行sql 自动调优

 如何使用oracle 的DBMS_SQLTUNE package 来运行 Sql Tuning Advisor 进行sql 自动调优 1>.这里简单举个例子来说明DBMS_SQLTUNE 的使用 首先现执行下某个想要调优的sql,然后获取sqlid SQL> select * from v$sqltext where sql_text like 'select * from dual%'; ADDRESS          HASH_VALUE SQL_ID        COMMAND

SQL自动调优

SQL自动调优,是oracle 自带的调优工具,可以提出一些解决方案. 本次我主要介绍下面这些自动SQL调优工具: 自动SQL调优(automatic sql tuning) SQL调优工具集(SQL tuning sets,STS) SQL调优顾问(SQL Tuning Advisor) 自动数据库诊断监视器(addm) 显示SQL自动调优建议最快的方法: SQL> select dbms_auto_sqltune.report_auto_tuning_task from dual; GENE

关于通过线性回归来实现线程池的自动调优的讨论

1.一个人提议引起 这虾子(153193053) 10:05:01 想写个工具类来实现线程池的自动调优,大概就是采集一些相关指标,然后利用线性回归来预测最优设置,你们觉得这个靠谱不. 2.和木的建议 1.收集数据: 2.数据建模: 3.用R语言快速验证,得出回归模型 4.用Weka的包引入到监控程序 线性回归到不复杂,不过要收集原始数据,维度比较多:有些是分类变量或者多余参数,就涉及到哑变量和多重共线性的问题. R语言有些工具,可以自动进行哑变量转换,去掉多余的维度. 这样最终得出的相关系数比较

禁用网络连接自动调优功能---解决远程桌面,SSMS连接远程服务器卡顿

1.首先,什么是自动调优功能? 从vista开始,微软在TCP/IP协议栈里新加了一个叫做“Window Auto-Tuning”的功能.这个功能本身的目的是为了让操作系统根据网络的实时性能(比如响应时间)来动态调整网络上传输的数据窗口的大小,从而达到实时优化网络性能的目的.但是,在某种情况下,这个功能反而会使远程桌面的响应变的非常的慢. 2.如何使用?(亲测:支持WIN7,WIN10) a. 单击[开始]——[所有程序]——[附件] ,右击[命令提示符]并选择以[管理员身份运行] . b. 当

Oracle数据库sql调优

最近做的一个项目涉及到大数据量的数据表查询.数据表总量在7亿-20亿左右,以主键建立全局唯一索引,分区策略是hash分区+范围分区,很大部分情况下查询条件命中记录数超过万条,单次返回前XX条记录.在调优过程中总结出以下经验: (1)在业务规则允许的情况下,尽量减少区间限制条件,即便该属性是索引字段.如:DATE>=min AND DATA <= max.如果有区间限制条件,会将所有记录与限制条件逐一比较,如果记录数较大,则会严重影响查询效率. (2)使用order by排序尽量保证与索引顺序一

Oracle 内存参数调优设置

Oracle 数据库系统中起到调节作用的参数叫初始化参数,数据库管理员根据实际情况需要适当调整这些 初始化参数以优化Oracle系统. 1 主要系统参数调优介绍 2 系统内存参数的分配 2.1 Oracle 实例= 内存结构 + 进程结构 内存结构 = SGA + PGA SGA(系统全局区): 用户存储数据库信息的内存区,该区域为数据库进程所共享.它包含服务器的数据和控制信息,主要包含高速数据缓冲区.共享池.重做日志缓存区.Java池,大型池等内存结构. SGA的设置,理论上SGA的大小应该占

oracle数据库性能调优

一:注意WHERE子句中的连接顺序: ORACLE采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前, 那些可以过滤掉最大数量记录的条件必须写在WHERE子句的末尾. 尤其是“主键ID=?”这样的条件. 二: SELECT子句中避免使用 ‘ * ‘: ORACLE在解析的过程中, 会将'*' 依次转换成所有的列名, 这个工作是通过查询数据字典完成的, 这意味着将耗费更多的时间 . 简单地讲,语句执行的时间越短越好(尤其对于系统的终端用户来说).而对于查

oracle 11g自动安装与配置

自动删除日志脚本文件下载地址: 链接:http://pan.baidu.com/s/1mg0EnQo    密码:4uit 数据库安装前的准备工作 [[email protected] ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0  #配置IP地址 DEVICE=eth0 HWADDR=00:0C:29:59:6E:BF TYPE=Ethernet ONBOOT=yes BOOTPROTO=no IPADDR=172.16.2.20 NETM

grid-search建模过程中自动调优

1.梯度下降法 先是将需要调整的参数以字典形式存储到param_grid列表中,梯度下降法可调整参数,可参考以下链接 https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.SGDClassifier.html#sklearn.linear_model.SGDClassifier # 导入GridSearch包 from sklearn.model_selection import GridSearchCV s