(转)从史上八大MySQL宕机事故中学到的经验
一、Percona网站宕机事件 震级:3 发生时长:2011年7月11日 持续时长:数日 地点:加州Pleasanton(幸福屯) 宕机原因:Percona网站主服务器上的3块硬盘损坏,同时因为人员变更,导致未能如预期地恢复,多个网站资产因此下线数小时到数天不等,影响其软件下载及交易。 经验:备份不一定永远正常,不应该对其抱有过多期待。 二、GitHub服务中断 震级:4 发生时间:2012年9月10-11日 持续时长:1:46小时 地点:加州圣弗朗西斯科 宕机原因:GitHub将一对古老的、基于DRBD的MySQL服务器替换成一个拥有3个节点的集群。在合并到新系统时,“活动的”数据库自动出现了多个故障转移(failover),同时又因为集群管理软件的错误操作导致性能下降,最终造成网站宕机。 经验:GitHub修改了Pacemaker配置来保证故障转移仅仅可以被运维人员控制。 三、Journal Space所有数据丢失及网站关闭 震级:5 发生时间:2009年1月5日 持续时长:无限期 宕机原因:Journal Space是一个拥有6年历史的博客平台,基于MySQL开发,其唯一的数据库备份机器由RAID系统维护。最终网站的数据因前员工的报复行为被重写,最终导致所有用户数据丢失以及网站关闭。 经验:永远不要把驱动器镜像当做备份——它能防范物理故障带来的问题,但是不提供时间点恢复功能。 四、PHPFog共享数据库运行中断 震级:6 发生时间:2012年10月8日 持续时长:8小时 地点:俄勒冈州波特兰 宕机原因:PHPFog将用户数据合并到一个新的共享数据库服务上,但是在合并过程中遭受过多的堆叠连接,最终共享数据库停止响应,因此在共享数据库从快照中恢复前一直处于服务不稳定状态。从问题发生到解决一共历时8小时。 经验:这一事件后,PHPFog加速Amazon RDS用户迁移活动。 五、Couch Surfing因MySQL数据库故障导致服务关闭 震级:7 发生时间:2006年6月 地点:加州圣弗朗西斯科 持续时长:1个月 宕机原因:流行社交网站Couch Surfing曾拥有90000名用户,在2006年遭遇了一场严重的硬盘问题,在试图恢复数据时发现数据库增值备份遭遇问题。其MySQL数据库以及应用关键部分丢失,因此创始人最终关闭了这项服务,随后用户社区又将它重启。 经验:任何MySQL系统必须有一个以上备份服务器;每天都必须验证MySQL备份进程。 六、magnolia因丢失主数据库和备份导致最终无法完全恢复 震级:7 发生时间:2009年1月30日 地点:加州圣弗朗西斯科 持续时长:无限期 宕机原因:Magnolia和Delicious一样,是一个流行的书签服务,基于MySQL数据库。该服务在由于硬盘损坏以及备份系统的错误,丢失了主数据库和备份,最终无法完全恢复。 经验:确保硬件的可靠性非常重要;备份系统是否可行必须得到充分的验证。 七、Amazon RDS宕机事件 震级:9 发生时间:2012年6月29日 持续时长:3小时 地点:弗吉尼亚州北部 用户影响:亚马逊EC2云计算服务以及包括Netflix公司、Heroku、Pinterest、 Quora、HootSuite和Instagram等。 宕机原因:一个被称为derecho的强雷暴天气系统通过弗吉尼亚州北部,使得亚马逊在该地区的设施失去了动力,发电机不能正常运行,消耗应急电源的不间断电源(电源)系统,从而导致运行在Amazon RDS上的大概上千个MySQL数据库宕机。 经验:扩大7*24小时工程师支持团队规模,发生电源系统故障、UPS启动之前完全支持手动操作开启发电机开关。 八、Amazon RDS宕机事件 震级:10 发生时间:2011年4月21日 持续时长:48小时 地点:弗吉尼亚州北部 用户影响:导致使用AWS平台的Reddit、Foursquare、Hootsuite、Quora以及其他多家社交网络服务商成为“受害者” 。 宕机原因:亚马逊修改网络设置,同时在对主网络升级扩容过程中,工程师不慎将主网数据全部切换到从网,由于从网带宽较小,而它的设计目的并非用于主网容灾或备份,因此导致网络堵塞,所有EBS(Elastic Block Store)节点通信全部中断,导致存储着数据和日志的MySQL数据库宕机,其中运行在一个可用区域里41%的MySQL数据库宕机24小时,14.6%宕机48小时。 经验:亚马逊重新审计了网络设置修改流程、增强自动化运维手段以及容灾架构设计。
(转)从史上八大MySQL宕机事故中学到的经验的更多相关文章
- 从史上八大MySQL事故中学到的经验
本文列举了史上八大MySQL宕机事件原因.影响以及人们从中学到的经验,文中用地震级数来类比宕机事件的严重性和后果,排在最严重层级前两位的是由于亚马逊AWS宕机故障(相当于地震十级和九级). 一.Per ...
- 记录一次mysql宕机的解决办法
首先先粘贴出来我的错误信息,如下: 2019-07-16T00:53:18.285919Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysq ...
- 如何看待 SAE 在2014 年 3 月 24 日发生的的大面积宕机事故?
3 月 24 日晚间大约 23 点左右,新浪云 SAE 一处核心机柜掉电,导致 SAE 平台下大量应用无法正常访问,并在 10 小时后才陆续修复.这次事故暴露 SAE 的哪些缺陷?SAE 运维人员又是 ...
- 一次修改数据库物理文件造成Mysql宕机的恢复记录
事件起始 某夜,我正在床上冥想准备入睡,忽然同事向我求救:消息内容如下: Oh My Gold 改了些配置,啥都没了!都没了!没了!了! 我仔细询问,原来是她因为某些原因将某库的物理文件夹改名后,发现 ...
- mysql宕机,导致innodb_force_recovery恢复不了
https://serverfault.com/questions/698038/mysql-innodb-recovery-from-datafiles https://serverfault.co ...
- MySQL定时检查是否宕机并邮件通知
我们有时候需要一些检查MySQL是否宕机,如果宕机了应自动重新启动应用并通知运维人员!此脚本用来简单的实现MySQL宕机后自动重启并邮件通知运维,此为SHELL脚本,当然也有一些朋友喜欢用Python ...
- 线上Mysql数据库崩溃事故的原因和处理
前文提要 承接前文<一次线上Mysql数据库崩溃事故的记录>,在文章中讲到了一次线上数据库崩溃的事件记录,建议两篇文章结合在一起看,不至于摸不着头脑. 由于时间原因,其中只讲了当时的一些经 ...
- Spring+SpringMVC+MyBatis+easyUI整合进阶篇(八)线上Mysql数据库崩溃事故的原因和处理
前文提要 承接前文<一次线上Mysql数据库崩溃事故的记录>,在文章中讲到了一次线上数据库崩溃的事件记录,建议两篇文章结合在一起看,不至于摸不着头脑. 由于时间原因,其中只讲了当时的一些经 ...
- VmWare平台Windows Server 2012 无响应宕机
我们生产服务器都部署在VMware ESXi 5.5平台上,最近大半年的时间,偶尔就会出现操作系统为Windows Servre 2012的服务器出现没有任何响应(unresponsive)的情况,出 ...
随机推荐
- ZOJ1654 Place the Robots
Zoj1654 标准解法:二分匈牙利. 写法各异嘛,看不懂或者懒得看也正常,如果想了解我思路的可以和我讨论的. 在练习sap,所以还是写了一遍: #include<cstdio> #inc ...
- zoj1797 Least Common Multiple 最小公倍数
Least Common Multiple Time Limit: 2 Seconds Memory Limit: 65536 KB The least common multiple (L ...
- curl命令用于模拟http浏览器发起动作
1.模拟http浏览器发起访问百度首页的动作 curl http://www.baidu.com 2.也可以模拟http浏览器发起POST动作,这个在测试后端程序时非常常见.
- #tensorflow入门(1)
tensorflow入门(1) 关于 TensorFlow TensorFlow™ 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库.节点(Nodes)在图中表示数学操 ...
- 记一次vscode升级后,格式化Vue出现的问题
一.VSCode中使用vetur插件格式化vue文件时,stylus代码会自动加上大括号.冒号和分号 本来就是简写比较方便舒服,结果一个格式化回到十年前 解决方案: vscode 文件 ->首 ...
- springcloud之服务注册与发现(Eureka)
springcloud服务注册与发现 使用Eureka实现服务治理 作用:实现服务治理(服务注册与发现) 简介: Spring Cloud Eureka是Spring Cloud Netflix项目下 ...
- springcloud干货之服务消费者(ribbon)
本章介绍springcloud中的服务消费者 springcloud服务调用方式有两种实现方式: 1,restTemplate+ribbon, 2,feign 本来想一篇讲完,发现篇幅有点长,所以本章 ...
- 用Eclipse 创建一个 简单的 Maven JavaWeb 项目
使用Maven 创建一个简单的 javaWeb 项目: 本篇属于 创建 JavaWeb 项目的第三篇: 建议阅读本篇之前 阅读 用 Eclipse 创建一个简单的web项目 ;本篇是这这篇文章的基础 ...
- 成为一名Java高级工程师你需要学什么
宏观上: 1.技术广度方面至少要精通多门开源技术吧,研究过struts\spring等的源码.2.项目经验方面从头到尾跟过几个大项目,头是指需求阶段,包括需求调研.尾是指上线交付之后,包括维护阶段.3 ...
- 关于欧几里得算法(gcd)的证明
求a,b的最大公约数我们经常用欧几里得算法解决,也称辗转相除法, 代码很简短, int gcd(int a,int b){ return (b==0)?a:gcd(b,a%b); } 但其中的道理却很 ...