运维工作心得总结
运维工作直接关系到应用系统运行的正常稳定,但运维工作纷繁复杂,正规化、系统化相对比较弱,如何改变这种现状?从众多的运维工作者的成功失败中进行经验总结,并提升为运维规则,是提高运维水平,保障应用系统正常稳定运行的有效途径。
笔者通过自己的多年运维经验,总结出以下必须遵守的基本运维规则,可以大大减少缺乏经验的运维人员因为自身失误导致系统出故障的可能性。
一、系统变更、升级应先在同样的环境测试通过,执行前应有经过验证的回退预案
运维是一门经验的学科、是一门试错的学科。没有做过的东西、总是会给你出意想不到的难题,因此变更前,一定要在相同或者相似运行环境下进行测试,通过后才能在正式环境下执行变更。同时应准备好变更失败的回退预案,比如,做好系统备份、数据库备份、配置备份,固化变更前的运行现场,让变更有回头的机会。
二、对破坏性的操作要先确认符合预定方案,然后谨慎执行 什么是破坏性的操作?
比如:
对MSSQLServer,执行update操作,因为不需要commit,所以特别容易忽视也特别危险,还有delete、drop等操作更不用说。
对 Oracle 而言:truncate table_name、delete table_name、drop table_name,这些语句执行起来轻松简单也惬意极了、但记住!即便数据可被回滚、代价也是非常大!
对 Linux 而言,rm -r 所有当前及其子目录的所有数据都将被删除。经历过这种故障的人、大多会给 rm 上个别名
A liasrm='rm -i'
同理、cp 和 mv 也可以有同样的选项:
aliascp='cp -i'
alias mv='mv -i'
对window而言,shift+del文件或者目录 对任何系统而言,无备份直接修改文件等
三、备份并验证备份的有效性
不管是硬件还是软件总有意外崩溃的时候,怎么办?备份!!!备份的学问很大、按照不同的维度可以分:冷备和热备、实时和非实时、物理和逻辑、全备增量备。
…… …… 余下全文