搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
Oracle优化日记:一个金牌DBA的故事
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787115230713
  • 作      者:
    白鳝编著
  • 出 版 社 :
    人民邮电出版社
  • 出版日期:
    2010
收藏
编辑推荐
  《Oracle优化日记:一个金牌DBA的故事》以作者亲身经历的一个大型优化项目为原型,用日记的形式讲述了项目实施的全过程。生动曲折的项目故事,扣人心弦的尖峰时刻,一一再现了几个经验丰富的老DBA分析数据库性能问题时的真实场景。书中不仅剖析了优化过程,还展现了在优化项目中处理纷繁的关系的技巧和方法。伴随精彩的故事情节。作者还介绍了DBA常用的优化技巧,使读者在大呼过瘾的同时。亦能分享到金牌DBA的宝贵经验。
  数据库优化一直是DBA感到十分高深的问题,很多DBA学习了大量优化技术,参加了大量培训,但是仍然感觉在实际工作中无从入手。实际上,在数据库优化工作中,比技术更为重要的是方法。
  金牌DBA精彩纷呈的经历,86个优化技巧活学活用,培养多种能力,保障职场成功,恩墨科技创始人、Oracle ACE Director盖国强倾力推荐。
展开
作者简介
  白鳝,本名徐戟,国内资深Oracle数据库优化专家,从事Oracle数据库应用开发、性能优化工作超过15年。曾供职于DEC、赛格集团、长天集团、联想集团等国内外知名企业,担任过应用体系总监、技术总监等高级技术职务。曾主持开发了国内第一套联机实时计费系统,国内第一套三检合一的检验检疫综合业务系统。1999年起致力于Oracle数据库性能优化等方面的研究,参与了大量性能优化项目,积累了许多实际工作案例。2008年起,在博客上连载《DBA日记》,希望将自己在Oracle数据库应用领域的10多年的经验与广大读者分享。
展开
内容介绍
  《Oracle优化日记:一个金牌DBA的故事》是一本介绍Oracle数据库优化方法的书,以一个实际的大型优化项目为原型,用日记的形式记录了一个优化小组的DBA 如何从纷繁的头绪中找到突破口,进而完成了一个看似不可能完成的任务的历程。在日记之间,作者还穿插了优化小技巧、每日点评等,总结了数据库优化常用的方法、工具和技巧。另外《Oracle优化日记:一个金牌DBA的故事》第一次详尽地披露了Oracle数据库内部存储结构,并公布了部分代码,对于有兴趣研究数据库内部存储结构或者编写dul工具的读者有一定的参考价值。
  《Oracle优化日记:一个金牌DBA的故事》适合Oracle数据库管理开发人员阅读。
展开
精彩书评
  “我知道很多DBA都有自己收藏的一本秘籍,包括处理各种Oracle问题的必杀术,其中关于性能调优的特别多。可惜这里面有很多道听途说的成分,或者知其然而不知其所以然。反观此书,有很多活学活用的例子;对于各种技巧的适用范围,也尽量阐述清楚。从最后成书的内容看,作者还是比较负责的。书中的指令,大都经过上机验证。”
  ——Ben Wang,澳大利亚知名Oracle技术高手
