Oracle DBA实战攻略:运维管理、诊断优化、高可用与最佳实践——序

印象中很少帮人写序,提笔后才发现这也不是件轻松的事情。
初识周亮应该是2012年10月到杭州出差,经一个杭州的同事介绍认识的,虽然是第一次见面,但是聊得却很投机:一方面大家都是这个圈子里的人,虽然之前没有打过交道,但是有着很多共同的朋友,因此感觉比较亲切;另一方面是我们两个的相似点非常多,因此共同语言也就比较多。大家都是Oracle的DBA,都对Oracle技术感兴趣,也都在Oracle的圈子内积累了不少年头,即便是只聊技术,也能找到说不完的话题。更何况我们两个人的工作性质几乎完全一样。我们两个目前都是从事乙方运维的工作,我是2011年开始从事Oracle数据库的乙方的运维管理,而周亮的乙方运维经验则比我长得多,如果从这个角度讲,他的Oracle数据库运维经验要比我丰富得多,这无疑也使我们增加了更多的共同话题。于是当天晚上,从Oracle数据库聊到了具体的案例,从工作聊到了客户,从技术聊到了团队,估计当天如果在聊的晚一点,就差谈人生和理想了。
也就是在当晚的聊天过程中,我听说他正在写书,而且已经动笔几个月了。当时Eygle的新书刚刚出版不久,而我几个熟悉的朋友也恰好都在写书,所以这方面的话题也比较多,也就多聊了几句,当时对他的新书有了一个第一印象:这本书是根据案例和实践经验整理而成的,当时跟我的感觉应该和DBA手记系列比较相似。
之后的几个月,听说他仍然在笔耕不缀。乙方工作的辛苦自己是深有感触的,能在日常繁忙工作的基础上,把一些知识要点记录下来已经是很少有人能做到的事情了,而还能坚持不断的写作,这绝对是需要毅力才能完成的工作。因为写作和写BLOG是不同的,虽然二者可能都是需要每天挤出半个小时到一个小时的时间,前者要求的整块的时间,否则难以展开思路,而对于后者而言,如果有了什么思路或者碰到了什么案例,可以用很短的时间先记录下来,随后也可以通过零碎的时间进行实验和验证,说起来似乎是同样的一小时时间,前者的坚持和付出要远远高于后者。
到了最近他成书后邀请我写序,我才发现他的书并不是简单的案例集合,而是存在一条主线将各个知识点串联在一起,这在成书的困难程度上就要比DBA手记之类的案例集合至少上了一个台阶。
从严格意义上讲,我没有写过书,只是写过文章。虽然参与了《Oracle数据库性能优化》以及《DBA手记》等书的编写,但形式仍然是供稿方式。这几本书的最大特点在于没有一条明确的主线来穿起所有的内容,书中的各个章节独立,因此成书相对来说要容易得多。而如果要独立写一本书,就需要考虑完整的架构、背景知识、贯穿全书的主线、以及选取的案例是否合适等等,显然这要比纯案例的组合困难得多。而即便是案例类的书籍,成书过程也并不简单。先不说素材、案例的选取,知识点深入程度的把控这些对于技术含量要求很高的事情。只说整体书籍编写工作完成后,对全书的修订和审阅工作也不是一件轻松的事情。因为经历过几次这种不断的修订的工作,每次都是一个很痛苦的过程,以至于当现在为止还记忆犹新。而如果要我独立写一本书,要有明确的主线,要有详尽的基础知识介绍,要覆盖Oracle的主要体系结构点,还要有大量深入的案例作为佐证,最好还要有一些尚未公开的研究结果,光想想就已经足够了。因此,我一直很钦佩那些能独立完成一本书的人,无疑作者也是令我钦佩的大牛中的一员。
作者令我钦佩的不仅仅是技术上的积累,也不只是我提到的为了成书而付出的艰辛,而更令我钦佩的是其对技术几年如一日的持续专注的态度。最近微博上还有人讨论是否应该写书。国内的技术和出版的大环境,决定了靠写技术书籍赚钱绝对是Mission impossible。即使是Eygle这种几乎一年一本的速度,且每本都很畅销的情况,也完全不足以通过写书养活自己,那就更不用说其他人了。通过写书来出名也越来越难,其实很多人是因为作者本身的名气才买的书。因此有位网友说得很有道理,别人知道你是因为你做了什么,而不是你写了什么。因此想要靠写书来成就自己的名气也不是件容易的事情。在现阶段无论是收名还是获利,想通过写书的方式来实现,其投入产出比都非常不好的。但是也正因为如此,以名利为目的作者越来越少,而写书更多的变成了一些有技术追求的人,把自己的技术沉淀、总结和提升的过程。大浪淘沙始得金,我们欣喜的看到,近期出版的和即将要出版的几本Oracle书籍,无不是业内专业人士的呕心力作。而作者的这边《Oracle DBA实战攻略:运维管理、诊断优化、高可用与最佳实践》正是其中之一。
作者根据他多年的运维诊断经验,从数据库如何创建开始,循序渐进的介绍了数据库的启动关闭过程,如何配置监听并连接到数据库,如果对数据库空间进行管理和监控,SGA的调整和优化方法,数据库的CHECKPOINT和SCN机制与备份恢复,数据库性能优化的方法论以及Oracle Data Guard的配置和管理。仅看目录似乎都是非常基础的内容,似乎这是本针对Oracle初学者的入门级书籍,其实恰恰相反,所谓大道至简,能把最基础的东西写出新意并加入自己的理解本身就是一件非常见功底的事情。而且作者结合了大量的真实案例,把自己多年的宝贵经验融入其中,通过一些复杂案例的诊断过程来说明这些简单的原理和知识点,这正是作者高明的地方。更何况作者并没有简单的停留在案例诊断分析的层面上,而是根据大量案例的经验汇总,把问题的优化、诊断和解决提升到了方法论的层面上,这就不仅仅是通过几年经验积累就可以轻易达成的,必要要求作者不断的思考、分析、归纳和验证,才能上升到理论指导实践的层面。
最后希望周亮的《Oracle DBA实战攻略:运维管理、诊断优化、高可用与最佳实践》一书,可以帮助更多的数据库技术爱好者解决日常碰到的技术困难,给那些以日常操作入门的运维人员指出一条深入学习提高的道路。

This entry was posted in BOOKS. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *