Oracle的优化器有两种优化方式(二)
15. /*+USE_CONCAT*/
对查询中的WHERE后面的OR条件进行转换为UNION ALL的组合查询. (懵懂啊,先存着)
例如:
select /*+use_concat */ * from emp where deptno=10 OR empno=7788;
Execution Plan
----------------------------------------------------------
0 SELECT STATEMENT Optimizer=CHOOSE (Cost=2 Card=2 Bytes=174)
1 0 TABLE ACCESS (FULL) OF 'EMP' (Cost=2 Card=2 Bytes=174)
16. /*+NO_EXPAND*/
对于WHERE后面的OR 或者IN-LIST的查询语句,
NO_EXPAND将阻止其基于优化器对其进行扩展.
SELECT /*+NO_EXPAND*/ * from EMP WHERE DEPTNO=10 AND job='MANAGER';
Execution Plan
----------------------------------------------------------
0 SELECT STATEMENT Optimizer=CHOOSE (Cost=2 Card=1 Bytes=87)
1 0 TABLE ACCESS (FULL) OF 'EMP' (Cost=2 Card=1 Bytes=87)
17. /*+NOWRITE*/
禁止对查询块的查询重写操作.
18. /*+REWRITE*/
可以将视图作为参数.
19. /*+MERGE(TABLE)*/
能够对视图的各个查询进行相应的合并.
20. /*+NO_MERGE(TABLE)*/
对于有可合并的视图不再合并.
21. /*+ORDERED*/
根据表出现在from中的顺序,ORDERED使ORACLE依此顺序对其连接.
SELECT /*+ORDERED*/ D.DNAME, E.ENAME,E.SAL from EMP E,DEPT D WHERE E.DEPTNO=D.DEPTNO;
Execution Plan
----------------------------------------------------------
0 SELECT STATEMENT Optimizer=CHOOSE (Cost=5 Card=82 Bytes=4510)
1 0 HASH JOIN (Cost=5 Card=82 Bytes=4510)
2 1 TABLE ACCESS (FULL) OF 'EMP' (Cost=2 Card=82 Bytes=2706)
3 1 TABLE ACCESS (FULL) OF 'DEPT' (Cost=2 Card=82 Bytes=1804)
兑换下EMP和DEPT的顺序,得到
SELECT /*+ORDERED*/ D.DNAME, E.ENAME,E.SAL from DEPT D, EMP E WHERE E.DEPTNO=D.DEPTNO;
Execution Plan
--------------------
相关文档:
基于OCI 实现的 最高效dump程序, 比OTL 以及其他的接口都快很多
能执行任何sql , 自动识别字段名和字段类型,进行输出输出
/*
* oracle_dump.cpp
*
* Created on: 2010-2-1
* Author: clm971910@gmail.com
*
* 压缩
* 4216351 dump done
* 完整 106 秒
* 写分隔符 8秒
* 压缩写磁 ......
在 Windows 上安装 Oracle 数据库 11g
安装Oracle 软件,必须使用 Oracle Universal Installer。
1.在这一安装中,您需要使用 DVD 或下载 DVD 版本。在本教程中,将从已下载的版本进行安装。在解压缩 DVD 文件的目录中,打开 Windows 资源浏览器并双击 \db\Disk1 目录的 setup.exe。
2.安装的产品为 Oracle Da ......
首先查看数据库现有模式可使用以下语句
select name,log_mode from v$database;
也可以用下面的语句
archive log list;(该方法需要as sysdba)
对于非归档模式的数据库该为归档模式(主要以Oracle 10g为参考)使用以下步骤:
1. SQL> alter system set log_archive_dest_1='location=/oracle/oracle10g/log/archive ......
Oracle调整与SQL 语句的调优的关系
在Oracle调整中我们还会涉及到SQL 语句的调优,我们接下来就来看以下的 SQL 语句的调优。我们都知道 Oracle 中的 SQL 调优是一个相当复杂的主题,甚至是需要整本书来介绍 Oracle SQL 调优的细微差别。
不过有一些基本的规则是每个 Oracle DBA 都需要跟从的,这些规则可以改善他们系统的 ......
Oracle 的生产库都是启动在归档模式下,RAC下归档非归档的切换和单实例也是一样的,都是在MOUNT模式下执行ALTER DATABASE ARCHIVELOG/NOARCHIVELOG;命令。 不同的是:RAC环境下所有实例都必须处于非OPEN状态,然后在任意一个处于MOUNT状态的实例执行ALTER DATABASE命令,操作成功后,再正常启动 ......