oracle数据库优化

sql性能优化

1. 尽量不要是用*来代替所有字段

2. 大写比小写的性能要高

3. 查询中,where后面多个条件时,过滤掉数据最多的那个条件放在最右边

4. >=与>相比,性能会更高;<=和<类似

5. between...and 其实类似于>=和<=,所以与>,<比较,between...and 的性能会更高

6. 尽量避免对索引进行运算

7. 尽量减少使用函数

8. 尽量避免使用in , any,all,distinct,not..这些关键字

9. 尽量避免使用否定性的条件

10. 尽量减少使用子查询,联表查询...

11. 当有一定的数据量之后,根据数据特点,创建合适的索引以提高查询性能

12. 当表字段较多,数据量较大时,可以考虑表的切割,表的切割分横向切割和纵向切割

时间: 2024-10-10 19:45:41

oracle数据库优化的相关文章

oracle数据库优化之统计信息

1.统计信息简介 统计信息主要是描述数据库中表,索引的大小,规模,数据分布状况等的一类信息.比如,表的行数,块数,平均每行的大小,索引的leaf blocks,索引字段的行数,不同值的大小等,都属于统计信息.CBO正是根据这些统计信息数据,计算出不同访问路径下,不同join 方式下,各种计划的成本,最后选择出成本最小的计划. 在CBO(基于代价的优化器模式)条件下,SQL语句的执行计划由统计信息来决定,若没有统计信息则会采取动态采样的方式决定执行计划!可以说统计信息关乎sql的执行计划是否正确,

Oracle 数据库优化-分析现有的sql

在做数据库sql优化时,首先要对现有的数据库sql进行优化,主要包括以下几种: 1.数据库正在执行的SQL是? 2.已经执行过得SQL是? 3.最耗时的的前几条SQL是? 4.最耗IO的SQL是? 5.某条SQL执行的计划是?某条SQL上的优化策略是否起作用? 以下,将对上面的几种情况分别陈述. 一.查询正在执行的sql. select a.username, a.sid,b.SQL_TEXT, b.SQL_FULLTEXT from v$session a, v$sqlarea b where

oracle数据库优化与LNNVL函数使用

一:先谈谈数据库的优化 1. max 函数 运行速率慢:现在用下面的方式替换 A;用max函数的方式:获取最新操作时间的 一行员工记录-----------速度慢: select *             from [email protected] JER             WHERE JER.TYPE = '员工银行卡信息记录'                       AND JER.CREATEDATE = (SELECT MAX(CREATEDATE)            

大型Oracle数据库设计方案(精华)

摘 要 本文主要从大型数据库ORACLE环境四个不同级别的调整分析入手,分析ORACLE的系统结构和工作机理,从九个不同方面较全面地总结了ORACLE数据库的优化调整方案. 关键词 ORACLE数据库 环境调整 优化设计 方案 对于ORACLE数据库的数据存取,主要有四个不同的调整级别,第一级调整是操作系统级包括硬件平台,第二级调整是ORACLE RDBMS级的调整,第三级是数据库设计级的调整,最后一个调整级是SQL级.通常依此四级调整级别对数据库进行调整.优化,数据库的整体性能会得到很大的改善

ORACLE数据库设计方案

本文主要从大型数据库ORACLE环境四个不同级别的调整分析入手,分析ORACLE的系统结构和工作机理,从九个不同方面较全面地总结了ORACLE数据库的优化调整方案. 对于ORACLE数据库的数据存取,主要有四个不同的调整级别,第一级调整是操作系统级包括硬件平台,第二级调整是ORACLE RDBMS级的调整,第三级是数据库设计级的调整,最后一个调整级是SQL级.通常依此四级调整级别对数据库进行调整.优化,数据库的整体性能会得到很大的改善.下面从九个不同方面介绍ORACLE数据库优化设计方案. 一.

oracle数据库一些常用的优化方案

充分利用系统全局区域SGA(SYSTEM GLOBAL AREA) :     SGA是oracle数据库的心脏.用户的进程对这个内存区发送事务,并且以这里作为高速缓存读取命中的数据,以实现加速的目的.正确的SGA大小对数据库的性能至关重要. SGA包括以下几个部分: 1. 数据块缓冲区(data block buffer cache)是SGA中的一块高速缓存,占整个数据库大小的1%-2%,用来存储从数据库重读取的数据块(表.索引.簇等),因此采用least recently used (LRU

ORACLE数据库性能优化之--&gt;内存磁盘

1,内存结构优化概述 1.1 缓冲区 影响数据库运行性能的缓冲区包括可以共享的SGA和服务器进程私有的pga两大类,其中sga又包括共享池.大型池.java池.数据缓冲区.流池.redo log缓冲区. 1.2 自动内存管理 oracle一般采用自动内存管理来管理系统内存,由oracle自动管理和调整数据库实例的内存大小.在自动管理模式下,首先对初始化参数MEMORY_TARGET(目标内存大小)和MEMORY_MAX_TARGET(最大内存大小)进行配置,数据库调整目标内存大小,根据需要不断重

Oracle数据库中的优化方案

来自: http://woainichenxueming.iteye.com/blog/726541 一. 优化oracle中的sql语句,提高运行效率 1. 选择最有效率的表名顺序(只在基于规则的优化器中有效) ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名, FROM子句中写在最后的表(基础表 driving table)将被最先处理, 在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表. 如: 表T_USER有16384条记录, 表T_DEPARTME

【Oracle 优化】Oracle数据库提高命中率及相关优化

本文是关于Oracle数据库调试与优化方面的文章,主要介绍Oracle数据库中命中率相关的问题,包括不同的算法之间性能的比对. 关于Oracle中各个命中率的计算以及相关的调优 1)Library Cache的命中率: .计算公式:Library Cache Hit Ratio = sum(pinhits) / sum(pins) SQL>SELECT SUM(pinhits)/sum(pins) FROM V$LIBRARYCACHE; 通常在98%以上,否则,需要要考虑加大共享池,绑定变量,