《让Oracle跑得更快 1》粗略笔记

作者:谭怀远
本书是一本关于性能优化的书籍,结合作者的工作经验和思路,国内相关的性能优化的书籍少之又少,被不少初学性能优化的DBA奉为经典;由于本书涉及的知识点还是简单浅显,所以这里的笔记量很少,希望读者见谅;
优化器的选择:
1、all_rows:OLAP报表作业
2、first_rows:分页操作较多的网站类数据库
 
数据库的设计:
OLTP:强调数据库的内存效率,强调内存各种指标的命中率,强调绑定变量,强调并发操作
OLAP:强调数据分析,强调SQL执行时长,强调磁盘I/O,强调分区
 
锁的分类:
表级锁
行级锁
共享锁
排他锁
 
反向索引:在rac中某个表出现了典型的“右倾”现象,会导致索引数据库块的争用从而导致热块的出现,此时应用反向索引来代替常见的B-TREE索引
 
几种热块类型:
表数据块
索引数据块
索引根数据块
文件头数据块(段头数据块)
 
表关联操作的HINT:
USE_HASH:hash join
USE_NL:nested loop 关联表比较小的时候;
USE_MERGE:merge join 消耗资源多,一般能用到的地方,都可以用hash join来代替;
两个表都比较大的时候,hash join 的效率大于nested loop 的关联方式;
 
动态采样:
OLAP:建议动态采样的level设置为3或者4;
OLTP:不建议使用动态采样;
 
并行度的设定:
1、使用hint指定并行度: select /*+ parallel(t 4) */ count(*) from t;
2、使用alter session force parallel设定并行度: alter table t parallel 4; alter session force parallel query parallel 4;
3、使用SQL中引用的表或者索引上设定的并行度,原则上oracle使用这些对象中并行度最高的那个值作为当前执行的并行度;
并行度的优先级从高到低为:
Hint→Alter session force parallel→表,索引上的设定→系统参数 
 
10046 事件按照收集的信息内容,可分为4个级别:
1、Level 1 等同于SQL_TRACE的功能;
2、Level 4 在Level1的基础上增加收集绑定变量的信息;
3、Level 8 在Level1的基础上增加等待事件的信息;
4、Level 12 等同于 Level4 + Level8,即同时收集绑定变量信息和等待事件信息。
 
10046事件:查看SQL的运行情况
10053事件:查看CBO工作情况
 
SQL_TRACE:当一个确定的SQL语句操作出现性能问题
STATSPACK(AWR):使用于数据库整体性能下降,没有特定的对象可以分析
 
系统性能参数:
cursor_sharing:EXACT,similar,FORCE
DB_FILE_MULTIBLOCK_READ_COUNT
PGA_AGGREGATE_TARGET
SGA_TARGET
OPTIMIZER_DYNAMIC_SAMPLING:OLAP系统设置为4比较合适,OLTP系统不能设置太高,一般默认即可
 
获取整天的性能数据有关的系统性能视图:
V$sysstat
V$system_events
AWR性能报告分析:
OLTP:Library Hit,Buffer Hit






点评:
 作为一名Oracle DBA 菜鸟,想更多的了解关于性能调优方面的知识,此为背景;跟朋友聊天时,朋友将此书推荐于我,博主可耻的在网上下载了PDF盗版资源,细细品读,也没有及时的记笔记,但是此书的内容确实精细,从oracle的内部机制到优化器的工作原理再到执行计划的详细解析,确实经典,这也得益于作者谭大牛的多年经验。我一直认为性能调优是体现一名DBA牛逼与否的决定性因素,因为这不仅仅联系到Oracle数据库的知识,还多多少少的联系到操作系统以及主机和存储方面的知识。也需要多年的工作积累才能形成一个良好的调优解决思路。由于本书的经典,博主不得不又在亚马逊上买了一本正版书籍,以此来支持作者(实则是博主记忆力不好,买本放手边可以随时翻翻)。作者的《让Oracle跑得更快2》不知怎样,打算过段时间拜读下。
 
 


--------------------------------------------------------------------------------------------

版权所有,转载请注明作者及原文链接,否则追究法律责任!

QQ:      584307876

作者:    Seven

原文链接:  http://blog.csdn.net/sunjiapeng/article/details/8963857

邮箱:     seven_ginna@foxmail.com
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值