10 - Master-slave replication, Read-write separation
10 - 主从复制、读写分离
主库和从库
主数据库的 DDL 和 DML 通过二进制日志传到 从库服务器中,然后再库上重新执行...
主库可以同时向多台从库复制
从库可以作为其他的主库实现链状复制
1.1. MySQL的复制优点
可以在从库执行备份,避免备份影响主库业务...,但会存在延迟
主库执行所有语句的数据变更会写入 BINLOG,
从库会读取主库的 BINLOG...然后写入 Relay Log 然后再执行对于 SQL...
两台服务器...
关闭防火墙、开放 3306 端口...
mysql 服务 id 保证集群环境中唯一
赋予用户:主从复制的权限...
可以查看二进制文件的坐标
binlog_ignore_db 指定不需要的数据
server id 不和主库重复
read-only = 1 表示只读...0表示读写
还要设置 super-read-only 限制超管权限...
主从库状态...
STATUS 开启同步操作...
主库的数据变更同步到从库,从而保证主库和从库数据一致...
数据备份、是百千亿、读写分离、降低主库压力
根据执行的业务来操作主库、从库...是复杂的
读写分离可以把数据库的读和写操作分开,对应不同的数据库服务器,主数据库提供写操作,从数据库提供读操作...
原理
MySQL的主从复制,基于 二进制日志 binlog 实现的
配置
balance 负载均衡策略 --- 根据取值分类
0.- 不开启读写分离机制,所有读操作都发送到当前可用的 writeHost 上
1.- 全部的 readHost 与备用的 writeHost 都参与 select 语句的负载均衡(主要针对双主从模式)
2.- 所有的读写操作都随机在 writeHost,readHost 上分发 - 不会读写分离...
3.- 所有的读请求随机发到 writeHost 对应的 readHost 上执行,writeHost 不负担读压力
双主双从架构是一种高可用性和负载均衡的数据库解决方案,由两台主数据库服务器(Master)和两台从数据库服务器(Slave)组成。每台主服务器同时充当另一台主服务器的从服务器,形成一个互为主从的关系。
介绍
实现高可用
一个主机 MasterA 用于处理所有写请求并将数据同步到从服务器 B 和从服务器 C
一个主机 MasterB 处理写操作,并将数据同步到从服务器 A 和从服务器 D
Slave C D 负责读取数据,分担主服务器的读压力
架构优势
任何一台主服务器故障,另一台主服务器可以立即接管其工作,确保系统持续运行
读操作可以分散到多台从服务器上,减轻主服务器的负担,提高整体性能
可以根据需求增加从服务器,进一步提升系统的处理能力
Last updated