Oracle DBA突击:帮你赢得一份DBA职位
基本信息
编辑推荐
10年从业生涯中无数次被面试和面试他人的经验总结
告诉你哪些技术是重要的,是面试官最看重的
获取稳定的DBA职位的必读宝典
推荐阅读
内容简介回到顶部↑
本书以oracle 10g为基础,由浅入深、从易到难,详细介绍了dba职位所要求的知识结构和实战技能。第1章至第4章是基础篇,包括数据库建模、oracle体系结构、网络结构、备份恢复和使用oem,这些对于刚刚从事dba或者试图转做dba的朋友都是必备知识。第5章至第9章是中级篇,专门讨论性能调整,包括性能优化原理、oracle性能调整发展历程、awr、ash、addm、auto sql tunning等最新的助手工具,并通过大量实例展示技术的综合应用。第10章至第13章是高级篇,主要面向高级读者,高级dba通常要解决架构层面的问题,因此对于这部分读者来说,最重要的是要扩展眼界,能够掌握如何选择最合适的工具而不是最贵的工具。为了跳出单一产品的限制,本书选择了异构互联和安全这两个主题来帮助读者扩展思路。.
本书作者是oracle资深dba,本书不仅融入了作者十年的实战心得和工作经验,还提供了来自于工作现场的大量实例,具有很强的可操作性。..
本书可以作为数据库开发人员、数据库管理员、数据库初学者及其他数据库从业人员的工作参考手册,也可以作为各大中专院校相关专业师生的参考用书和相关培训机构的培训教材。...
本书作者是oracle资深dba,本书不仅融入了作者十年的实战心得和工作经验,还提供了来自于工作现场的大量实例,具有很强的可操作性。..
本书可以作为数据库开发人员、数据库管理员、数据库初学者及其他数据库从业人员的工作参考手册,也可以作为各大中专院校相关专业师生的参考用书和相关培训机构的培训教材。...
作译者回到顶部↑
本书提供作译者介绍
张晓明 Oracle OCP,现用网名“石头狗”,名称来自于《和佛陀赏花去》中的故事;狗会因为人随手丢出的一个东西而追逐,可能是一个骨头、一块肉、一个眼神、甚至是一个石头,警示一定要看清自己在追逐的东西。...
.. << 查看详细
.. << 查看详细
目录回到顶部↑
第一部分 基础篇.
第1章 数据建模 2
1.1 数据建模 3
1.1.1 创建逻辑模型 3
1.1.2 创建物理模型 7
1.2 规范化 12
1.2.1 1nf 13
1.2.2 2nf 14
1.2.3 3nf 15
1.3 如何表示树形结构 16
1.3.1 什么是树形结构 16
1.3.2 邻接模型 19
1.3.3 物化路径模型 26
1.3.4 嵌套集合模型 28
1.4 小结 34
第2章 oracle体系架构 35
2.1 oracle的网络配置 35
2.1.1 oracle的网络架构 36
2.1.2 客户端安装 38
2.1.3 服务器端监听器配置 39
第1章 数据建模 2
1.1 数据建模 3
1.1.1 创建逻辑模型 3
1.1.2 创建物理模型 7
1.2 规范化 12
1.2.1 1nf 13
1.2.2 2nf 14
1.2.3 3nf 15
1.3 如何表示树形结构 16
1.3.1 什么是树形结构 16
1.3.2 邻接模型 19
1.3.3 物化路径模型 26
1.3.4 嵌套集合模型 28
1.4 小结 34
第2章 oracle体系架构 35
2.1 oracle的网络配置 35
2.1.1 oracle的网络架构 36
2.1.2 客户端安装 38
2.1.3 服务器端监听器配置 39
前言回到顶部↑
Oracle DBA炙手可热.
近年来,Oracle DBA职位在IT行业越来越炙手可热,造成这种状况的原因有多方面。在这里仅列举两个最主要的原因,一方面,随着近年来企业信息化进程的深入,企业里各种系统的数据量持续上升,这一切给数据的管理、维护和安全带来了机会和挑战,另一方面,企业间同质化竞争的加剧,也迫使企业加强对于数据的深加工,带动了数据挖掘和商业智能应用的蓬勃发展。数据已经成为企业仅次于人员的最重要资产。下图是2007年、2008年对企业数据量的调查结果(数据来源ITPUB)。这个调查结果显示,2008年年底,超过百万级数据量的企业已经占到65.4%,超过千万级的超过37.1%,而仅仅一年中,超过亿级数据量的企业比2007年增长了5个百分点。
从另一项“每个DBA管理的数据库数量”调查结果(如下图)也可以看到DBA对于企业的重要性(数据来源于ITPUB),约有75%的DBA需要管理5个以上的数据库,其中28.7%的DBA需要管理超过30个数据库。读者可能对这个数字表示惊讶,但事实确实如此。以我本人所在公司为例,我公司从事全国的短信业务,以每省至少两个数据库计算,仅处于生产线的数据库数量就已将近70个,再加上开发数据库、测试数据库,我所领导的DBA团队总共管理的数据库将近80个。这个数量还仅仅是Oracle数据库的数量,还需要加上等量的MySQL数据库,而团队平均DBA数量只有两三个人。
企业数据量的激增有两个结果出现,首先是数据库管理员作为一个专业职位开始受到重视,而在早年间,企业通常不会设置专门的数据库管理员职位,即使有也多是由开发人员或者网管人员兼职管理。
其次,DBA引起人们注意的原因也和目前就业难有关。时至今日,I丁行业仍然是最为吸引毕业生的一个重要行业。虽然IT行业本身也在迅速扩张,对人才需求很旺盛,但是,IT也是中国市场化最充分的行业之一,绝大部分IT企业都要在残酷市场竞争中生存,市场逼着企业将养“闲人”的可能性降至最低。由于每年有大量的毕业生涌入职场,粥少僧多,加上从2008年开始席卷全球的经济危机对就业形势更是雪上加霜。
一方面人才越来越多,另一方面企业对于人才的需求也变得越来越“务实”。企业希望同时拥有扎实的专业理论知识、较强的动手能力、行业经验以及对新知识、新技术新产品的开发能力的综合人才。所以,许多用人单位更喜欢“用熟不用生”,宁可花较多的薪水招一个熟练工,也不愿给初出茅庐的新手机会,双方的博弈就这么持续着……
而在众多IT职位中,OracleDBA以其相对稳定、高薪的职业特点越来越受到IT技术人员的青睐,吸引了越来越多的人员开始进入或者正尝试进入这个领域。按照目前的市场行情(根据2009年北京、上海、杭州等大城市的大致数据),在Oracle数据库从业领域中,初级者的薪水可能在3000元/月左右,中级的DBA薪水可能在5000~7000元/月,而高级DBA的薪水范围可能在8000—20000元/月,至为出色的或者占有重要位置的薪水可能在30000—50000元/月左右(当然很多优秀的公司还会有可观的期权收益和其他奖励),以上数据仅供参考。
DBA市场的繁荣虽然带来了大量的就业机会,但挑战也如影随形。直接结果就是技术门槛越来越高,再加上DBA职位本身对经验要求很高,很多有志青年在初试就被斩落马下,虽然不至于抱憾终身,但也让人感到惋惜。本书试图从面试的角度,对Oracle最重要的内容加以提炼,并综合数年来在这个领域的经验,帮助读者在最短的时间内跨越面试门槛,早日进入DBA行业。
现在市场上、网上随处可见各种各样的Oracle学习资源,从菜鸟级的入门读物到骨灰级I的专题研究应有尽有,和作者当年学习Oracle时的“艰苦贫瘠”环境有天壤之别。从技术来,看,这些书籍内容不可谓不翔实,而且还融合了很多真知灼见和宝贵经验,实属不易。但是Oracle数据库并不能简单地当作一门学科来对待,它包涵了很多人的因素。
读者到底需要什么?当然从书籍中获取知识,能够解决工作中的实际问题是一方面,但这种需要的前提是读者已经有一份稳定的DBA工作,不再为温饱问题揪心。而更多读者是希望通过阅读能够进入这个领域,获得一个职位或者实现职位的升迁。对于这部分读者,更关注的是如何通过学习实现这个目标,或者缩短实现目标的时间。所谓学无止境,一个Oracle数据库已足够研究一生了。但是机会有限,面对心仪的职位,如果确实能力达不到还则罢了,如果有实力却在短短十几分钟的面试中折戟,就实在让人蹉叹了。
学习无捷径,面试有技巧。这是作者在10年的从业生涯中无数次被面试和面试别人经历总结。本书试图以这些经验为基础,告诉读者哪些技术是最重要的,是面试官最看重的。如果套用2/8原则,本书的内容基本覆盖了OracleDBA工作的80%内容,而剩下的20%就要靠读者在工作中的经验积累和技巧提炼。
本书内容与结构
本书的内容分为3个部分:基础篇、中级篇和高级篇。
基础篇。
首先介绍了范式设计和SQL,作为有志于从事Oracle DBA的读者来说,关系数据库理论是必备知识,本书也假设读者具备了这个基础。和其他编程语言(比如C、Java)比起来,SQL语言是非常简单的,因为简单所以最容易被忽视。这一章并不会详细介绍关系数据库的基础理论:相反,这一章会重点介绍几个最经典的SQL问题,也是面试时最容易栽跟头的问题。
接下来介绍了Oracle体系结构、备份恢复、OEM的配置和使用。
Oracle体系结构是Oracle最基础的知识,也是面试时考官最关注的问题。如果不了解Oracle体系结构就说管理数据库纯属妄谈,尤其对于初次接触Oracle的读者,建议反复阅读这部分内容。
备份恢复是OracleDBA工作的重中之重,就像血压计、听诊器对于医生,属于最基本的技能。OracleDBA需要两大技能,备份恢复和性能优化,但二者的重要程度不可同日而语。比较起来,一个性能再差的数据库毕竟也还是可以使用和提供服务的,从某种程度来说,企业还是能够忍受的。解决性能问题的时间相对来说也是比较充裕的,如果实在不会解决,最起码还可以申请硬件升级。但一旦数据库因为故障宕掉,无法提供服务,这是企业不能承受之重。
OEM是Oracle提供的一个管理平台,其好处是通过鼠标点击就可以完成所有的管理工作,不再需要记忆大量的命令。并且Oracle 10g的OEM确实是一个“脱胎换骨”的产品,这一点从Oracle书籍中可见一斑,Oracle 10g以前OEM是一个基于Java的工具,丑陋的界面和缓慢的性能使其饱受责备,也很少会有文档、资料会介绍Oracle 9 OEM。但是Oraclelog重新开发了OEM,放弃了Java界面,转而使用Web界面,其用户亲和力大大增强,因此在Oraclelog的文档和资料中会经常提及。但是OEM的部署伸缩性很强,本书把OEM单独作为一章,详细介绍了各种部署方式。对于初学者来说,这是一个很好的辅助工具,可以大大降低日常工作难度。..
中级篇。
近年来,Oracle DBA职位在IT行业越来越炙手可热,造成这种状况的原因有多方面。在这里仅列举两个最主要的原因,一方面,随着近年来企业信息化进程的深入,企业里各种系统的数据量持续上升,这一切给数据的管理、维护和安全带来了机会和挑战,另一方面,企业间同质化竞争的加剧,也迫使企业加强对于数据的深加工,带动了数据挖掘和商业智能应用的蓬勃发展。数据已经成为企业仅次于人员的最重要资产。下图是2007年、2008年对企业数据量的调查结果(数据来源ITPUB)。这个调查结果显示,2008年年底,超过百万级数据量的企业已经占到65.4%,超过千万级的超过37.1%,而仅仅一年中,超过亿级数据量的企业比2007年增长了5个百分点。
从另一项“每个DBA管理的数据库数量”调查结果(如下图)也可以看到DBA对于企业的重要性(数据来源于ITPUB),约有75%的DBA需要管理5个以上的数据库,其中28.7%的DBA需要管理超过30个数据库。读者可能对这个数字表示惊讶,但事实确实如此。以我本人所在公司为例,我公司从事全国的短信业务,以每省至少两个数据库计算,仅处于生产线的数据库数量就已将近70个,再加上开发数据库、测试数据库,我所领导的DBA团队总共管理的数据库将近80个。这个数量还仅仅是Oracle数据库的数量,还需要加上等量的MySQL数据库,而团队平均DBA数量只有两三个人。
企业数据量的激增有两个结果出现,首先是数据库管理员作为一个专业职位开始受到重视,而在早年间,企业通常不会设置专门的数据库管理员职位,即使有也多是由开发人员或者网管人员兼职管理。
其次,DBA引起人们注意的原因也和目前就业难有关。时至今日,I丁行业仍然是最为吸引毕业生的一个重要行业。虽然IT行业本身也在迅速扩张,对人才需求很旺盛,但是,IT也是中国市场化最充分的行业之一,绝大部分IT企业都要在残酷市场竞争中生存,市场逼着企业将养“闲人”的可能性降至最低。由于每年有大量的毕业生涌入职场,粥少僧多,加上从2008年开始席卷全球的经济危机对就业形势更是雪上加霜。
一方面人才越来越多,另一方面企业对于人才的需求也变得越来越“务实”。企业希望同时拥有扎实的专业理论知识、较强的动手能力、行业经验以及对新知识、新技术新产品的开发能力的综合人才。所以,许多用人单位更喜欢“用熟不用生”,宁可花较多的薪水招一个熟练工,也不愿给初出茅庐的新手机会,双方的博弈就这么持续着……
而在众多IT职位中,OracleDBA以其相对稳定、高薪的职业特点越来越受到IT技术人员的青睐,吸引了越来越多的人员开始进入或者正尝试进入这个领域。按照目前的市场行情(根据2009年北京、上海、杭州等大城市的大致数据),在Oracle数据库从业领域中,初级者的薪水可能在3000元/月左右,中级的DBA薪水可能在5000~7000元/月,而高级DBA的薪水范围可能在8000—20000元/月,至为出色的或者占有重要位置的薪水可能在30000—50000元/月左右(当然很多优秀的公司还会有可观的期权收益和其他奖励),以上数据仅供参考。
DBA市场的繁荣虽然带来了大量的就业机会,但挑战也如影随形。直接结果就是技术门槛越来越高,再加上DBA职位本身对经验要求很高,很多有志青年在初试就被斩落马下,虽然不至于抱憾终身,但也让人感到惋惜。本书试图从面试的角度,对Oracle最重要的内容加以提炼,并综合数年来在这个领域的经验,帮助读者在最短的时间内跨越面试门槛,早日进入DBA行业。
现在市场上、网上随处可见各种各样的Oracle学习资源,从菜鸟级的入门读物到骨灰级I的专题研究应有尽有,和作者当年学习Oracle时的“艰苦贫瘠”环境有天壤之别。从技术来,看,这些书籍内容不可谓不翔实,而且还融合了很多真知灼见和宝贵经验,实属不易。但是Oracle数据库并不能简单地当作一门学科来对待,它包涵了很多人的因素。
读者到底需要什么?当然从书籍中获取知识,能够解决工作中的实际问题是一方面,但这种需要的前提是读者已经有一份稳定的DBA工作,不再为温饱问题揪心。而更多读者是希望通过阅读能够进入这个领域,获得一个职位或者实现职位的升迁。对于这部分读者,更关注的是如何通过学习实现这个目标,或者缩短实现目标的时间。所谓学无止境,一个Oracle数据库已足够研究一生了。但是机会有限,面对心仪的职位,如果确实能力达不到还则罢了,如果有实力却在短短十几分钟的面试中折戟,就实在让人蹉叹了。
学习无捷径,面试有技巧。这是作者在10年的从业生涯中无数次被面试和面试别人经历总结。本书试图以这些经验为基础,告诉读者哪些技术是最重要的,是面试官最看重的。如果套用2/8原则,本书的内容基本覆盖了OracleDBA工作的80%内容,而剩下的20%就要靠读者在工作中的经验积累和技巧提炼。
本书内容与结构
本书的内容分为3个部分:基础篇、中级篇和高级篇。
基础篇。
首先介绍了范式设计和SQL,作为有志于从事Oracle DBA的读者来说,关系数据库理论是必备知识,本书也假设读者具备了这个基础。和其他编程语言(比如C、Java)比起来,SQL语言是非常简单的,因为简单所以最容易被忽视。这一章并不会详细介绍关系数据库的基础理论:相反,这一章会重点介绍几个最经典的SQL问题,也是面试时最容易栽跟头的问题。
接下来介绍了Oracle体系结构、备份恢复、OEM的配置和使用。
Oracle体系结构是Oracle最基础的知识,也是面试时考官最关注的问题。如果不了解Oracle体系结构就说管理数据库纯属妄谈,尤其对于初次接触Oracle的读者,建议反复阅读这部分内容。
备份恢复是OracleDBA工作的重中之重,就像血压计、听诊器对于医生,属于最基本的技能。OracleDBA需要两大技能,备份恢复和性能优化,但二者的重要程度不可同日而语。比较起来,一个性能再差的数据库毕竟也还是可以使用和提供服务的,从某种程度来说,企业还是能够忍受的。解决性能问题的时间相对来说也是比较充裕的,如果实在不会解决,最起码还可以申请硬件升级。但一旦数据库因为故障宕掉,无法提供服务,这是企业不能承受之重。
OEM是Oracle提供的一个管理平台,其好处是通过鼠标点击就可以完成所有的管理工作,不再需要记忆大量的命令。并且Oracle 10g的OEM确实是一个“脱胎换骨”的产品,这一点从Oracle书籍中可见一斑,Oracle 10g以前OEM是一个基于Java的工具,丑陋的界面和缓慢的性能使其饱受责备,也很少会有文档、资料会介绍Oracle 9 OEM。但是Oraclelog重新开发了OEM,放弃了Java界面,转而使用Web界面,其用户亲和力大大增强,因此在Oraclelog的文档和资料中会经常提及。但是OEM的部署伸缩性很强,本书把OEM单独作为一章,详细介绍了各种部署方式。对于初学者来说,这是一个很好的辅助工具,可以大大降低日常工作难度。..
中级篇。
序言回到顶部↑
本书的作者晓明,是一位年轻人。我见过不少年轻人,有亲戚朋友家的孩子,有公司单位里的下属,更多的还是萍水相逢的点头之交。他们中,有许多都具备我们一般人眼里定义的“优秀”:凭借过硬的专业素质干着一个不错的工作,拿着一份不低的收入,是白领,是主管,是项目经理……跟这些年轻人打交道,看着他们衣着光鲜,说话左右逢源,有着我们这一代年轻时不多的“老练”。事儿来了,他们叔叔伯伯的叫着怪亲热,事儿走了,他们也跟着走了。所以对于很多年轻人,我印象不深,然而本书的作者晓明,却是一位我能记得住的年轻人。说来寻常,与他见面,本是碍着朋友的情面,帮他觅一份工作,朋友说他勤奋、踏实、能干。印象中晓明话不多,但喝酒很实在。只可惜由于机缘巧合,晓明的工作我虽然上心,到底也没帮上忙,还是凭他自己的本事挣下了一份工作。直到现在,我看见晓明仍觉的欠他点什么。.
后来几年,每逢节假日,晓明总来看看我,来了兴致,我就把他留下陪我喝几盅。照例是我说的多,他喝的多。喝的到位了,他也接过话茬儿。寥寥的几句,却能品出他的性情,觉出他的踏实。现在有太多年轻人,想去折射一个既有的耀眼光环,而非花一点点时间研磨自己淡淡的韵彩了。
最近一次见面,晓明已成了部门的主管,带领着一个团队,开始独当一面,开始从Interviewee变成Interviewer。我问起他今年就业的形势,他说竞争很激烈。有一些简历很漂亮,笔试很优秀的应试者往往在面试中难以脱颖而出,遗憾离去。他说,能看得出来,这些,年轻人肚里有货,有真本事,可就是缺乏些面试技巧经验,到头来,也成了茶壶里煮饺子。他说,有个想法,把他这个领域的专业知识从面试应用的角度加以梳理,出本书,告诉年轻人应该怎么做,看着年轻人走弯路,他心里着急。..
我知道,这是晓明的善良在作祟,他大概有了不能已于言的冲动。当时他偶然的一句,我还并未在意,只是表示支持,鼓励他做下去。不想今年九月,初稿已成。他高高兴兴地拿来请我指教。我是个地地道道的计算机门外汉,专业术语一概不知,却也从中读出了晓明的真诚。他是在把自己几年摸爬滚打里跌出来的经验拿来与人分享。我知道这对一个技术人员来说意味着什么。我想告诉读到这本书的年轻人,这本书其实更像一张地图,拿着它,我不敢保证你就找到了捷径,但最起码,你少走了很多弯路。
书稿最终付梓之前,晓明央我给他写序。我建议他找个本专业领域里的专家,这样有分量,书的销路也会好些。他说:“卖的是自己的书,不是专家的签名。”听他这样讲,我也就不再推辞。晓明用心,写了本书,我就用笔,写写他这个人吧。算是还当年欠他的那一顿饭。
是为序。...
2009年9月26日灯下
后来几年,每逢节假日,晓明总来看看我,来了兴致,我就把他留下陪我喝几盅。照例是我说的多,他喝的多。喝的到位了,他也接过话茬儿。寥寥的几句,却能品出他的性情,觉出他的踏实。现在有太多年轻人,想去折射一个既有的耀眼光环,而非花一点点时间研磨自己淡淡的韵彩了。
最近一次见面,晓明已成了部门的主管,带领着一个团队,开始独当一面,开始从Interviewee变成Interviewer。我问起他今年就业的形势,他说竞争很激烈。有一些简历很漂亮,笔试很优秀的应试者往往在面试中难以脱颖而出,遗憾离去。他说,能看得出来,这些,年轻人肚里有货,有真本事,可就是缺乏些面试技巧经验,到头来,也成了茶壶里煮饺子。他说,有个想法,把他这个领域的专业知识从面试应用的角度加以梳理,出本书,告诉年轻人应该怎么做,看着年轻人走弯路,他心里着急。..
我知道,这是晓明的善良在作祟,他大概有了不能已于言的冲动。当时他偶然的一句,我还并未在意,只是表示支持,鼓励他做下去。不想今年九月,初稿已成。他高高兴兴地拿来请我指教。我是个地地道道的计算机门外汉,专业术语一概不知,却也从中读出了晓明的真诚。他是在把自己几年摸爬滚打里跌出来的经验拿来与人分享。我知道这对一个技术人员来说意味着什么。我想告诉读到这本书的年轻人,这本书其实更像一张地图,拿着它,我不敢保证你就找到了捷径,但最起码,你少走了很多弯路。
书稿最终付梓之前,晓明央我给他写序。我建议他找个本专业领域里的专家,这样有分量,书的销路也会好些。他说:“卖的是自己的书,不是专家的签名。”听他这样讲,我也就不再推辞。晓明用心,写了本书,我就用笔,写写他这个人吧。算是还当年欠他的那一顿饭。
是为序。...
2009年9月26日灯下


点击看大图






加载中...
