关于oracle 10g中参数optimizer_mode的测试
感到很疑惑:真的是这样么,10g中的rule和choose是无效的选项?
但我测试时,也能设置choose啊,而且执行计划和all_Rows确实不一样啊!
问了一下网上的朋友,又作了些测试如下,结果也在下面:
C:Documents and SettingsAdministrator>sqlplus system/manager
SQL*Plus: Release 10.2.0.1.0 - Production on 星期五 3月 19 14:06:01 2010
Copyright (c) 1982, 2005, Oracle. All rights reserved.
连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL> show parameter optimizer_mode
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
optimizer_mode string ALL_ROWS
SQL> alter session set optimizer_mode=rule;
会话已更改。
SQL> show parameter optimizer_mode
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
optimizer_mode string RULE
SQL> set autotrace on
SQL> select * from v$version;
BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod
PL/SQL Release 10.2.0.1.0 - Production
CORE 10.2.0.1.0 Production
TNS for 32-bit Windows: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production
执行计划
----------------------------------------------------------
Plan hash value: 1078166315
--------------------------------------
| Id | Operation | Name |
--------------------------------------
| 0 | SELECT STATEMENT | |
|* 1 | FIXED TABLE FULL| X$VERSION |
--------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
1 - filter("INST_ID"=USERENV('INSTANCE'))
Note
-----
- rule based optimizer used (consider using cbo) --Oracle给出的提示
统计信息
----------------------------------------------------------
8 recursive calls
0 db block gets
2 consistent gets
0 physical reads
0 redo size
680 bytes sent via SQL*Net to client
385 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
5 rows processed
SQL> alter session set optimizer_mode=chooose;
ERROR:
ORA-00096: 值 CHOOOSE 对参数 optimizer_mode 无效, 它必须来自 first_rows_1000,
first_rows_100, first_rows_10, first_rows_1, first_rows, all_rows, choose, rule之间
-->一次错误输入,得到了参数的选项值
SQL> alter session set optimizer_mode=choose;
会话已更改。
SQL> show parameter optimizer_mode
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
optimizer_mode string CHOOSE
SQL> select * from v$version;
BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod
PL/SQL Release 10.2.0.1.0 - Production
CORE 10.2.0.1.0 Production
TNS for 32-bit Windows: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production
执行计划
----------------------------------------------------------
Plan hash value: 1078166315
--------------------------------------
| Id | Operation | Name |
--------------------------------------
| 0 | SELECT STATEMENT | |
|* 1 | FIXED TABLE FULL| X$VERSION |
--------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
1 - filter("INST_ID"=USERENV('INSTANCE'))
Note
-----
- rule based optimizer used (consider using cbo) --Oracle给出的提示
统计信息
---------------------------
【版權聲明】
本文爲原創,遵循CC 4.0 BY-SA版權協議!轉載時請附上原文鏈接及本聲明。
原文鏈接:https://tdlib.com/am.php?t=0ax7VcQzsLZ9
Tag:
Oracle
Oracle基础
TTTBLOG
<濒湖脉学白话解>复印说明
2004-02-02
清除服务器IIS缓存的常用方法
2009-06-10
TTT帮你一次搞清屏幕分辨率
2009-07-17
ASP错误:80004005 未指定的错误
2010-11-23
大家来评论一下丘比特和炫丽
2010-06-25
看看,又下了场雪啊
2009-02-19
动态AdvStringGrid完美示例 (AdvString
2009-06-10
CSS布局设计顺口溜
2009-08-12
Oracle 11g以前的版本的用户名和密码是不区分大小写,
2021-10-22
oracle添加自增列/表中已有数据增加序号/更新序号
2020-11-23
大富翁2的简单之美
2009-07-31
灾难了,删除了重要文件!
2010-11-14
不错的创意: 美女时钟-1440分钟 美女来计时
2010-01-13
用Delphi制作简单的发送邮件程序
2009-06-10
个人网站添加Google Friend Connect方法,
2009-08-11
驳斥月光博客的文章:腾讯QQ和360战争后的战后重建
2010-11-07
建议Z-Blog开发这样的功能:可以让用户选择使用动态网页,
2010-05-18
孔庆东评论药家鑫杀人案审判新闻(视频及完整字幕)
2011-03-30
下载了小红伞,替换掉ESET NOD32。
2010-12-16
一去不复返
2007-10-25
今天,在资料上看到如下内容:
相關內容
評論