(1)MySQL主从复制原理
1.主数据库(Master):主数据库是数据更新的源头,它负责处理所有的写操作(INSERT、UPDATE、DELETE)和数据变更。
2.从数据库(Slave):从数据库是主数据库的副本,它负责接收主数据库发送过来的日志信息,并按照主数据库的数据变更顺序逐一执行,从而保持数据的同步。
(2)完成MySQL主从复制。
在主数据库服务器上进行配置:
a. 确保主数据库开启了二进制日志功能。在MySQL配置文件(通常是my.cnf或my.ini)中添加以下配置:
python
Copy code
[mysqld]
server-id=11
log-bin=mysql-bin
b. 重启MySQL服务器以应用配置。
在从数据库服务器上进行配置:
a. 确保从数据库开启了复制功能。在MySQL配置文件中添加以下配置:
[mysqld]
server-id=12
b. 重启MySQL服务器以应用配置。
在从数据库上设置复制连接:
在从数据库上使用以下命令连接到主数据库,建立复制连接。请替换 <MASTER_IP>、<MASTER_PORT>、<MASTER_USER> 和 <MASTER_PASSWORD> 分别为主数据库的IP地址、端口号、用户名和密码。
CHANGE MASTER TO
MASTER_HOST='<MASTER_IP>',
MASTER_PORT=<MASTER_PORT>,
MASTER_USER='<MASTER_USER>',
MASTER_PASSWORD='<MASTER_PASSWORD>',
MASTER_LOG_FILE='mysql-bin.000001', # 从主数据库复制时的起始二进制日志文件
MASTER_LOG_POS=0; # 从主数据库复制时的起始位置
启动从数据库的复制进程:
START SLAVE;
检查复制状态:
SHOW SLAVE STATUS\G
在输出中,确保以下字段值为Yes,表示主从复制已成功连接:
Slave_IO_Running: Yes
Slave_SQL_Running: Yes