Oracle调优浅析

1 篇文章 0 订阅
1 篇文章 0 订阅

我们在做开发时,常用到Oracle数据库来开发一些大型项目,如何优化Oracle来提高效率这是开发者都曾遇到或者将会遇到的问题。

现在我们就来一起研究研究Oracle调优的一些基本方法。

方法一:硬件调优

硬件的更新和升级是Oracle调优最直接的方法:主要包括内存、cpu和磁盘这三个硬件升级。

但是这种方法带来的是成本的增高,公司不到万不得已也不会批准用这种,从市场的角度和技术的角度我们都不提倡先用这种方法。

方法二:平衡、合理地限制资源的使用

根据业务需求的特性来充分利用这是很聪明的办法,前提是在前期应该做一个近乎完美的需求和设计,要提前想到可能面临的问题。

我们主要根据两个特性来判断:

1.一次或多次对Oracle有大数据量的读取或写入。

如一些统计部门就需要对上千万甚至上亿的数据做处理,对数据库就会有大量的读取,这直接影响了数据库的效率。

2.对数据库频繁的访问。

一些在线系统,当有大量人员登录或登出时,这个数据库和服务器都造成了极大的压力,甚至可能造成服务器直接“当掉”。

以上两种情况就需要开发这充分的考虑并作出正确的设计,对Oracle的SGA,共享池、数据缓冲区、日志缓冲区做出合适的调整,

来迎接这些极端“气候”。

方法三:SQL调优

SQL语句的优化往往会有意想不到的效率提高,尤其是在数据量极大的情况下。

SQL调优有以下规则:

1.From最右边的表为基础表,数据库会先解析,所以把数据量最小的表作为基础表。

2.查询条件从where最远端开始解析,所以最后的where条件限制量最大。

3.用truncate代替delete,不会产生回滚段,减少写日志的过程,提高效率。

4.使用ROWID,访问索引提升性能。

5.避免改变索引列类型,避免使用IS NULL 和 IS NOT NUL。L

6.union all 比union 效率更高,因为union有distinct去重。

7.用IN替换OR。

以上并不是提升Oracle性能的全部方法,还有很多待我们继续深入研究。

欢迎大家提出更多的宝贵意见,如转载请注明出处。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值