官方文档: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 ...
随机推荐
- sudoers文件解析 转自:http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=1971013
今天在用户组中新加了一个普通用户,开始这个用户没有sudo权限,于是通过sudo visudo修改了sudo的配置文件,赋予了普通用户的root权限.后来想着能不能将/etc/sudoers文件的访问 ...
- Oracle树形结构数据---常见处理情景
Oracle树形结构数据---常见处理情景 1.查看表数据结构 SELECT * FROM QIANCODE.TREE_HIS_TABLE T ORDER BY T.NODE_LEVEL; ...
- IOS中使用百度地图定位后获取城市坐标,城市名称,城市编号信息
IOS中使用百度地图定位后获取城市坐标,城市名称,城市编号信息 /**当获取到定位的坐标后,回调函数*/ - (void)didUpdateBMKUserLocation:(BMKUserLocati ...
- js数组去重方法整理
1.思路:定义一个新数组,并存放原数组的第一个元素,然后将原数组的项和新数组的元素一一对比,若不同则存放在新数组中. function unique(arr){ var res = [arr[0]]; ...
- A^B Mod C (51Nod - 1046 )(快速幂)
给出3个正整数A B C,求A^B Mod C. 例如,3 5 8,3^5 Mod 8 = 3. Input 3个正整数A B C,中间用空格分隔.(1 <= A,B,C <= 10^ ...
- linux命令之压缩与归档
1. gzip:压缩工具 语法·:gzip [选项](参数) 命令说明:运用广泛的压缩程序,文件经它压缩后,其名称后面以“.gz”扩展名 常用命令选项: -N:压缩文件后,保留文件的原文件名和时间 ...
- TCP/IP协议模型详解
TCP
- 浅谈Linux下mv和cp命令的区别
1.功能上的区别 mv:用户可以使用该命令为文件或目录重命名或将文件由一个目录移入另一个目录中. cp: 该命令的功能是将给出的文件或目录拷贝到另一文件或目录中. 2.从inode角度来区分 mv:会 ...
- 使用Python第三方库生成二维码
本文主要介绍两个可用于生成二维码的Python第三方库:MyQR和qrcode. MyQR的使用: 安装: pip install MyQR 导入: from MyQR import myqr imp ...
- react脚手架搭建1
23:01:17 react脚手架搭建 (个人用的是webstorm,所以分享下webstorm中的创建react脚手架项目的方法) 1.创建新项目(前提是下载nodejs环境) 2.下载好在webs ...