今天分享我DBA生涯中的几件小事情,希望这些往事能对大家有所启发。
第一件事是你选择什么数据库作为主攻方向,我工作的最初几年时间里,并没有对Oracle情有独钟,因为那时候风靡中国的数据库是VAX/RDB,DBASE/FOXBASE,VAX/RMS这些现在大家可能都不太看得见的数据库,连INFORMIX的名气可能都比ORACLE大,一些银行已经用它做电算化系统了。
除了Oracle以外,我写过RDB、TME、RMS、FOXBASE和INFORMIX等数据库的程序,不过最后选择做职业DBA的时候,还是选择了Oracle。选择Oracle不是因为Oracle好用,而是觉得Oracle太难用了,需要有专家支持才能用好。因此做Oracle DBA有机会赚钱。而INFORMIX这样的数据库太开发者友好了,很多开发人员经过简单的学习也能玩得转,去做IFX的DBA今后肯定不如Oracle DBA钱景好。对于现在年轻的DBA来说,这个故事说不定会有所启发,很多人都在选择国产数据库的时候,是不是也要摈弃一些固有的偏见,从今后职场上更好赚钱的产品入手呢?如果你想在一个相当长的时间里从事DBA职业,一定不能选择研发人员也可以掌握的数据库。另外一方面,出了问题大多数情况下只能通过改SQL,改表结构解决问题的数据库,也要慎重选择。最后一点,一个只能在原厂处找到DBA工作的数据库更是要慎重选择的,这种产品今后DBA钱景如何十分难说。
第二个问题是通过什么平台去提升自己的能力。在二十多年前我学习和研究Oracle数据库的时候,并没有闷头看书。90年代末的时候我就在公司和宿舍都安装了ADSL,基于良好的网络条件,我也成了中国第一批MSN、ICQ等IM用户,后来也拥有了五位数的QQ号。通过这些工具我结识了不少国内外的Oracle拥趸,随着时间推移,他们中的很多人都成了O记的顶级专家。和大量的高手交流是成长的关键,当年的ITPUB,OTN,oracle.com.cn,oracleracsig.org等都是很好的交流平台,通过这些平台,不仅和国内的DBA交流,还和国外的DBA交流。交流的圈层决定了技术的上限。现在的微信群交流在交流技术问题上总觉得不如当年ITPUB这样平台专业,也少了与ICQ和MSN上的国外高手交流的机会。知乎这样灌输知识的平台缺乏思想的碰撞。
一些年轻的DBA朋友学习数据库技术总是迷信各种培训,希望找个高手跟着学,实际上培训可能只能带你入门无法让你成为真正的高手。和水平相近或者略高于你的朋友交流才会对你更有帮助。随着你的技术提升,不断提升交流圈层,会让你持续进步。如果你只有提问的能力,没有交流的能力,那么你还是无法进入快速上升通道的。只有你不仅仅能够提问,还能够通过自己的思考和高手交流你的观点,你才有可能缩小与高手的距离。
另外一个体会是,如果你真的想成为高手,写文章是快速提升数据库技术的好办法,写作可以帮助系统思考,帮助归纳总结,从而让你在日常工作中的各种体会得到系统性的梳理。实际上理论结合实践是数据库技术提升的不二法门,要想让实践与理论很好地结合,需要经常对实践工作进行体系化整理,从中总结出理论性的东西。写文章是完成这项工作最佳的途径。
有些朋友怕写文章,总觉得脑子里有东西但是写不出来,实际上写不出来说明你还是没有理解透彻,无法融会贯通。写作的时候能够发现你在哪些地方还没有搞透,逼着你再去思考和学习,这样才能更好地提高自己的能力。
上面的三个问题,我也将会在8月22号DTCC的DBA之夜上和大家更细致地分享,欢迎大家届时和我直接探讨。