官方文档:11G新特性SQL PLAN BASLINE 执行计划基线
什么是SQL执行计划管理?
- Set of hints 一系列的hints
- Plan hash value 执行计划的hash值
- Plan-related information 执行计划相关的信息

DECLAREmy_plans PLS_INTEGER;BEGINmy_plans := DBMS_SPM.LOAD_PLANS_FROM_SQLSET( sqlset_name => 'tset1');END;/
DECLAREmy_plans PLS_INTEGER;BEGINmy_plans := DBMS_SPM.LOAD_PLANS_FROM_CURSOR_CACHE( sql_id => '99twu5t2dn5xd');END;/
- SQL identifier (SQL_ID)
- SQL text (SQL_TEXT)
- One of the following attributes:
- PARSING_SCHEMA_NAME
- MODULE
- ACTION
- Uses a cost-based search method to build a best-cost plan 使用基于成本(cost-based)的寻找方法建立plan
- Tries to find a matching plan in the SQL plan baseline 尝试在sql plan baseline中查找匹配的plan
- Does either of the following depending on whether a match is found:
- If found, then the optimizer proceeds using the matched plan 如果找到合适的plan,则使用这个plan
- If not found, then the optimizer evaluates the cost of each accepted plan in the SQL plan baseline and selects the plan with the lowest cost 如果没找到匹配的plan,则会评估sql plan baseline中的各个sql plan,使用其中代价最小的plan
SET SERVEROUTPUT ONSET LONG 10000DECLAREreport clob;BEGINreport := DBMS_SPM.EVOLVE_SQL_PLAN_BASELINE(sql_handle => 'SYS_SQL_593bc74fca8e6738');DBMS_OUTPUT.PUT_LINE(report);END;/
REPORT----------------------------------------------------------------------------------------------------------------------------------------------------------------Evolve SQL Plan Baseline Report--------------------------------------------------------------------------------Inputs:-------SQL_HANDLE = SYS_SQL_593bc74fca8e6738PLAN_NAME =TIME_LIMIT = DBMS_SPM.AUTO_LIMITVERIFY = YESCOMMIT = YESPlan: SYS_SQL_PLAN_ca8e6738a57b5fc2-----------------------------------Plan was verified: Time used .07 seconds.Passed performance criterion: Compound improvement ratio >= 7.32.Plan was changed to an accepted plan.Baseline Plan Test Plan Improv. Ratio------------- --------- -------------Execution Status: COMPLETE COMPLETERows Processed: 40 40Elapsed Time(ms): 23 8 2.88CPU Time(ms): 23 8 2.88Buffer Gets: 450 61 7.38Disk Reads: 0 0Direct Writes: 0 0Fetches: 0 0Executions: 1 1-------------------------------------------------------------------------------Report Summary-------------------------------------------------------------------------------Number of SQL plan baselines verified: 1.Number of SQL plan baselines evolved: 1.Hide NavigationSearchAdvanced SearchReferenceHome · Master Index · Master Glossary · Book List · Data Dictionary · SQL Keywords · Acronyms · Initialization Parameters · Error MessagesCategoriesInstallationGetting StartedAdministrationApplication DevelopmentGrid ComputingHigh AvailabilityData WarehousingContent Management and Unstructured DataInformation IntegrationSecurityVideosNew and changed documents
SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY_SQL_PLAN_BASELINE(sql_handle=>'SYS_SQL_209d10fabbedc741',format=>'basic'));Hide NavigationSearchAdvanced SearchReferenceHome · Master Index · Master Glossary · Book List · Data Dictionary · SQL Keywords · Acronyms · Initialization Parameters · Error MessagesCategoriesInstallationGetting StartedAdministrationApplication DevelopmentGrid ComputingHigh AvailabilityData WarehousingContent Management and Unstructured DataInformation IntegrationSecurityVideosNew and changed documents
SQL handle: SYS_SQL_209d10fabbedc741SQL text: select cust_last_name, amount_sold from customers c,sales s where c.cust_id=s.cust_id and cust_year_of_birth=:yob--------------------------------------------------------------------------------------------------------------------------------------------------------------------Plan name: SYS_SQL_PLAN_bbedc741a57b5fc2Enabled: YES Fixed: NO Accepted: NO Origin: AUTO-CAPTURE----------------------------------------------------------------------------------Plan hash value: 2776326082----------------------------------------------------------------------------------| Id | Operation | Name |----------------------------------------------------------------------------------| 0 | SELECT STATEMENT | || 1 | HASH JOIN | || 2 | TABLE ACCESS BY INDEX ROWID | CUSTOMERS || 3 | BITMAP CONVERSION TO ROWIDS | || 4 | BITMAP INDEX SINGLE VALUE | CUSTOMERS_YOB_BIX || 5 | PARTITION RANGE ALL | || 6 | TABLE ACCESS FULL | SALES |--------------------------------------------------------------------------------------------------------------------------------------------------------------------Plan name: SYS_SQL_PLAN_bbedc741f554c408Enabled: YES Fixed: NO Accepted: YES Origin: MANUAL-LOAD----------------------------------------------------------------------------------Plan hash value: 4115973128----------------------------------------------------------------------------------| Id | Operation | Name |----------------------------------------------------------------------------------| 0 | SELECT STATEMENT | || 1 | NESTED LOOPS | || 2 | NESTED LOOPS | || 3 | TABLE ACCESS BY INDEX ROWID | CUSTOMERS || 4 | BITMAP CONVERSION TO ROWIDS | || 5 | BITMAP INDEX SINGLE VALUE | CUSTOMERS_YOB_BIX || 6 | PARTITION RANGE | || 7 | BITMAP CONVERSION TO ROWIDS | || 8 | BITMAP INDEX SINGLE VALUE | SALES_CUST_BIX || 9 | TABLE ACCESS BY LOCAL INDEX ROWID | SALES |----------------------------------------------------------------------------------
SELECT SQL_HANDLE, PLAN_NAME, ENABLED, ACCEPTED, FIXEDFROM DBA_SQL_PLAN_BASELINES;SQL_HANDLE PLAN_NAME ENA ACC FIX------------------------------------------------------------------------SYS_SQL_209d10fabbedc741 SYS_SQL_PLAN_bbedc741a57b5fc2 YES NO NOSYS_SQL_209d10fabbedc741 SYS_SQL_PLAN_bbedc741f554c408 YES YES NO
BEGINDBMS_SPM.CONFIGURE('space_budget_percent',30);END;/
BEGINDBMS_SPM.CONFIGURE( 'plan_retention_weeks',105);END;/
BEGINDBMS_SPM.CREATE_STGTAB_BASELINE(table_name => 'stage1');END;/
DECLAREmy_plans number;BEGINmy_plans := DBMS_SPM.PACK_STGTAB_BASELINE(table_name => 'stage1',enabled => 'yes',creator => 'dba1');END;/
DECLAREmy_plans number;BEGINmy_plans := DBMS_SPM.UNPACK_STGTAB_BASELINE(table_name => 'stage1',fixed => 'yes');END;/
、官方文档:11G新特性SQL PLAN BASLINE 执行计划基线的更多相关文章
- Oracle 11g 新特性 --SQL Plan Management 说明
Oracle 11g 新特性 --SQL Plan Management 说明 参见大神博主文章: http://blog.csdn.net/tianlesoftware/article/detail ...
- 11g新特性-SQL Plan Management
在11g之前版本,提供了stored outlines(sql概要)特性来保存sql的执行计划. 在11g中,引入了一个新的特性sql计划管理(sql plan management)特性来保存sql ...
- 《Spring5官方文档》新功能(4,3)
<Spring5官方文档>新功能 原文链接 译者:supriseli Spring框架的新功能 这一章主要提供Spring框架新的功能和变更. 升级到新版本的框架可以参考.Spring g ...
- 11g的新特性:SQL Plan Management(SPM)
Oracle11g中,Oracle提供dbms_spm包来管理SQL Plan,SPM是一个预防机制,它记录并评估sql的执行计划,将已知的高效的sql执行计划建立为SQL Plan Baseline ...
- 【pytest官方文档】解读fixtures - 11. fixture的执行顺序,3要素详解(长文预警)
当pytest要执行一个测试函数,这个测试函数还请求了fixture函数,那么这时候pytest就要先确定fixture的执行顺序了. 影响因素有三: scope,就是fixture函数的作用范围,比 ...
- Spark SQL 官方文档-中文翻译
Spark SQL 官方文档-中文翻译 Spark版本:Spark 1.5.2 转载请注明出处:http://www.cnblogs.com/BYRans/ 1 概述(Overview) 2 Data ...
- mybatis 动态 SQL 官方文档
MyBatis 的强大特性之一便是它的动态 SQL.如果你有使用 JDBC 或其它类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句的痛苦.例如拼接时要确保不能忘记添加必要的空格,还要注意去掉 ...
- 入门常用SQL及官方文档的使用
SQL语句基础理论 SQL是操作和检索关系型数据库的标准语言,标准SQL语句可用于操作关系型数据库. 5大主要类型: ①DQL(Data Query Language,数据查询语言)语句,主要由于se ...
- 五个新知识:微软SHA2补丁,亚信专业工具,微软官方文档,使用过期签名(附官方推荐链接),注意使用具有UAC的CMD
五个新知识:微软SHA2补丁,亚信专业工具,微软官方文档,使用过期签名 不支持SHA2算法的计算机更新补丁:https://technet.microsoft.com/zh-CN/library/se ...
随机推荐
- Python 学习笔记(八)Python列表(三)
序列 序列:数学上,序列是被排成一列的对象(或事件):这样,每个元素不是在器他元素之前,就是在其他元素之后.这里元素之间的顺序非常重要.<维基百科> 序列是Python中最基本的数据结构. ...
- 菜鸟笔记 -- Chapter 6.4 面向对象的三大特性
6.4.1 三大特性概述 面向对象的三大特性是Java中一个很重要的基本理念. 封装是面向对象的核心思想.将对象的属性和行为封装起来,其载体就是类,类通常对客户隐藏其实现细节,这就是封装的意思.采用 ...
- 分布式id生成
2016年08月09日 14:15:21 yuanyuanispeak 阅读数:318 编辑 一.需求缘起 几乎所有的业务系统,都有生成一个记录标识的需求,例如: (1)消息标识:message-id ...
- Sass 基础(一)
css 是一些非常简单得语句的组合,既然简单的语句,就不可避免的有很多重复的,冗余的东西,而且没有传统编程语言变量,控制语句等高级特性,所以造成了css 编写低效,往往需要查找替换,大量复制来修改或者 ...
- 有个数组 我现在需要把数组里面的值按照n个一组,赋予一个新的数组
有个数组 我现在需要把数组里面的值按照七个一组,赋予一个新的数组
- Linux安装redis PHP安装Redis扩展 and基本命令
一.安装redis 用超级管理员身份运行: $ mkdir /usr/local/redis #redis安装目录 $ cd /usr/local/src #安装包下载目录 $ wget http:/ ...
- python字符串常用内建函数总结
自己总结一些常用字符串函数,理解比较粗糙 1.字符串内建函数-大小写转换函数 (1)str.capitalize Help on method_descriptor: capitalize(...) ...
- sqlite内存数据库和文件数据库的同步[转]
由于sqlite对多进程操作支持效果不太理想,在项目中,为了避免频繁读写 文件数据库带来的性能损耗,我们可以采用操作sqlite内存数据库,并将内存数据库定时同步到文件数据库中的方法. 实现思路如下: ...
- CentOS7下PHP7.2安装redis扩展
1.安装phpize(存在忽略) yum install php-devel 2.下载扩展源码包,直接用wget,一般放在 /usr/local/src wget https://github.com ...
- Angular : 基础语句说明, 响应式表单指令, 组件生命周期钩子