Mysql windows主+linux(centos7)从复制

以下是基于binlog的复制

1、配置之前为了无误,先将权限、防火墙处理了,关闭windows防火墙,centos7防火墙关闭命令 

//临时关闭

systemctl stop firewalld

//禁止开机启动

systemctl disable firewalld

2、设置远程访问(同时在windows和linux的mysql命令行中运行以下命令)

Grant all privileges on *.*  to 'root'@'%' identified by 'password' with grant option;

flush privileges;

3、修改配置文件(此操作在windows进行,修改my.ini文件)

[mysqld]

#id

server-id=1

# 二进制文件

log-bin="D:/Mysql/...data/mysql-bin"

#错误记录文件

log-error="D:/Mysql/...data/mysql-error"

#主从同步忽略的数据库

binlog-ignore-db=mysql

#指定主从同步需要同步的数据库(可选择性写)

binlog-do-db=test

修改完毕配置文件 ,主机授权从计算机,授权哪台计算机的数据库是自己的数据库,运行以下命令

grant replication slave,reload,super on *.* to 'root'@'192.168.178.%'identified by 'password';

flush privileges;

此时查看数据库的状态(此步骤前,确保mysql服务已经重启)

show master status;

注意:file的position需要在服务重启后查看最新值,可能会改变。

4、从机配置(配置linux中my.cnf文件)

[mysqld]

server-id=2

log-bin=mysql-bin

replicate-do-db=test

修改完毕,对从机进行授权,授权哪台及计算机数据库是自己的主数据库

重启从机的mysql服务

change master to master_host='192.168.178.1',master_user='root',master_password='password',master_port=3306,master_log_file='mysql-bin.000001',master_log_pos=783;

如果报错说以前处理过主从复制,执行stop slave;

开启主从同步

start slave;

show slave status \G;  #可让内容竖着显示

检查slave_IO_runing和slave_SQL_runing,都为YES状态则可行。

在主从中分别查看server-id

show variables like '%server_id%';

至此,可在主机的test数据库执行增、改操作,观察从机的test数据库的变化。

以下是基于GTID的复制

基于GTID的复制与基于binlog的复制大致相同,不相同的地方如下:

1、同样需要建立复制用户,不要在从服务器建立相同的账号,避免冲突

2、主服务器my.ini配置

bin_log=/usr/local/mysql/log/mysql-bin           #不适用默认数据目录存放,将log与数据放在不同目录

server_id = %        #保持此值唯一

gtid_mode=on     #打开gtid复制

enforce-gtid-consistency

log-slave-updates=on       #5.7之前需要配置此参数,5.7不需要配置

3、配置从库

server_id= %

relay_log=/usr/local/mysql/log/relay_log

gtid_mode=on

enforce-gtid-consistency

log-slave-updates=on

read_only=on

master_info_repository=table

relay_log_info_repository=table

4、从库启动命令

change master to master_host='192.168.178.1',master_user='root',master_password='password',master_port=3306,master_auto_position=1;

5、基于GTID复制的优缺点

优点:可以很方便的进行故障转移

            从库不会丢失主库的任何修改

缺点:故障处理比较复杂(跳过错误需要定位到具体的位置)

             对执行的sql有一定的限制

6、如何选择这两种模式

所使用的的mysql版本(5.6才支持,早些的5.6版本有一些bug)

复制架构及主从切换的方式

 所使用的的高可用管理组件(mmm不支持gtid复制,mha支持这两种复制)

对应用的支持程度             

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值