如果你想成为一名优秀的数据库管理员(DBA),那么你需要掌握一些基本的数据库知识和技能,比如数据模型设计、SQL语言、备份恢复、性能优化等。但是,如果你想在Linux环境下工作,那么你还需要了解Linux系统的特点和操作方法,以及一些专门针对Linux的数据库管理工具和命令。本文将为你介绍Linux下的DBA工作职责、技能要求和实用技巧,帮助你提高你的数据库管理水平和效率。
运维 DBA 的四大纪律
一、一切行动听指挥
甭管你是团队,还是团伙,要求都是一样的,一切行动听指挥!听谁的指挥?听运维经理、运维总监、CTO、CEO 的指挥。
当年墨子当钜子的时候,手下 180 人,训练有素,同心同德,“赴火蹈刃,死不还踵”。这样的团队来搞运维,就具备了基本要求。
运维团队里,最忌讳的是具有三脚猫功夫、蔑视前辈经验、心浮气躁的人,遇到这种人 Team Leader 要及时校正甚至剔除,否则这就是你背锅的最大来源。我被坑得比较惨的几次,都是因为团队里有这样的人,想动手的时候不够坚决,最后祸起萧墙,只能弓着腰给客户和领导死命的批评。这叫什么,一颗老鼠屎坏了一锅汤。
所以,选择运维成员时,要选那种踏实、机敏、上进、沟通能力强的年轻人,用心培养,往往事半功倍。
二、两条红线不能犯
所谓红线,就是天条。第一个是按指挥再行动,其实是活的,可能是要请示和汇报的。这第二条是死的,就像高压线一样,碰到就完蛋了。
所有变更要做到:凡变更必有方案,凡方案必经过评审方可执行,凡执行必严格遵循方案,重大变更需要有人核实。
这一条其实是为了规避误操作,误操作就是人为故障。人为故障在所有故障中的占比一直是很高的。
所有影响到业务的故障,不管是硬件故障、软件故障还是人为故障,必须第一时间通知到部门经理。
这一条是为了规避,技术人爱钻牛角尖,看见故障钻进去就出不来,贻误战机,把快速恢复业务的大好时机给浪费了。
三、假日前容量规划
记得某一年有一次团队 Outing,集合时某 DBA 睡眼惺忪地说半夜3点被告警搞起来了。这还不算,他在玩密室逃脱的时候,又接到机房告警电话,某业务表空间使用率超过 85% 严重告警了。是不是亮瞎了?
要想轻轻松松过节日,或者出去玩,除了做好备份之外,最重要的是做好容量规划。最基本的表空间、文件系统空间、历史告警等等基本情况横扫一遍,起码要能安全等到你休假回来。
对于一些特别的电商系统,节假日可能正是高峰期,那就不仅仅是空间这点事了,还要做好性能预测和解决方案预案。
四、备份恢复年年做
备份要做,恢复更要做。如果你是管理者,千万不要以为你的 DBA 一定会帮你做了。
不惊讶,以下是真实案例的脱敏数据:
运维 DBA 的九项注意
如果是企业缺少相应备份设备或软件导致的, DBA 有义务督促领导购置恢复演练所需的软硬件设备。因为一旦出现意外, DBA 的直接领导往往也担不了这个责任,毕竟数据都保护不了,用户还怎么相信你这个企业,不论你是央企还是国企。
运维 DBA 的九项注意
三大纪律是规矩,九项注意是指导原则。
做运维的人,不能总说这个我们没想到,哎呀,没想到这也不行。这是爬雪山,过草地,不注意就陷进去了,哪里会留时间给你瞎 BB?
1、对生产环境心怀敬畏
你也许没听过“一个 tnsping 干翻 6 台 P595”,你也许没听过“一个 cp 命令让营业系统停止使用 30 分钟”,你也许没听过“建一个索引让所有核保业务不能用了”,你也许没听过“我本来是要 shutdown 我的虚拟机的,没想关生产库”… …
你没听过的事情很多,你没干过的事情更多,因为你还年轻。
但是一定要对生产环境心怀敬畏。
所有操作命令不是网上搜来就可以用的,你要尽可能搞清楚这个命令的副作用,这个命令下去最坏的可能,可能是什么?不懂的就虚心求教, DBA plus 社群这么多大牛,实在不好意思,就先砸个大红包过去再问。
2、保持 24 小时开机
做运维的没有彻底休假之说,不要以为你休假了就关机大吉了,那离你关门大吉也不远了。嗯,所以有些公司把这条也列为纪律之一。
我曾遇到过这样一个情况,某个 DBA 请假了,刚好有个环境的密码只有他知道,而这个环境现在出了点问题。可想而知,当时人是多么着急? 嗯,那个 DBA 休假回来就长时间离开现场了。
3、多请应用的人唠唠嗑
完全不懂业务的 DBA 不是一个合格的架构师。
要去懂业务、懂应用、懂服务,就一定要跟应用的人唠嗑、吃饭、抽烟,平时尊重人家,人家愿意跟你说,你就越来越熟悉业务。慢慢的,你就可以为推动业务采用更合适的架构方案。
4、不要在上班时间做普通变更
什么叫普通变更?就是你本来可以提前一天做的变更。
比如扩表空间、增加用户权限、创建索引……并非是为了解决紧急故障而导致的变更。
提前做好变更规划,尽量争取每次免考核时做完所有重要的变更。
5、定期做好数据库检查
数据库没有发生故障,不代表是 DBA 做得好,而是故障自己还没有发生,不是不报,实时候未到。
所以,确定好检查规则,定期做好数据库检查,并进行整改。涉及到其它配合方的整改一定要邮件抄送,并电话确认。
6、数据库部署要给予最小化权限
安装必要的最少组件,赋予必要的最小权限,是主动避坑的有效手段。很多数据恢复,操作问题,如果能够从权限上把把关,后面就能省很多事情。
7、所有的保障手段,都要去验证其持续可行性
部署了高可用系统,上线前要做高可用切换测试。
部署了容灾系统,要做定期容灾演练。
部署了应急系统,要做定期应急演练。
做了数据库备份,要做定期数据库恢复测试。
说起来容易,做起来难。全国 90% 的系统没有做到这一点。所以你才会经常听到异常恢复的案例。特别是哪些用存储容灾,或者用 OGG 应急的。不是技术本身不行,而是管理不行。
8、竭尽全力推行自动化运维
在看到这条之前,你也许心里一直在暗暗的骂道,都什么时代了,还这么古板。
其实不管你是否已经开始了自动化运维,前面的每一条都值得你好好去做好,对你有益无害。
但是,去做自动化运维,是运维 DBA 绕不开的路径。就像从昆明到上海,最开始是只能靠马帮,后来逐渐通了高速公路,现在开始沪昆高铁了一样。
这个自动化运维怎么做?完全靠自己重复造轮子显然不完全靠谱。如果你不是 BAT,也不是京东新美大饿了么,最好的方式,是找专业运维的公司研发的自动化运维平台,是骡子是马拿出来遛两下,你就喜欢上了。
9、起步始于交流,收获源于分享
做过讲师的人,都会有这样一个共识,就是讲完东西,自己其实比听课的“学生”收获更大。这一点互联网公司做得非常好,不管是BAT还是新的巨头,都纷纷成立技术学院,领衔的也往往是业界大佬,把企业内部的技术分享组织得有声有色。
作为传统企业的 DBA 来说,一家企业往往没有这么个学院,但是互联网上的平台很多,比如 DBA plus 社群,甚至还有其他一些社群都提供这样的机会。
为什么我们团队工作一年的新人,可以拥有其他公司工作四五年 DBA 所具有的能力,除了复杂的硬件环境外,每月的分享也功不可没。
运维没有尽头,注意事项也没有尽头,你有更好的建议,不妨说说。
通过本文,你应该对Linux下的DBA工作有了一个大致的了解,包括它的工作职责、技能要求和实用技巧。当然,这些内容只是一个简单的概述,如果你想深入学习和掌握Linux下的数据库管理,你还需要多加练习和实践,以及不断地更新自己的知识和技能。希望本文能够对你有所帮助,让你成为一名优秀的Linux DBA。
以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !