拒绝故障,远离“背锅侠”的 10 大法宝利器!
点击上方“民工哥技术之路”选择“置顶或星标”
每天10点为你分享不一样的干货
系统故障,对于 DBA或是运维人员来说,都是心中永远的痛。而避免故障的原则却是殊途同归,现列如下,与君共勉。
一、变更要能回滚、先在同样的环境测试过
佛说:每次创伤、都是一次成熟,这便是运维人员的真实写照。
从某种意义上讲、运维是一门经验的学科、是一门试错的学科。没有做过的东西、总是会给你不期而遇的痛击,请保护现场,让变更有回头的机会。
二、对破坏性的操作谨慎小心
什么是破坏性的操作?
比如:对 Oracle 而言:truncate table_name、delete table_name、drop table_name,这些语句执行起来轻松简单也惬意极了、但记住!即便数据可被回滚、代价也是非常大!
对 Linux 而言:rm -r 所有当前及其子目录的所有数据都将被删除。经历过这种故障的人、大多会给 rm 上个别名。
alias rm='rm -i'
同理,cp 和 mv 也可以有同样的选项:
alias cp='cp -i'alias mv='mv -i''cp -i'alias mv='mv -i'
三、设置好命令提示
在操作之前、先理清你所在的是主库、备库?当前目录?哪个 schema?session?时间?
比如:对 Oracle 来讲:
[plain] view plaincopyidle> set sqlprompt 'RAC-node1-primary@10g>>'RAC-node1-primary@10g>>idle> set sqlprompt 'RAC-node1-primary@10g>>'RAC-node1-primary@10g>>
当然、你也可以在 glogin.sql 里面设置。
对于 Linux 而言、bash 环境的提醒可设置 PS1 来知道当前目录、登陆用户名和主机信息等;
对 PS1 更多理解、请见:man PS1
四、备份并验证备份的有效性
人非圣贤、岂能无过?是机器总有计划内或计划外崩溃的一天。怎么办?备份!!!
备份的学问很大、按照不同的维度可以分:冷备和热备;实时和非实时;物理和逻辑。OLTP 7*24 在线业务、DB 就需要有实时热备。这样就可以了吗?
如果开发人员的一个不带任何条件的 delete 误删所有数据,此时你除了实时、还需要有非实时的备份、把 DB 从逻辑错误中恢复出来。
备份有了、可以高忱无忧了吗?不行!尚须验证备份的有效性。一个总有那么几次、备份无法保证 100% 恢复,简单的验证就是找个空库恢复出来。
五、对生产环境永保敬畏之心
会计人员在从业之前、都有个职业操守的训练。同理、这也应该是运维人员进入行业首先需要具备的素养。
比如:
于 Oracle 而言、你可以跑一个 RDA 巡检 DB 的健康状况;于 Linux 而言、是否有 password aging、隔离外网等。
六、交接和休假最容易出故障、变更请谨慎
接手别人的工作要一而再、再而三的确认变更方案。请教人并不见得就是能力不行的表现;
休假前最好各种可以做好的事情,最好能够准备一份文档,指明在什么情况下怎么做和联系哪些人;
在别人放假的时候接手工作,“能拖则拖”,实在需要执行:必须不厌其烦的跟原运维者确认各个操作细节。
七、搭建报警、及时获取出错信息;搭建性能监控、预测趋势
运维人员赖于生存的工具就是报警和监控。
报警可以让你及时知道系统出现了什么异常、以便及时跟进、把故障扼杀于摇篮;
监控可以让你了解系统的历史性能信息、以历为鉴、可以知兴替嘛、早做优化。
报警和优化是衣宽带水的好兄弟、相铺相成、互相促进。
八、自动切换需谨慎
比如:Oracle 存储级的HA方案:Data Guard,主库提交了一笔订单,结果发生了 switchover,这笔订单没有同步到备库,那么卖家损失了一个销售单、对客户、对公司都是损失。
九、仔细一点,偏执一点,检查、检查,再检查
有这么一个人:
他在做一个变更的时候,会先提前一两周发送邮件并电话手机通知相关人;
在测试机上写好脚本,召集大家 review 操作步骤和脚本;
测试完成以后拷贝到生产环境;
录对应机器,“打开,关闭,打开,关闭”该脚本;
跟相关人员再次确认执行的操作、顺序、时间点,可能的影响和回滚是否都准备好了;
行前还要退出这个机器,然后再登录进去,“打开,关闭”脚本;
后才在后台运行脚本,同时在另外一个窗口登录着,随时ps和查看结果输出。
期间姿势端正,呼吸急促而均匀,眼神凝重。操作的人不觉得累,倒是一边学习的人很累。
十、简单即是美
这有点禅的意境、和 GNU/Linux 的思想不谋而合。
我们总是面临各种诱惑:新的系统架构,新的更智能的命令和工具,最新的硬件平台,功能更全的HA软件…你可以在线下安装,测试,怎么做都行。但是如果想要在生产环境下使用起来、请三思!!
能够使用系统内置命令的话,就不用考虑其他要专门下载安装的软件了
脚本本身就能完成的功能,就没有必要专门找一个功能丰富的软件来做
Linux本身自带的字符界面比那些复杂的图形界面要简洁方便……
最后祝大家运维工作一帆风顺,多福多寿,不出故障。
注:文章源于网络,版权归原作者所有。
公众号后台回复「成神之路」获取全部内容
- MORE | 往期精彩文章 -
大佬们高考成绩爆光,马云曾考1分、李彦宏东哥是学霸...
项目是如何死掉的?太过真实!
送你一份2019年最新最全的技能图谱!
深度剖析|数据库生产常用架构方案
IT人面试必看!25个雷区和11个必问句!
强大的8个命令,分分钟帮你提高工作效率!
长按二维码关注民工哥技术之路
公众号后台回复「目录」可以查看公众号文章目录大全,回复「加群」可以加入读者技术交流群,与大家一起交流。
-------------------------------
感谢大家的阅读,下面是一个抽奖链接,点击链接进去参与抽奖吧,2019年6月30日23:59开奖,感谢大家的支持!
感谢大家一直以来的阅读、在看和转发,点我参与抽奖!点我参与抽奖!
点击【阅读原文】公众号所有的精华都在这
正在看的你,点这里有惊喜哦~
拒绝故障,远离“背锅侠”的 10 大法宝利器!相关推荐
- 程序员,技术的“背锅侠”,盘点 2020 年面向监狱编程的那些事!
[CSDN 编者按]过去一年,"删库跑路".安全漏洞等事件层出不穷,企业.技术人深受其害,作为一名程序员,在新的一年即将到来之际,我们该如何避免面向监狱编程? 作者 | 马超 ...
- 一代背锅侠,汉初最能为刘邦背黑锅的人
萧何--一代背锅侠,是汉初最能为刘邦背黑锅的人. 不过刘邦用三杰论.功人功狗.强封首功为他洗白了.由于萧何背的锅都比较隐秘,且恰到好处的最终转化为成绩,加上汉朝逐渐稳定强盛,萧何作为开创时代的当时行政 ...
- 华为云大面积宕机的原因思考-谁是下一个背锅侠?
2020年4月10日上午,华为云出现了大面积故障,华为云平台承载了300多万用户,其中160万开发者,影响面积可想而知. 随着云计算技术的飞速发展,企业已经大概率选择上云,随着用户的增加,共有云出现故 ...
- 产品经理真的是「背锅侠」吗?
我经常可以看到产品经理们在深夜发出一些激励人心的文字,例如:「由于自己考虑不缜密引发了需求变更,进而导致了开发同学在深夜还在加班敲代码,自己十分自责内疚,不过最后产品还是顺利上线了...」.每每看到此 ...
- 告别运营怪圈,不做“背锅侠+加班狗+低薪族”!
万年背锅侠和加班狗已不再是程序员,而是运营,被毙稿.被客户骂.被领导和同事质疑是普通运营的日常. <2017 年运营行业生存报告白皮书>显示:69.8% 的运营月薪低于 8000--远低于 ...
- 事关微信支付,别成为背锅侠!
1.背景 无意中从其他地方看到的,有点吓人,发出来提示下朋友们,你的身份证可能被他人绑定了微信支付,赶紧确认下,小心成为背锅侠! 由于以前的科技不够先进(安全校验少.无人脸识别等手段吧),导致有些人的 ...
- 上夜班的linux运维都坑,运维是个坑,盘点背锅侠的点点滴滴~
原标题:运维是个坑,盘点背锅侠的点点滴滴~ 运维是个遇坑.填坑.再遇坑.再填坑,有些时候还被同事挖坑,duang的一下掉下去了,还要自己慢慢爬坑:有些却是自己了解不够深入,或不够细心所留下来的坑. 小 ...
- AI“网红”科大讯飞的闹心半年报,员工竟成吃掉利润的背锅侠?
作者|震霆 出品|遇见人工智能 公众号|GOwithAI 科大讯飞发半年报了,也可以看做是期中作业. 总共159页,报告封面上写着"用人工智能建设美好世界 ...
- 如何避免成为背锅侠?
你被同事甩过锅吗? 打工人在职场中犯错都是不可避免的. 但明明不是自己的问题,还要背个黑锅,就非常闹心了! 大家好,我是大D. 前几天,大D开发完了一个项目,在交付验收中发现业务逻辑存在漏洞,业务方那 ...
- C++ 是 编程界 的 背锅侠
C++ 是 编程界 的 背锅侠, C++ 背的包袱 之 庞大复杂, 举世瞩目, 令人感动 . C++ 标准 委员会 俨然 已成了一个 职业 . C++ 把 静态编译 体系 发展到 庞大复杂, C ...
最新文章
- [译] Couchbase 使用 cbbackup 备份
- Jmeter简单应用6
- centos6.7一键装机
- 用存储过程还原数据库
- JMeter 学习问题汇总
- linux添加三权,基于SELinux的三权分离技术的研究
- 父子继承与方法的重写 java 114818255
- Autodesk FBX
- 200 万年薪的博士,华为到底看重什么?
- LVS+KeepAlived,RabbitMQ高可用负载均衡
- 关于 Java 数组的 12 个最佳方法
- UML 构件图 component diagram
- UVA1629 切蛋糕 Cake slicing 题解
- 利用网校源码进行网校系统开发可以解决哪些问题
- js对文字批注_HTML 页面添加批注 - JavaScript - ITeye
- 电脑版微信头像无法显示并且不能显示表情
- es6箭头函数_【知识点】ES6箭头函数、箭头函数与普通函数的区别
- matlab sisotool工具DEMO
- 已知字符串str1 = tomorrow is sunny day,下列表达式能正确查找到子字符串is的是()(选两项)
- WebComponents.exe未安装的解决办法