网页
资讯
视频
图片
知道
文库
贴吧
地图
采购
进入贴吧
全吧搜索
吧内搜索
搜贴
搜人
进吧
搜标签
日
一
二
三
四
五
六
签到排名:今日本吧第
个签到,
本吧因你更精彩,明天继续来努力!
本吧签到人数:0
一键签到
成为超级会员,使用一键签到
一键签到
本月漏签
0
次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行
补签
。
连续签到:
天 累计签到:
天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
03月21日
漏签
0
天
数据库吧
关注:
67,220
贴子:
76,288
看贴
图片
吧主推荐
游戏
1
2
3
下一页
尾页
50
回复贴,共
3
页
,跳到
页
确定
<<返回数据库吧
>0< 加载中...
来一个姿势贴,关于oracle数据库优化,聚聚人气。
只看楼主
收藏
回复
hw1407
初涉管理
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
一楼度娘
hw1407
初涉管理
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
1.ORACLE的优化器共有3种
A、RULE(基于规则)
B、COST(基于成本)
C、CHOOSE (选择性)
扬州斐猫网络科技有限公司
人人都在用的信用查询工具,只需39.99-信用报告查询,风险一目了然!方便-快速-安全点击查询吧!
2025-03-21 09:00
广告
立即查看
hw1407
初涉管理
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
2.访问Table的方式
A、 全表扫描
B、 通过ROWID访问表
C、 共享SQL语句
hw1407
初涉管理
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
全表扫描:全表扫描就是顺序地访问表中每条记录,ORACLE采用一次读入多个数据块
(database block)的方式优化全表扫描。
hw1407
初涉管理
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
rowid访问:
提高访问表的效率, ROWID包含了表中记录的物理位置信息,ORACLE采用索 引(INDEX)实现了数据和存放数据的物理位置(ROWID)之间的联系,通常索引提供 快速访问ROWID的方法,因此那些基于索引列的查询就可以得到性能上的提高。
hw1407
初涉管理
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
共享SQL语句:
为了不重复解析相同的SQL语句,在第一次解析之后,ORACLE将SQL语句存放在内存中,这块位于系统全局区域SGA(system global area)的共享池(sharedbuffer pool)中的内存可以被所有的数据库用户共享,数据库管理员必须在init.ora中为这个区域设置合适的参数,当这个内存区域越大,就可以保留更多的语句,当然被共享的可能性也就越大了。
hw1407
初涉管理
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
共享的语句必须满足三个条件:
A、 字符级的比较: 当前被执行的语句和共享池中的语句必须完全相同。
B、 两个语句所指的对象必须完全相同:
C、 两个SQL语句中必须使用相同的名字的绑定变量(bind variables)
hw1407
初涉管理
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
3.选择最有效率的表名顺序(只在基于规则的优化器中有效)
hw1407
初涉管理
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
4.WHERE子句中的连接顺序
ORACLE采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前,那些可以过滤掉最大数量记录的条件必须写在WHERE子句的末尾。
hw1407
初涉管理
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
5. SELECT子句中避免使用 ' * '
hw1407
初涉管理
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
6. 减少访问数据库的次数
hw1407
初涉管理
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
7.使用DECODE函数来减少处理时间
hw1407
初涉管理
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
8.整合简单,无关联的数据库访问
hw1407
初涉管理
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
9.用TRUNCATE替代DELETE
当删除表中的记录时,在通常情况下, 回滚段(rollbacksegments ) 用来存放可以被恢复的信息。 如果你没有COMMIT事务,ORACLE会将数据恢复到删除之前的状态(准确地说是恢复到执行删除命令之前的状况)。
而当运用TRUNCATE时, 回滚段不再存放任何可被恢复的信息。当命令运行后,数据不能被恢复。因此很少的资源被调用,执行时间也会很短。
hw1407
初涉管理
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
10. 尽量多使用COMMIT
只要有可能,在程序中尽量多使用COMMIT,这样程序的性能得到提高,需求也会因为CO MMIT所释放的资源而减少
COMMIT所释放的资源:
A、 回滚段上用于恢复数据的信息。
B、被程序语句获得的锁。
C、 redo log buffer 中的空间。
D、ORACLE为管理上述3种资源中的内部花费。
登录百度账号
扫二维码下载贴吧客户端
下载贴吧APP
看高清直播、视频!
贴吧页面意见反馈
违规贴吧举报反馈通道
贴吧违规信息处理公示