展开
精彩书摘
  在Metalink文档285270.1里对死锁检测做了一个简要的介绍,看过这份文档,再参考John的提示,仔细想想,在做死锁检测的时候,确实是必须持有parent enqueue hash chains闩锁的,因为死锁检测(DLD,DeadLock Detection)需要通过对每个资源做一个检查,才可能发现哪些资源出现了死锁。而如果对每个资源都进行一次死锁检查,那么开销就太大了,因为在一个大型系统中同时有几十万甚至上百万个资源都是很正常的。每个资源上面都有三条链:一条是持有者链,链接了所有持有这个资源的锁的情况;一条是等待转换状态链,链接了所有等待转换锁状态的请求;还有一条是等待锁定链,链接了所有等待锁的请求。如果不出现死锁,那么这三条链和资源的状态在很短的时间内肯定会发生变化,而死锁出现时,相关的资源肯定在很长时间里都不会发生变化。,因此在检测死锁时,只需要对那些从上回检查后状态一直没有发生过变化的资源进行检查就可以发现死锁了。为了获取这些数据的一致性视图,在做死锁检测时就必须持有这个门锁。死锁检测本身很快,所以一般情况下不会引起问题。不过,如果出现了死锁,要做死锁情况转储时就可能会出问题。系统状态转储或者进程状态转储被挂住的可能性也是存在的,这很可能是由于另外一个bug引起的,无论哪个bug,关闭转储应该可以解决问题。由于在进程状态转储时,死锁检测会话会持有parent enqueue hash chains父闩锁,所以在这个时候,任何需要申请锁资源(包括内部锁)的操作都需要等待。由于游标分析需要申请library cache lock,所以在这种情况下,游标分析无法进行。部分会话会报ORA-600 kksscl-inf-inl-loop故障。
  看看手机,已经是早上6点多钟,澳大利亚已经是早上8点多了,Ben可能已经起床。Ben有早上上网阅读早新闻的习惯,希望能碰到他,和他聊聊这个问题。打开Yahoo Pager,发现:Ben已经在线了。Ben听了问题的叙述后,也立即说这是Oracle的一个顽疾,虽然出了很多补丁,但是还有一些问题没有解决。.Ben在Oracle工作快10年了,作为澳洲Oracle的救火队员,他处理过10多个类似的案例,因此他十分肯定地说我的猜测是对的。同时,我从Ben那里拿到了一分关于bug2235386的资料,这份资料比我在Metalink上看到的要详细得多。从中,我有了十分惊人的发现。
  bug 2235386里面详细介绍了ORA.60导致系统挂住的情况,里面的内容与我和John的想法基本一致,但是patch 2235386并没有解决这个问题。要解决这个问题,需要在做进程状态转储之前最好释放闩锁,而这是不可能的,因为这样会导致进程状态转储或者系统状态转储的信息不准确。因此在这个补丁里引入了10027和10028两个事件,通过设置这两个事件来开启或关闭进程状态转储或者系统状态转储。原来如此,patch 2235386并不能解决问题,而仅仅提供了解决问题的方法,因此Oracle的工程师仅仅是打了补丁,而没有解决问题,必须打完补丁后,通过设置10028事件关闭系统状态转储,才能解决这个问题。在死锁出现时,进程状态转储对于客户来说是没有多大用途的,因此关闭后对客户分析问题影响不大。
  忙完这些已经快9点了,虽然昨晚一夜没怎么睡,不过现在一点都没有觉得困。上午一上班,我就和李工通了电话,在电话里,把我的发现和他进行了沟通。李工也基本认同了我的分析,决定先找一个本地网来做做实验,如果能够解决问题,再全面推广。原本定于今天下午的关于RAC的交流,由于他们有事,押到明天进行。看样子今天可以休息一下了。
