小T导读:作为薪水较为可观的IT职业之一,DBA貌似是一个门槛低、活还少的技术岗位,只要接受过相应的系统性训练,应该就可以成功入门。但想要真正胜任这个岗位,实际却并不容易。DBA的工作到底是怎样的?它的前景如何?想做好DBA又需要具备哪些能力?我们采访了两位有丰富工作经验的DBA和运维工程师,下面一起看一看他们的感悟吧。
DBA的一天是怎样的?
分享人:涛思数据交付工程师董延琼
(注:本章节DBA特指运维DBA)
本人不仅是一个在IT行业摸爬滚打(混吃等死)、兢兢业业(得过且过)十多年的从业者,也是一个有着近十年丰富工作经验的DBA(老油条)。在刚进职场的五年里,我在一家中字头下面的三产做运维,主机、数据库都有接触,后来被朋友“坑”去创业公司玩了三年MySQL,再后来继续给国字头做了三年数据库(Oracle)运维,现在的职场身份是时序数据库(TimeSeriesDatabase)TDengine团队的交付工程师。
郑重声明:那种一杯茶一包烟,一张表导一天的快乐日子,我根本就没经历过。
关于运维DBA的工作,其实和中医治病的理念有点像,在此引用一下魏文侯问扁鹊三兄弟医术的故事,很有意思。对话是这样的:
魏文候问扁鹊:“你们兄弟三人,哪一位医术最精呢?”
扁鹊回答说:“大哥医术最精,二哥次之,我最差。”
魏文候又问:“那为什么我没有听说过他们呢?”
扁鹊解释说:“大哥于病视神,在疾病还未形成时就将其除掉了,大家都没怎么见过他治病,所以他的名声传不出家门;二哥治病,是在疾病刚刚萌芽时就治愈它了,大家都只见到他治一些不严重的小病,所以他的名声也不出于邻里之间;而我通常是等病发展到一定程度才发现,通过针刺血脉、投汤药、割皮解肌来治病。大家都认为我擅长治疗各种疑难杂症,因此闻名于诸侯之间。”
现在估计很多DBA都会有类似的想法。理想的工作就是每天处理一下小问题,调调优,防患于未然,争取将大问题都掐死在摇篮里,剩余时间就是看看资料,提升一下自己,平平淡淡地“混过”每一天。但很不幸的是,如果真的抱着这样的想法,那么你离被裁也就不远了,因为你在老板眼里就是个无所事事,混迹在职场中打酱油的“老油条”。
其实我们换位思考一下也就能理解了,如果你是老板,一个员工整天没啥正事,除了聊天打屁,就是上网看书,系统一年也没有出现过啥大问题,身为老板的你是不是也感觉这人力成本花的有点冤。
而与之相反的另一种情况是,你的员工每天忙忙碌碌,加班处理问题,好几次重大问题都及时有效地解决了,避免造成更重大的损失。你是不是感觉这招人的钱花的还比较值,甚至年终还想发点钱鼓励他再接再厉。
转到价值观积极的一面,如果你是个积极上进(年少无知)的DBA,每天应该怎么安排自己的工作呢?
其实和运维相关的工作,性质都差不多,不管是运维DBA、主机工程师或网络管理员。说到运维,就一定要说一下墨菲定律(Murphy’sLaw),放在运维领域简直太有用了。
墨菲定律主要包括以下四方面:
任何事都没有表面看起来那么简单
所有的事都会比你预计的时间长
会出错的事总会出错
如果你担心某种情况发生,那么它就更有可能发生
对应到运维领域就是:
简单的小问题,可能是某个丧心病狂的程序员的大Bug,一旦忽视,就可能把你尽心维护的数据库搞崩;
备份恢复的时间,永远都超过你所估计的时间;
高危操作通常都会出事(普通操作一样有风险);
如果你担心库挂了没有备份恢复,那么备份大概率不能用。
相应的应对措施则是:
刨根求底,每个小问题都搞清楚,不放弃任何隐患;
把计划时间乘以10,能多长就多长(把泡茶、抽烟、上厕所也算在内);
提前做好预案的预案,提前为某个操作失败想办法;
每天检查备份,条件运行多备几份,反正存储不花自己的钱。
将以上四点贯彻到底,你就拥有了无比充实(累死累活)的运维DBA的一天。当然事情也不是绝对,以上大部分内容都是在讨论传统的关系型数据库,如Oracle、MySQL、PostgreSQL等,对于其它的诸如InfluxDB、TDengine、TiDB等新兴数据库就又另当别论了。
以TDengine为例(当然这种安装包不到MB的Database通常是不配拥有专属DBA的):
安装步骤不到三步
运维命令不超过50个
参数不到个
DBA除了升级、重启,貌似就没啥工作可干了。
DBA的发展已经没前途了吗?
分享人:涛思数据交付工程师董延琼
如果笃定地说数据库DBA没有前途,那可能有些武断了。但某些DBA的前途确实渺茫了,比如DB2和Sybase的DBA们。可能有的小伙伴不太了解这两个产品,要知道,DB2当年的风头还在Oracle之上。不禁要缅怀一句,“舞榭歌台,风流总被,雨打风吹去”。
至于数据库DBA这个新兴的小鲜肉,说不定哪天也会被扫进历史的垃圾堆。但还不是现在。
我们随便打开一个招聘网站,输入DBA就可以看到招聘的职位,薪资范围在15~60K之间,看起来还是蛮诱人的。
从涉及的数据库产品来看,主要以Oracle、MySQL、PostgreSQL为主。仅从招聘信息来看,数据库DBA的“钱途”还是有的。但在这个“盛世”下,有人还在担心数据库DBA的未来发展,不过也是有迹可循的。
年,Oracle推出了全球首款,也是唯一一款自治数据仓库——OracleAutonomousDatabaseWarehouse,它可以用更低的成本为客户提供更高的性能、可用性和安全性,带来现代化的云端体验,为全面迎接自治时代成功奠基。
“自治(Autonomous)”是云技术的一个跨越,它不仅可以在无需人工干预的情况下,对业务运行的设施进行自动更新、调整和修复,还能帮助企业节约管理成本、快速部署项目并显著降低风险,为企业客户带来全新的上云体验。这意味着Oracle已经开始抢它自己DBA的饭碗了。
不止是Oracle这种老牌数据库厂商,新的数据库厂商其实也在进行运维革命了。新兴的时序数据库TDengine在其