MySQL的集群主要有两个成熟方案:分布式集群和主从集群

mysql 主从复制模式主要为master负责接收用户的请求,DDL,DML,DCL等操作,slave主要负责同步master的二进制日志,以便备份数据。在一此数据库访问量比较大的场景,master-slave模式还可以结合mysql-proxy做读写分离,mysql-proxy负责将用户的写请求转发到master,将用户的读请求转发到slave,以分担数据库的压力。甚至更健壮的系统,一个master对应多个slave,做成高可用HA集群,当master宕机的时候,多个slave会协商出一个slave重新成为master,以达到服务的持续性。

在mysql master-slave架构中,slave会启动两个主要的线程,一个是io thread,另一个是sql thread。大家都知道,mysql的replication主要是通过slave同步master中的二进制日志,然后将二进制日志先储存在slave中的中继日志中, Continue reading