windows server2008 R2主从复制Mysql

windows server2008 R2主从复制Mysql

第一种配置
Master配置(my.ini)
 
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=E:\\mysql-8.0.18-winx64
# 设置mysql数据库的数据的存放目录
datadir=E:\\mysql-8.0.18-winx64\\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 设置master的serverid
server-id=1000
# 要生成的二进制日记文件名称
log-bin=mysql-bin
# 选择row模式 
binlog-format=ROW
# 要同步的数据库
binlog-do-db=zr_oa
# 不同步mysql系统数据库
binlog-ignore-db=mysql
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8

创建Slave,访问账号
create user 'slave'@'%' identified by '123456';
grant REPLICATION SLAVE,RELOAD,SUPER ON *.* TO slave@'%';
flush privileges;
查看Master状态

show master status

记录File和Position这两个值

Slave配置
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=E:\\mysql-8.0.18-winx64
# 设置mysql数据库的数据的存放目录
datadir=E:\\mysql-8.0.18-winx64\\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# slave数据库ID数据库ID
server-id=2000
# 启动MySQL二进制日志系统
log-bin=mysql-bin 
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8
在Slave执行
stop slave;
 
change master to master_host='xxx.xxx.xxx.xxx',master_user='slave',master_password='123456',master_log_file='binlog.000003',master_log_pos=2548442; 
 
start slave;
 
show slave status; 
 
第二种配置
Master修改my.ini配置文件

在[mysqld]下添加配置(如果有server-id,log-bin就无需重复添加)

#Master Config

#设置唯一的ID编号

server-id = 1

#二进制文件存放路径,默认路径在mysql的data文件夹下

log-bin = mysql-bin

#需要同步的数据库名称,可不写,如果写了就要和Slave上配置保持一致.

binlog-do-db = login

binlog-do-db = log

binlog-do-db = server

#不需要同步的数据库名称,可不写,如果写了就要和Slave上配置保持一致

binlog-ignore-db = mysql

保存,重启mysql服务

创建新用户slave,密码slave,不建议使用root

mysql>grant replication slave,reload,super on *.* to slave@172.16.11.73 identified by '123456';

mysql>flush privileges;

mysql>show master status;记录File和Position的值

Slave配置my.ini文件

在[mysqld]下添加配置(如果有server-id,log-bin等就不要重复添加)

#Slave Config

#设置唯一的ID编号,不得与主库编号一致

server-id = 2

#二进制文件存放路径,默认路径在mysql的data文件夹下

log-bin = mysql-bin

#需要同步的数据库名称,要和Master上配置保持一致

replicate-do-db = login

replicate-do-db = log

replicate-do-db = server

#不需要同步的数据库名称,可不写,如果写了就要和Master上配置保持一致

replicate-ignore-db = mysql

保存,重启mysql服务.

登陆数据库

mysql>change master to master_host='172.16.11.50',master_user='slave',master_password='123456',master_log_file='mysql-bin.000002',master_log_pos=855;

mysql> start slave;

mysql> show slave status\G

其中Slave_IO_Running: Yes 和 Slave_SQL_Running: Yes 两项都为Yes,说明配置成功.此时改动主库信息,从库会自动同步,可以自己测试下.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值