MySQL5.7.21 配置主从复制

Windows环境
MySQL-5.7.21

官网下载MySQL5.7.21.zip压缩包,解压缩   并复制出来三份 分别为m1 s1  m2 s2

其中 m1 -s1  这两个数据库我们要使用mycat做成分库分表,具体步骤请查看我的上一篇博客:


然后我们现在要实现的是m2 --->m1     s2--->s1  

首先:在这四个包下分别创建data目录 和my.ini文件  
打开my.ini文件   添加如下参数
[mysqld]  
  
 log_bin = log  
 basedir = D:\\tools\\DB\\test-mysql\\m1  
 datadir = D:\\tools\\DB\\test-mysql\\m1\\data  
 port = 3310  
 character_set_server=utf8  
 server_id = 20
 binlog-do-db=m2

[mysqld] log_bin = log
# 替换为自己的解压路径 basedir = D:\\tools\\DB\\mysql-5.7.21-winx64\\m1 datadir = D:\\tools\\DB\\mysql-5.7.21-winx64\\m1\\data port = 3307 character_set_server=utf8 server_id = 10 binlog-do-db=m2

注意 每个my.ini文件中的port和server_id不可重复
binlog-do-db=m2   表示要复制的数据库
同样在m2的my.ini文件中 binlog-do-db=m1

初始化MySQL实例 

以管理员身份(不然会提示权限错误)运行命令提示符,cd至m1/bin目录下,执行mysqld install m1 --defaults-file="D:\Program Files\mysql-m1\my.ini",提示服务安装成功。接着初始化数据,执行mysqld --defaults-file="D:\Program Files\mysql-m1\my.ini" --initialize,稍等片刻,执行成功没有任何提示。另外三个库也以此类推安装并初始化。

然后运行服务

重置mysql的root用户密码

第一种:
密码默认生成在data目录下xxx.err文件中有一行A temporary password is generated for root@localhost:xxx,就是密码了,然后cd到bin目录下执行命令,mysql -P3306 -uroot -pxxx,登录进去。 执行以下命令修改root用户密码为123456,依次类推修改另外三个库的。
注:mysql -P 一定要加上,指定对应的端口号,不然是默认的3306
alter user 'root'@'localhost' identified by 'youpassword';  


第二种:
在my.ini文件中添加skip-grant-tables 然后重启服务
在登陆MySQL  时候   mysql -P3310 -uroot -proot      密码随便输入就好  就可以跳过密码验证 登陆进去
随后修改密码 sql跟第一种的语句一样
密码修改完后 记得把 skip-grant-tables去掉  然后重启服务

配置权限
在主库中 创建一个从库用来登陆的用户


grant replication slave on *.* to slave@localhost identified by "123456";

然后查看master信息
记住file 和position 

打开m2   登陆后 配置master信息

 
change master to master_host='127.0.0.1',master_port=3310,master_user='slave',master_password='123456',master_log_file='log.000003',master_log_pos=690;

开启并查看状态

在展示信息中  如果看到

则证明配置成功!

检测主从复制

在主库中 创建m2数据库
创建一张user表

插入一条数据

切换到从库 查看主从复制是否生效

可以看到  数据库和表都被同步复制过来   
至此 配置MySQL主从复制完成 s1--->s2的复制 按如上步骤配置即可


  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值