- 定价:¥69.00
- POD价:¥69.00
- 评分:
(已有4条评价)
- 电子书:Oracle DBA实战攻略:运维管理、诊断优化、高可用与最佳实践[按需印刷]
- 促销活动:
- 我要买:
- ·如此书原封面缺失,印刷将采用出版社授权的新封面;
- ·如电子文件出现问题,可能延长印制周期,我们将提前与您沟通
基本信息

【插图】

编辑推荐
Oracle数据库运维领域经典著作,盖国强等专家鼎力推荐
作者毫无保留地分享了多年来在运维管理、诊断优化、高可用等方面积累的宝贵经验和最佳实践,包含大量来自实际生产环境的经典案例
内容简介
计算机书籍
《Oracle DBA实战攻略:运维管理、诊断优化、高可用与最佳实践》是目前Oracle数据库运维领域不可多得的一本著作,也是为数不多的既有大量实践应用案例又包含实战方法论的著作。作者根据其多年的运维诊断经验,从数据库如何创建开始,循序渐进地介绍了数据库的启动关闭过程,如何配置监听并连接到数据库,如何对数据库空间进行管理和监控,SGA的调整和优化方法,CHECKPOINT和SCN核心机制,数据库的备份与恢复,数据库性能优化的方法论以及Oracle Data Guard的配置和管理等内容。书中作者结合了大量的真实案例,把自己多年的宝贵经验融入其中,通过一些复杂案例的诊断过程来说明这些简单的原理和知识点,同时,作者并没有简单地停留在案例诊断分析的层面上,而是根据大量案例的经验汇总,把问题的优化、诊断和解决提升到了方法论的层面上,进一步帮助读者知其然,知其所以然。
作译者
目录
推荐序一
推荐序二
推荐序三
前言
第1章 数据库故障的诊断方法与分析思路 / 1
1.1 数据库安装类故障 / 1
1.1.1 安装数据库时容易犯的错误 / 1
1.1.2 无法启动安装界面的解决方法 / 2
1.1.3 安装数据库的最佳实践 / 3
1.2 数据库连接类故障 / 4
1.2.1 检查是否由网络故障引起 / 4
1.2.2 检查是否由主机资源引起 / 5
1.2.3 检查是否由监听故障引起 / 5
1.2.4 检查是否由数据库故障引起 / 6
1.3 数据库HANG类故障 / 6
1.3.1 数据库全局性HANG的处理过程 / 7
1.3.2 数据库局部性HANG处理过程 / 8
1.4 数据库性能类故障 / 9
1.4.1 性能类故障的处理思路 / 9
前言
经常有同行问我:“你为什么要学习Oracle?”
我往往这样回答:“我不喜欢编程,所以经朋友介绍去了一个大型项目团队做测试。在测试过程中用到Oracle,而且每天的实习工资有90块呢!”
我说的是实话。我确实不喜欢编程(至今仍然讨厌编程,熟悉我的人应该都知道),因为我讨厌记程序的语法,讨厌调试代码时出现的各种错误,而且每天90块钱的实习工资在当时确实诱惑力还是很大的。就这样,我阴差阳错地进入了Oracle这个博大精深的世界。
学习了3个月的理论知识后,我自信心暴涨,以为Oracle就那么一回事。被领导派往某客户处安装数据库时,结果连一条切换操作系统用户的命令都不会(su - oracle)。当时真是感觉后背发热,如坐针毡,这才真切地感受到了理论和实践的差距。
我永远记得同事说过的一句话:“工作了,不再像在学校里有老师逼着学习,现在都要靠自己了。”为了生存,我不得不硬着头皮逼自己学习领导交给我的Oracle官方文档,那段时间真的比高考都辛苦。我满脑子都是Oracle,睡觉前都在想Oracle后台进程之间的协调。随着学习的深入,我对Oracle的兴趣也越来越浓。不知从何时起,被动学习变成了主动学习(到今天为止,我每天都至少学习2小时以上),一天如果不打几条sqlplus命令,不看几篇MOS文章就感觉心里空荡荡的。当习惯已成自然的时候,我发觉我已经“入魔”了。
兴趣是最好的老师,我坚信这句话。
值得庆幸的是,我不是纯理论派的Oracle人,我的工作性质决定了我每天必须要处理好几个故障,所以这几年下来,也积累了相当的实践经验。很多同行碰到问题来问我,我基本上都能快速地给出一个处理思路或者解决问题的方向。他们在佩服之余,还送了我一个雅号—周处(双重含义:本人处女座,另外,处理故障快速到位)。殊不知,在从理论迈向实践的路上,我也经历过风雨,熬过很多个通宵。
我目前所在的公司是一家第三方Oracle服务厂商,所以差不多有十几个DBA专门负责维护客户的数据库。“铁打的营盘,流水的兵”,当新员工加入团队的时候,就面临着如何让新员工快速成长的问题,于是我就有了将自己的实战经验写出来的想法,希望可以有助于新人的学习。当新人碰到问题时,我可以说:“嗨,XXX,请参阅《Oracle DBA实战攻略》的第N章第M节,那里有解决问题的思路!”那岂不是很威风?!不知终点的等待,会让人觉得无助。如果哪天故障来了,你能迅速判断出方向,那就行了!接下来的事情,就是使用什么样的技术了!写书不仅可以传授经验,而且也可以系统整理自己的Oracle知识,“赠人玫瑰之手,经久犹有余香”。这种双赢的事情,何乐而不为呢?
我必须承认,严格来说,这本书不能说是我“写”的,太多来自于各位大师的研究成果,这么多年浸淫其中,我已无法一一指明出处。中国人常说“落字为证”。当真正开始要写书的时候,我就变得诚惶诚恐,生怕误导同行。学习Oracle最难的是如何将理论与实践结合起来。本书是我多年来工作经验的总结,书中的内容偏重于实战,并尽可能在每个重要的知识点之后说明需要注意的地方。抛开Oracle基本理论,阅读本书,你将会看到我在故障处理方面的思考过程和方法。将思考过程展现给读者是本书的特色,相信会给读者带来实际的提升。
不得不提一下,至今为止,虽然我仍然很讨厌编程,但是由于我痴迷于Oracle,在研究Oracle的过程中,深深感到自身的编码缺陷,所以我又反过头来再学编程了。因为有编程基础再学Oracle会更加得心应手。
“没有解决不了的技术问题”,这是我们领导说的。在学习Oracle的路上,我一直用它来鞭策和激励自己,与君共勉。
读者对象
本书是为以下读者写作的:
Oracle DBA或者开发人员。
有一定Oracle 管理经验、希望进一步提升的读者。
迫切希望在Oracle数据库领域一展拳脚的初中级DBA。
如何阅读本书
本书覆盖面较广,内容涉及Oracle运维过程中常见故障的诊断、空间管理、性能优化、备份恢复等方面。虽然Oracle是一台巨大的同步机器,但每一部分内容相对独立,读者可以根据需要有选择性地阅读相关章节。由于本书侧重实战,所以数据库故障处理思路、运维过程中的注意点始终贯穿本书。
本书共有10章。第1章为数据库故障的诊断方法与分析思路,主要讲解我在碰到各类故障时的解决思路,这些实战方法源于我的经验,不一定适合所有的DBA,但对大家有一定的借鉴作用。
序言
记得10年前,我信誓旦旦地表示要写本Oracle性能优化方面的书,我们的客户浙江省新华书店表示出版和销售由他们来负责,在持续动笔四、五次之后,还是放弃了,写书也就成了一个遥远的梦。当同事告诉我,周亮在写书的时候,我很兴奋,要求团队全力配合,主要是在时间上给予支持,使其可以相对专心的写作。相信任何一个在第三方维保公司工作的DBA都知道自己的工作角色会使成书不易,高强度、高压力的工作,时间上的不规则,不要说写书了,就是在论坛灌灌水,写写博客都会成为一种奢侈。事实上,大家也可以看到在市场上销售的Oracle书籍,来自于第三方维保服务商DBA的也就只有那么寥寥几本。 特别是来自于第三方维保服务商DBA的著作还不是简单的案例堆积时就会显得更为弥足珍贵,相信本书也会经久不衰,成为DBA进阶的指路明灯。
在OCP、OCM泛滥的今天,DBA这个职业似乎突然从黄金职业变成“烂大街”的职业了。作为国内最为资深的DBA之一,个人认为各位同行完全不需要为这个发愁,DBA确实是一个好职业。数据重要性的持续提高,可以保证DBA这个职业未来是可持续发展的,而且DBA这个职业的高度和广度决定了其转行到其他职业相对也会比较简单。作为一个初中级DBA,关键在于如何让自己进阶,成为一个真正的高级DBA。对于绝大部分职业来说,天赋非常重要,只有天赋出色才可能成为最顶级的专家。对于广大的DBA来说,非常幸运,DBA是一个不是很看重天赋的职业,只要你足够勤奋,有足够的经验积累和适当的指导,你就可以成为业内顶级的专家。
知识、经验和方法是DBA进阶的不二法门,任何一个优秀的DBA都是知识,经验和方法的综合体。当方法统领知识和经验的时候,你就可成为一个顶级DBA;当经验统领知识和方法的时候,你就可成为一个优秀的DBA;当你仅仅拥有知识和少许经验时,你就只是一个初级DBA或者是一个入门者。我始终认为Oracle或者数据库是一门特殊的学问,大家知道一般知识的学习,你掌握并精通了某个章节的内容,很可能你就能完成很多实践性的工作。但Oracle数据库不同,必须要通晓所有章节并且在章节之间可以进行有机关联的时候才可以认为在知识领域入门了,才可以完成一些基础性的实践性工作,所以Oracle DBA的学习周期相对比较长。
美创科技一直以DBA进阶速度快而著称,作为本书出版的礼品,透露一些商业机密也在所不惜,接下来就和大家分享一下我们团队DBA的成长过程。
第一阶段:知识学习阶段。在DBA进阶的漫长过程中,勤奋是任何一个优秀DBA的必备素质。作为商业团队,当然也无法忍受员工漫长的学习周期,所以超过高考和考研究生的学习压力必然是初学者面临的场景,对于初学者,我们会为每个人都分配一个老师,并为其制定学习计划,监控学习进度,随时沟通交流学习成果。为了防止学习基础不扎实,我们禁止一年以内的工程师阅读任何中文书籍,甚至不鼓励Google和Metalink的使用。作为一个重要分享,学习Oracle最重要的学习材料自然是Oracle Concept文档了,当然,在初学阶段对于Oracle Concept会比较模糊。Oracle Concept是DBA进阶的持续学习材料,即使到了顶级DBA,也需要持续针对Oracle Concept进行学习。
第二阶段:受控工作阶段。作为支持甲方DBA的团队,出现在甲方现场的同事必须扮演专家的角色,所以我们不惜成本以老带新在客户现场积累经验,我们极为重视工程师的第一次独立亮相,事先事后都会做好周密计划,确保其圆满完成任务,从而树立在用户层面的专家形象。在圆满完成第一次客户现场任务之后,就算是入门了,之后会持续地分配受控的现场任务,也会跟随老工程师一起处理一些复杂问题,一直到工程师基本可以独立处理问题为止。
第三阶段:经验积累阶段。在工程师可以独立工作之后,取消师徒制,开始进入独立工作阶段。作为一个支持甲方DBA工作的DBA,每天都要处理大量问题,会快速积累大量经验。对于我们的团队来说,在不担心经验积累的情况下,决定DBA能否进阶的关键在于是否进行持续的学习和案例的总结分享。这个时候,Oracle Metalink就成为一个巨大的资源库,对于一个具有持续学习愿望的工程师来说价值非凡。在这个阶段,我们会鼓励工程师看一些中文出版物,主要是学习一些解决问题的思路并积累一些经验。事实上,在经验积累阶段的前期,依然不鼓励员工看一些内核研究相关的书籍和文章,人的精力是有限的,过早地接触这些内容对于学习成长并没有太大的好处。我们不鼓励工程师在遇到无法处理的问题时就搜索Metalink和Google,而是鼓励通过团队内部沟通和支持来解决问题。Metalink不会带来处理问题的方法,团队内部沟通和支持可以带来处理问题的方法,对于处理方法论的形成极其重要。在精通Google和Metalink搜索时,Google和Metalink对于工程师是一个极其高效的助手,但也正是因为这个助手过于高效,于是养成了一大批Google DBA或者Metalink DBA在分析问题之前就开始从Google和Metalink寻找答案,如果不改变工作作风,这些DBA几乎永远无法成长。
第四阶段:化蝶阶段。客户的持续信任会让你介入客户IT运维的全方位工作,你可能会参加客户的各种技术会议、客户各种IT相关系统的上线咨询、客户各种运维方法和规范等,这个时候客户是你学习的一个强大驱动力,要求你脱离Oracle的范畴来全方位地思考问题,之前培养的持续学习和快速学习能力是支持你完成这个阶段的重要保证。
除了技术因素之外,成为优秀DBA还有些其他决定性因素。责任心、抗压、果断、沟通是成为优秀DBA的主要非技术因素,没有这些因素的支持,即使技术水平再好也很难成为一个可以依赖的优秀DBA,至少无法成为一个支持甲方DBA工作的优秀DBA。
作为一个从事Oracle DBA近15年的资深工程师,看过很多的Oracle著作,绝大部分书籍都几分钟翻完就不会再去看了。目前市场上主要有两类Oracle书籍,适合于初学者的书籍和适合作为资料翻阅的书籍,很少有书可以为DBA进阶提供较大帮助。拿到周亮这本《Oracle DBA实战攻略》,内容还是相当震撼的,充斥在纸张中的经验和处理方法论贯穿全书,点到即止的描述使其内容异常充实,或者说是具有海量的内容。很显然,这不是一本短时间可以看完的休闲作品,需要大家像品尝Oracle Concept一样“细嚼慢咽”,这是一本少见的Oracle DBA进阶的作品,非常适合于中高级DBA进阶使用。
今年是周亮从事Oracle DBA职业的第7个年头,DBA从业者的黄金年龄,让我们跟随周大师的步伐开始Oracle DBA的进阶成长。对于初学者或者初级DBA而言,周亮的成长途径完全可以跟随和学习,对于遇到进阶障碍的中高级DBA而言,周亮的这本书也可以在一定程度上帮助你们完成DBA进阶突破。
柳遵梁
杭州美创科技有限公司创始人
资深安全专家,容灾专家
Oracle 8 OCP
推 荐 序 二
印象中很少帮人写序,提笔后才发现这也不是件轻松的事情。
初识周亮应该是2012年10月到杭州出差,经一个杭州的同事介绍认识,虽然是第一次见面,但是聊得却很投机:一方面大家都是这个圈子里的人,虽然之前没有打过交道,但是有着很多共同的朋友,因此感觉比较亲切;另一方面是我们两个的相似点非常多,因此共同语言也就比较多。大家都是Oracle的DBA,都对Oracle技术感兴趣,也都在Oracle的圈子内积累了不少经验,即便是只聊技术,也能找到说不完的话题。更何况我们两个人的工作性质几乎完全一样。我们两个目前都是从事乙方运维的工作,我是2011年开始从事Oracle数据库的乙方运维管理工作的,而周亮的乙方运维经验则比我长得多,如果从这个角度讲,他的Oracle数据库运维经验要比我丰富得多,这无疑也使我们增加了更多的共同话题。于是当天晚上,从Oracle数据库聊到了具体的案例,从工作聊到了客户,从技术聊到了团队,就差谈人生和理想了。
也就是在那次聊天过程中,我了解到他正在写书,而且已经动笔几个月了。当时Eygle的新书刚刚出版不久,而我的几个好友也恰好都在写书,所以这方面的话题也比较多,也就多聊了几句,当时对他的新书有了一个第一印象:这本书是根据案例和实践经验整理而成的,当时给我的感觉应该和DBA手记系列比较相似。
媒体评论
我观其书,如空间管理章节,于各点结合案例分头击破,渐趋空间管理之全局;又如性能优化章节,各个角度、列表行文,既可作思路借鉴,又可作开发运维警示,实践意义彰显。愿读者能从作者之成长、经历借鉴学习,观其书、识其人、学其思,从而提升自身,如此则作者分享之愿达矣。
我与作者相遇于杭州,其身材魁伟,肤色黝黑,声如洪钟,杯到酒干,其书实如其人。集句二以赠作者:英雄出自草莽,佳作经年始成!
——盖国强 ( Eygle ) 云和恩墨创始人、Oracle ACE总监
周亮的这本书就是Oracle第三方服务团队的工作写照,他和整个团队每天需要支持几百套数据库的故障应急处理,每个数据库的数据量在100GB至10TB之间,每个数据库都有接近7×24小时的运行要求;一般来说,终端客户管理员能处理百分之八十以上的日常运维问题,当他需要联系我们服务团队时,故障问题既复杂又紧急,故障处理难度也远远高于运维问题。
这本书不是简单的Oracle概念知识汇总,也不是简单的典型案例汇总,而是侧重于日常实战经验的汇总,如果你是位初级管理员,这本书能大大加深你对基本概念的理解,快速掌握实战方法论、实战知识点和实战分析技巧;如果你是位中高级管理员,能让你透彻理解数据库启动的内部过程、数据库文件管理知识点,我相信它能让你视野大开;如果你是位资深的高级管理员,在书里你能看到或许只有大型数据库才会面临的大数据量高并发问题,高并发数据库带来的性能问题,相信能带给你不少启发。
——闻建霞美创科技技术总监
与周亮共事已有7年多的时间了,有幸见证了作者从一名Oracle初学者一步步成长为大师的成长过程。作者从接触Oracle以来一直对Oracle保留着极大兴趣,兴趣是最好的老师一直引导着作者在Oracle技术领域不断探索前行。本书记录了作者在DBA工作中的一些经验总结,希望能够为DBA们提供一些参考与借鉴。更期待作者随后能出版更多的大作!!!
——徐荣星资深数据库专家,容灾专家