mysql的双主模式配置

第一台:192.168.0.160

第二台:192.168.0.170

主从配置,第一步:192.168.0.160 作为主数据库,192.168.0.170作为从数据库,配置如下:

========192.168.0.160配置=======

my.cnf配置文件

server-id=1

log-bin=mysql-bin-master  #启用mysql二进制日志文件

binlog-do-db=HA      #指定允许从同步的数据库

binlog-ignore-db=mysql   #指定不允许从同步的数据库

扫描二维码关注公众号,回复: 7643556 查看本文章

mysql> grant replication slave on *.*  to  'slave'@'192.168.0.170'  identified by 'password';

mysql> show master status;

mysql> flush privileges

mysql> select * from mysql.user where user='slave';

==================================

==========192.168.0.170=============

my.cnf配置文件

server-id=2

mysql>stop slave;

mysql> change master to master_host='192.168.0.160',master_user='slave',master_password='password';

mysql>flush privileges;

mysql> start slave;

===================================

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

测试:

在192.168.0.160上创建数据库

mysql> create database test;

myql> show databases;

在192.168.0.170上查询数据库

mysql>show slave status;  #io进程和sql进程都必须为yes,表示配置正确。

mysql> show databases;

查询成功,表示主从配置成功。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

===================================

主从配置,反向再进行部署一次即可。

第二步:192.168.0.170 作为主数据库,192.168.0.160作为从数据库,配置如下:

========192.168.0.170配置=======

my.cnf配置文件,添加

log-bin=mysql-bin-slave

binlog-do-db=HA

binlog-ignore-db=mysql

mysql> set sql_log_bin=off  #首先关闭bin_log日志记录

mysql> grant replication slave on *.*  to  'slave'@'192.168.0.160' identified by 'password';  #给从库赋权同步功能

mysql>select host,user from mysql.user where user='slave';      #查询从库同步账号的所有登陆主机信息

mysql> delete from mysql.user where user='slave' and host='ip address';  #删除多余的不需要的主机登陆信息,安全

mysql>show master status;            #查看主库信息

mysql>set sql_log_bin=on            

mysql>flush privileges;             #刷新权限表信息

=============================================

========192.168.0.160配置=======

mysql> show slave status;      #查询从库进程状态,若有no,则需要检查网络及io状态,关闭防火墙等。

mysql> set sql_log_bin=off;

msyql>stop slave;

msyql>change master to master_host='192.168.0.170',master_user='slave',master_password='password'; 

mysql> start slave;        #如有报错,则需要使用reset slave 重置slave,然后重新设置

mysql> reset slave;

myql> change master to master_host='192.168.0.170',master_user='slave',master_password='jpassword';

mysql> start slave;

mysql> show slave status\G

mysql> flush priviliges;

mysql>set sql_log_bin=on;

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

测试:

在192.168.0.170上创建数据库

mysql> create database testA;

myql>show slave status;    #查询进程状态,必须都为yes,表示正常

在192.168.0.160上查询数据库验证

mysql> show database testA;  #如果存在表示同步成功

myql>show slave status;    #进程状态必须同为yes。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

至此,mysql主主同步配置全部完成。

猜你喜欢

转载自www.cnblogs.com/xiaofeng666/p/11747404.html