MySQL高可用需要解决的主要有两个问题,即如何实现数据共享或同步数据,另一个是如何处理failover(故障切换)。
数据共享一般的解决方案是通过SAN(Storage Area Network)来实现,而数据同步可以通过rsync软件或DRBD技术来实现。failover的意思就是当服务器死机或出现错误时可以自动切换到其他备用的服务器,不影响服务器上业务系统的运行。
这里介绍一下目前比较成熟的MySQL高可用解决方案。
一、系统指标
有这么两个概念,数据库的可靠性和数据库的可用性,一般像银行系统都是追求数据的可靠,而像互联网行业都是需要服务的可用。
1、可用性指标SLA
SLA全称:Service-Level Agreement, SLA
常见可用性指标:
- 90%一年内可接受最高36天服务不可用;
- 99%一年内可接受最高3.65天服务不可用;
- 99.9%一年内可接受最高8.76小时服务不可用;
- 99.99%一年内可接受最高52.56分钟服务不可用;
- 99.999%一年内可接受最高5.26分钟服务不可用;
任何一家互联网公司,都有流量的低峰期和高