1、主从复制及主主复制的实现
主从复制
第一步:实验准备:
主服务器:10.0.0.81
从服务器:10.0.0.82
关闭防火墙;
关闭selinux;
时间同步;
启动MySQL服务;
建立MySQL二进制日志文件夹,并分配给mysql用户;
第二步:启用二进制日志,并配置一个全局唯一ID
主服务器配置如下:
vim /etc/my.cnf
[mysqld]
log_bin=/data/mysql/bin-log
server-id=81
重启MySQL
从服务器配置如下:
vim /etc/my.cnf
[mysqld]
log_bin=/data/mysql/bin-log
server-id=82
read_only=1
relay_log=relay-log
relay_log_index=relay-log.index
重启MySQL
第三步:查看主服务器二进制位置
show master status;
第四步:主服务器创建有复制权限的用户账号
create user copy@'10.0.0.%' identified by '123456';
grant replication slave on *.* copy@'10.0.0.%';
第五步:从服务器连接主服务器
CHANGE MASTER TO
MASTER_HOST=‘10.0.0.81’,
MASTER_USER=‘copy’,
MASTER_PASSWORD=‘123456’,
MASTER_PORT=3306,
MASTER_LOG_FILE=‘bin-log.000001’,
MASTER_LOG_POS=10752;
第六步:从服务器启用slave
start slave;
show slave status\G;
验证:主服务器创建数据库db1;
检查从服务器是否也创建了;
主主复制
第一步:实验准备:
主1服务器:10.0.0.81
主2服务器:10.0.0.82
关闭防火墙;
关闭selinux;
时间同步;
启动MySQL服务;
建立MySQL二进制日志文件夹,并分配给mysql用户;
第二步:配置文件编写
主1服务器:10.0.0.81
vim /etc/my.cnf
[mysqld]
log-bin=/data/mysql/bin-log
server-id=81
#开始点
auto_increment_offset=1
#增长幅度
auto_increment_increment=2
主2服务器:10.0.0.82
vim /etc/my.cnf
[mysqld]
log-bin=/data/mysql/bin-log
server-id=82
#开始点
auto_increment_offset=2
#增长幅度
auto_increment_increment=2
第三步:主1服务器创建账号和二进制位置检查
检查二进制文件位置:
show master logs;
创建账号:
create user copy@'10.0.0.%' identified by '123456'
grant replication slave on *.* to copy@'10.0.0.%';
第四步:主1服务器与主2服务器互联,开启slave
查看主2服务器二进制位置:
主2服务器连接主1服务器
CHANGE MASTER TO
MASTER_HOST='10.0.0.81',
MASTER_USER='copy',
MASTER_PASSWORD='123456',
MASTER_PORT=3306,
MASTER_LOG_FILE='bin-log.000004',
MASTER_LOG_POS=156;
start slave;
主1服务器连接主2服务器
CHANGE MASTER TO
MASTER_HOST=‘10.0.0.82’,
MASTER_USER=‘copy’,
MASTER_PASSWORD=‘123456’,
MA