展开
目录
5月11日 出发
今日点评  
优化小技巧 性能 优化项目
优化小技巧  优化常用知识1:诊断事件
5月12日 开始工作和CPU瓶颈
今日点评
优化小技巧 数据库 优化的步骤
优化小技巧 按部就班是成功的关键
优化小技巧  优化常用知识2:常用诊断事件清单
5月13日 联席会议
今日点评  
优化小技巧  优化流程
优化小技巧 转储文件内容1:数据文件
5月14日 聚会
优化小技巧 系统级 优化
优化小技巧 转储文件内容2:转储对象的段头
5月15日 业务支撑系统出问题了
今日点评  
优化小技巧 索引监控
优化小技巧 性能 优化时常用的工具
优化小技巧 转储文件内容3:转储控制文件
5月18日 Top SQL
优化小技巧 查找Top SQL
优化小技巧 索引设计的一些建议
优化小技巧 什么是索引的集群因子
优化小技巧 转储文件内容4:转储控制文件
5月19日 南京的死锁问题
今日点评  
优化小技巧 Oracle的死锁
优化小技巧 几个常用的与锁相关的脚本
5月20日 凌晨的邮件通知短信
今日点评  
优化小技巧 /10028事件
优化小技巧 PL/SQL 优化工具profiler
5月22日 ODS系统和RAC
优化小技巧 以开放的心态做服务
优化小技巧 全局热块冲突
优化小技巧 PL/SQL中数据类型的性能
5月23日 实时ODS
今日点评  
优化小技巧 ODS系统中Oracle数据库设计管理要点
优化小技巧 ODS系统中的开发要点
优化小技巧 集合类型的效率
5月24日 任务提前
今日点评  
优化小技巧 占位操作与开关操作
优化小技巧  优化计划调整
优化小技巧 自动段存储空间管理1
5月25日 倾斜的索引字段
优化小技巧 倾斜字段的处理
优化小技巧 自动段存储空间管理2
5月26日  优化方案
优化小技巧  优化中的排队效应
优化小技巧 DB Cache调整方案如何制订
优化小技巧 自动段存储空间管理3
5月27日 无奈
今日点评
优化小技巧 临时表空间和排序
优化小技巧 undo表空间和回滚段
5月28日 BBED的妙用
今日点评  
优化小技巧 如何启用BBED
优化小技巧 模拟ORA-8102及处理过程
优化小技巧 如何计算数据块中某个字段的位置
优化小技巧 如何计算索引块中某个字段的位置
优化小技巧 自己动手写一个dul
优化小技巧 bootstrap$的访问
优化小技巧 unloadBlock函数
优化小技巧 unloadRow函数
5月29日 突破困局
优化小技巧 查找“热的”缓冲区的常用脚本
优化小技巧 什么时候需要使用多缓冲
优化小技巧 AIX操作系统 优化要点
5月30日 账务处理
今日点评  
优化小技巧 表访问的方式
5月31日 电脑坏了
今日点评
优化小技巧 通过OEM录像采集数据
优化小技巧 调整游标相关参数
6月1日 ORA-4030和内存泄漏
今日点评
优化小技巧 如何分析ORA-4030
6月2日  优化方案
今日点评  
优化小技巧 一个提供参考的 优化方案
优化小技巧 游标的共享
6月3日 拆分大型SQL
优化小技巧 拆分复杂SQL
6月4日 TNS-12535
今日点评  
优化小技巧 防火墙和SQL*Net
优化小技巧 跟踪SQL*Net
6月5日 休息时总是最忙的
今日点评
优化小技巧 使用hanganalyze
优化小技巧 重做日志文件 优化的要点
6月6日 实施 优化
今日点评  
优化小技巧 升级维护窗口的确定
优化小技巧 回退预案的作用
6月7日 突发事件
今日点评
优化小技巧 使用HINT 优化SQL
6月10日 使用自动采样比例引发的故障
今日点评  
优化小技巧 关于表分析比例的判定
优化小技巧 AIX下使用vmstat分析I/O问题的小技巧
6月11日 阶段总结
今日点评  
优化小技巧 STATSPACK报告在 优化项目中的作用
优化小技巧 STATSPACK报告头的解读
6月12日 阴谋
今日点评  
优化小技巧 分析STATSPACK的负载数据
优化小技巧 重要的命中率指标
6月13日 演戏
今日点评  
优化小技巧 Top 事件
优化小技巧 常见事件清单
6月14日 转机
今日点评  
优化小技巧 STATSPACK报告分析之DB Cache1
优化小技巧 STATSPACK报告分析之PGA
6月15日 青岛
今日点评  
优化小技巧 如何 优化闩锁
6月16日 SQL 优化效果
今日点评  
优化小技巧 如何转储数据块
优化小技巧 通过树转储来分析索引碎片
6月17日 完美的效果
今日点评  
优化小技巧 I/O系统 优化的经验与体会
优化小技巧 STATSPACK报告之I/O 问题分析
6月18日 准备收工
优化小技巧 STATSPACK报告分析之DB Cache2
6月19日 ORA-1591
今日点评
6月20日 好奇心惹的祸
优化小技巧 STATSPACK报告分析之共享池分析
7月20日 重回沈阳
优化小技巧 如何评估 优化效果
优化小技巧 STATSPACK报告分析之undo分析
优化小技巧 STATSPACK报告分析之锁分析
7月21日 课堂风波
优化小技巧 平均事务响应时间的计算
优化小技巧 STATSPACK报告分析之闩锁分析
7月22日 世博园一日游和心想事成
优化小技巧 STATSPACK报告分析之Top对象
优化小技巧 STATSPACK报告分析之Top SQL
7月23日 漫长的一夜
优化小技巧 本案例的启示
后记,也算结束语
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证