在MySQL集群环境中,可以分为主节点与从节点,通过主从复制可以实现数据备份、故障转移、MySQL集群、高可用、读写分离等。
MySQL的主从复制是借助binlog日志文件里面的SQL命令实现的主从复制,可以理解为我再Master端执行了一条SQL命令,那么在Salve端同样会执行一遍,从而达到主从复制的效果。
主服务器节点
vi /etc/my.cnf 新增以下内容
server_id=177 ###服务器id,177可自定义,一般为ip地址最后三位
log-bin=mysql-bin ###开启日志文件
重启mysql服务 service mysqld restart
验证是否已经配置成功
show variables like '%server_id%';
能够查询对应配置文件中的server_id 说明已经配置成功
show master status;
能够看到同步的文件,和行数 说明已经配置成功。
vi /etc/my.cnf
server_id=178 ###从服务器server_id
log-bin=mysql-bin ###日志文件同步方式
binlog_do_db=test ###需要同步的数据库名称
重启mysql服务 service mysqld restart
验证是否已经配置成功
show variables like '%server_id%';
能够查询对应配置文件中的server_id 说明已经配置成功
从服务器同步主服务器配置
change master to master_host='192.168.212.200',master_user='root',master_password='root', master_log_file='mysql-bin.000002',master_log_pos=216;
master_log_file='mysql-bin.000002',master_log_pos=216;这里的 mysql-bin.000002 和 216 是通过到主节点使用 show master status;查询
开始同步
start slave
检查从服务器复制功能状态
SHOW SLAVE STATUS