MySql双主热备配置

用四台服务器配置MySql双主热备配置

主机1服务器ip:192.168.31.208

主机2服务器ip:192.168.31.133

从机1服务器ip:192.168.31.121

从机2服务器ip:192.168.31.243

实现的原理

  主机1和主机2服务器log-bin日志互相监听,只要其中一个更新,另外个就会同步更新,保持数据的同步性,然后分表给这两个主机配置一个从服务器。

1、首先打开主机1服务器 mysql的配置文件 vim /etc/my.cnf 

#开启二进制日志
log-bin = mysql-bin
binlog_format = mixed
#值是唯一的,可以用ip最有一位以防重复
server-id = 208
relay_log = mysql-relay-bin
log_slave_updates = 1
expire_logs_days = 10
early-plugin-load = ""

配置好重启mysql服务器 service mysqld restart

2、进入mysql给主机2服务器开个远程登录账户 

grant replication slave on *.* to [email protected] identified by '123456'

3、在mysql里使用 show  mater status  查看主机1服务器的log-bin日志状态,记下文件名称以及位置,在从服务器中会用到

4、进入主机2服务器中,打开mysql配置文件 配置方式除了server-id不一样其他都一样,配置好重启mysql服务器

  

log-bin = mysql-bin
binlog_format = mixed
server-id = 133
relay_log = mysql-relay-bin
log_slave_updates = 1
expire_logs_days = 10
early-plugin-load = ""

4、进入主机2服务器的mysql中,同样给主机1服务器开一个远程访问的账户

  grant replication slave on *.* to [email protected] identified by '123456';  

5、在mysql中监听主机1 服务器log-bin状态。

  5.1、首先停止 监听行为 stop slave;

  5.2、监听的命令

    

change master to
master_host = '192.168.31.208',
master_port = 3306,
master_user = 'slave',
master_password = '123456',
master_log_file = 'mysql-bin.000003',
master_log_pos = 478

 

  

 6、使用show slave status 查看主机2服务器配置状态是否成功,当出现标红区域两个yes代表已经成功。

7、在返回主机1服务器,开始配主机1服务器监听主机2服务的log-bin日志

  7.1 首先在主机2服务器mysql中查看log-bin日志的文件名称以及位置  

 7.2、 进入主机1 mysql中  开始监听主机2服务器log-bin日志

change master to
master_host = '192.168.31.133',
master_port = 3306,
master_user = 'master',
master_password = '123456',
master_log_file = 'mysql-bin.000005',
master_log_pos = 154

8、查看配置是否成 show slave status 当出现两个yes代表已经成功。两个主机服务器的数据库现在已经同步了。

9、给主机1 服务器配置一个从机1服务器,首先在主机1mysql中给从机1服务器开一个远程账号

grant replication slave on *.* to [email protected] identified by '123456'

10、进入从机1服务器打开mysql配置文件 vim /etc/my.cnf  配置监听主机1 服务器的log-bin 日志

server-id = 121
relay_log = mysql-relay-bin
expire_logs_days = 10
early-plugin-load = ""

配置好重启服务器 service mysqld restart

11、进入mysql中开启监听主机1 服务器log-bin日志状态 当出现两个yes代表已经配置成功。

change master to
master_host = '192.168.31.208',
master_port = 3306,
master_user = 'slave121',
master_password = '123456',
master_log_file = 'mysql-bin.000003',
master_log_pos = 478 

 

 12、另个从服务器页是这样配置。

author:Abner

qq:372195546

猜你喜欢

转载自www.cnblogs.com/Abner3721/p/11013805.html