数据MySQL主主复制保持数据一致性(mysql主主重复)

MySQL主主复制(Master-Master Replication)技术是 MySQL 服务器之间的一种数据库复制方式,可以将来自一个MySQL示例的数据库复制到另一个示例中,属于双向同步,两个服务器同时作为远程源和本地正式源,保持完全的热备份。这种方式的复制,可以使两台 MySQL 服务器中的数据保持完全一致,提高了数据的可靠性,提高系统的可用性。

MySQL 主主复制具备如下特点:

(1)双联系:由于任何一台服务器上的数据都会被另一台复制,不同 MySQL 服务器之间传输信息,从而具备 ha 的效果,改善了整体的系统可靠性;

(2)完全热备:单一的服务器可以提供数据的读和写,不需要进行切换;

(3)可以有效地提高性能,因为可以减少网络延迟,提升通信带宽;

(4)保持数据的一致性:MySQL主主复制可以保证两台MySQL服务器的数据是完全一致的,真正实现了热备份。

MySQL主主复制需要做到以下几个部分:

1、从主服务器设置bin log,让其记录进行状态更改时发生的事件;

2、从从服务器把bin log复制下来;

3、从主服务器把bin log event转换成SQL语句发送到从服务器端;

4、从从服务器把bin log event转换成SQL语句发送到主服务器端;

5、使用MySQL主从复制来保持两台MySQL服务器的数据一致性。

# 配置MySQL主主复制
# 主服务器1

# 配置bin log

binlog-format = ROW
server-id = 1
log-bin = mysql-bin

# 主服务器2

# 同时在主服务器2上配置 bin log

binlog-format = ROW
server-id = 2
log-bin = mysql-bin

# 从服务器1

# 在从服务器1上创建从服务器连接

CHANGE MASTER TO
MASTER_HOST='192.168.0.1',
MASTER_USER='repl',
MASTER_PASSWORD='123456',
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS= 0;
# 从服务器2

# 同时在从服务器2 上配置连接

CHANGE MASTER TO
MASTER_HOST='192.168.0.2',
MASTER_USER='repl',
MASTER_PASSWORD='123456',
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS= 0;
# 主服务器1

# 在主服务器1 开启复制

start slave;

# 主服务器2

# 同时在主服务器2 开启复制

start slave;

通过以上这些配置,即可使两台MySQL服务器完成主主复制,实现数据库复制。只要配置MySQL主主复制,这种方式就可以实现同步更新,保持两台MySQL数据库完全一致,从而达到保持数据一致性的目的。


数据运维技术 » 数据MySQL主主复制保持数据一致性(mysql主主重复)