运维安全:远离故障的十大原则
故障是运维人员永远的痛。相信每一个运维人员的KPI中都有一项:可用性。可用
性高就是不出故障,各个公司对可用性和故障评级的标准都不相同,但是避免故障的方法却是殊途同归。我们怎么避免故障,沃趣科技简单列举了以v-O1
关于提示符的设置,更多请参考:
修改mysql/oracle/bash/vimrc/cmd提示符格式与颜色
第4条,备份并验证备份有效性。
是人总会出错,是机器总可能会有突然崩溃的那一天。怎么办-我们需要准备备份。
备份的学问很大。按照不同的纬度可以分为:冷备份和热备份;实时备份和非实时备份;物理备份和逻辑备份。
互联网企业为了提供7*24小时不间断的服务,数据库就需要有实时热备份。在主库出现问题的情况下能够由备库提供服务。备库时候有效,数据是否一致,主库出现问题的时候怎么切换都需要运维人员认真考虑。
是不是有了这些就够了列?不行,应用程序也是人写的,曾经出现过程序一不小心delete语句没有带任何条件,导致一个表中所有的数据都被删除的惨状。所以你除二f
了实时的备份,还需要有非实时的备份,在你的数据出现逻辑错误之后能够从备份数据中恢复出来。现在很多人在研究MySQL模仿oracle的flashback功能,利用binlog来恢复数据。但是这样的话,binlog_format必须设置为row并且对于DDL操作也无法回滚。它是为快速解决部分数据被错误删除的解决方案,但是无法代替非实时备份的作用。
非实时备份有可以分为在线延时备份和离线备份。在线延时备份是搭建数据库的一定时间延迟的热备份,比如MySQL就可以搭建一个延迟一天的slave,一直保持着备库与主库的延迟在一天。可以利用pt-slave-delay工具来实现这个功能。另外,离
线备份是目前大家用的比较多的,可以利用mysqldump进行逻辑备份或者xtrabackup进行物理备份。为了空间的原因和快速恢复考虑,你还可以利用xtrabackup进行增量的物理备份。
备份有了,是否就可以高枕无忧了?还是不行。你需要验证备份的有效性。没有一
个备份能够保证它备份出来的数据能够100%恢复出正确的数据,特别是物理备份的
概率相对来说,更低,xtrabackup备份一个月总有那么几次来大姨妈,不能给你很7好的服务。所以,备份并不只是备份,它还包括备份的验证,它如果不能恢复出正确的数据,就只是浪费空间而已。备份的验证最简单的就是找一个空闲的库,来恢复出来,mysql启动以后检查部分数据。如果不需要这么严谨,对于xtrabackup来说,你至少得验证它-apply-log能够恢复上去吧?同样,备库的数据一致性也需要经常检查一下,mysql的replication并不保证100%的数据一致性,你可以去翻翻mysqlstatement复制的bug歹U表,有些数据在主备不同的环境上分别执行,数据就会不一样。可以考虑用percona的工具pt-table-checksum来检查主备不一致,用pt-table-sync来同步主备数据。
第5条,对生产环境存有敬畏之心。
这应该是运维者进入行业首先需要具备的素质。但是我们还是需要把它拿出来强调
一下。
有
运维操作规范十大原则 来自淘豆网m.daumloan.com转载请标明出处.