目标:自动同步Master 服务器上面的Demo数据库到Slave 服务器的Demo数据库中。

对于一些操作系统比较强而使用频率又不高的东西,往往好久不去弄就忘记了,所以要经常记录起来,方便日后查阅。

环境

数据库版本:mysql5.7.17

Master 服务器(Windows server2012 R2):192.168.1.18

Slave 服务器 (win7 64bit):192.168.1.95

mysql5.7.17 winx64免安装版下载地址:http://dev.mysql.com/downloads/file/?id=467269

具体配置方法请参考:https://www.cnblogs.com/c3gen/p/6168765.html

工具:Cmder(window神器)。你也可以直接用window的CMD。

注意:主从服务器的防火墙都要给mysql端口添加例外。也就是说两台服务器的mysql数据库可以互连。

修改配置文件

主库

开始——运行—services.msc,打开主库的服务列表,找到服务MYSQL57 ,查看该服务的配置文件所在路径。

打开配置文件my.ini,添加如下配置项

log-bin=mysql.bin
# 使binlog在每N次binlog写入后与硬盘同步
sync-binlog= # 1天时间自动清理二进制日志
expire_logs_days= # 需要同步的数据库
binlog-do-db=demo # 不需要同步的数据库
binlog-ignore-db = mysql
binlog-ignore-db = test
binlog-ignore-db = information_schema
binlog-ignore-db = bak
binlog-ignore-db = sys
binlog-ignore-db = omserver
binlog-ignore-db = sakila
binlog-ignore-db = smp_base_1_0
binlog-ignore-db = smp_base_2
binlog-ignore-db = smp_emx_1_0
binlog-ignore-db = smp_emx_2
binlog-ignore-db = smp_maint_1_0
binlog-ignore-db = smp_maint_2 # Error Logging.
log-error="WIN-1QQDRPR5R2M.err" # Server Id.
server-id=

主服务器上面有很多数据库,而我们只需要同步其中一个数据库demo。

从库

以同样的方式找到并打开mysql数据库配置文件my.ini。

修改配置如下:

# Server Id.
server-id= # bind-address=192.168.1.95
log_bin=mysql-bin # 二进制日志自动删除的天数
expire_logs_days=
需要注意的是:主库和从库的Server Id不能相同,通常我们将其设置为IP地址的末尾数值,假如IP是192.168.1.95,那么我们设置95.

命令操作

主库

1.连接到主库

mysql -h 192.168.1.18 -uroot -p

2.创建授权用户

grant replication slave on *.* to 'test'@'192.168.1.95' identified by 'yujie' ;

说明:test是mysql用户名,yujie是密码,192.168.1.95是从库的IP地址。

3. 刷新权限

flush privileges;

6.创建测试数据

 create database test;
use test;
create table test(id int(), value varchar());
insert into test values(, 'aa'),(, 'bb'),(, 'cc') ,(, 'dd') ,(, 'ff') ,(, 'gg') ,(, '');

7. 显示主服务器的状态信息,并且找到File 和 Position 的值记录下来

从库

1.登录从库

mysql -uroot -p

2 .将主库的demo数据库克隆一份到从库,并给test用户重新赋权限。

grant all privileges on *.* to 'test'@'%' identified by 'yujie' with grant option;

3.重启mysql服务

4.slavemaster 建立连接,进行数据同步

change master to master_host='192.168.1.18',master_user='test',master_password='yujie', master_log_file='mysql.000001',master_log_pos=937;

注意这里的master_log_file和master_log_pos的值就是前面在主库中查到的File和Position。

5.查看从数据库状态

show slave status \G;

Slave_IO_Running: Yes Slave_SQL_Running: Yes以上两项都为Yes说明配置成功。

验证主从

在master 插入一条数据,然后再slave查看是否同步成功。

主库:

mysql> use demo;
Database changed
mysql> insert into test values(, '');
Query OK, row affected (0.14 sec)

从库:

mysql> use demo;
Database changed
mysql> select * from test;
+------+-------+
| id | value |
+------+-------+
| | aa |
| | bb |
| | cc |
| | ff |
| | gg |
| | |
| | |
+------+-------+
rows in set (0.00 sec)

如上图表示同步成功。

其实在mysql5.7之后还有另一种复制方式,那就是基于事务的复制,并且你可以在这两种复制方式之间进行切换,我这里只演示了通过二进制日志的形式进行复制。

参考资料:

mysql-5.7.17-winx64免安装版,win10环境下安装配置:https://www.cnblogs.com/c3gen/p/6168765.html

mysql 5.7 主从同步配置(windows):https://blog.csdn.net/natahew/article/details/71122569

MySQL5.7 主从复制配置:https://segmentfault.com/a/1190000010199283

mysql5.7在windows下面的主从复制配置的更多相关文章

  1. windows下Redis主从复制配置(报错:Invalid argument during startup: unknown conf file parameter : slaveof)

    主从复制配置中的遇到的异常: Invalid argument during startup: unknown conf file parameter :  slaveof 把Redis文件夹复制两份 ...

  2. mysql5.7 for windows二进制安装及配置

    1)mysql5.7二进制软件下载 下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads 下载软件:mysql-5.7.25-wi ...

  3. MySQL5.7 主从复制配置

    一.主从复制原理 MySQL 主从复制是一个异步的复制过程,主库发送更新事件到从库,从库读取更新记录,并执行更新记录,使得从库的内容与主库保持一致.每一个主从复制的连接,都有三个线程.拥有多个从库的主 ...

  4. mysql-5.7.18 免安装版安装配置(Windows)

    mysql-5.7.18 免安装版安装配置(Windows) 一.在Mysql官网下载Mysql-5.7.18的ZIP文件 下载链接为:https://dev.mysql.com/downloads/ ...

  5. mysql5.7.26做主从复制配置

    一.首先两台服务器安装好mysql数据库环境 参照linux rpm方式安装mysql5.1 https://www.cnblogs.com/sky-cheng/p/10564604.html 二.主 ...

  6. CentOS 6.5系统使用yum方式安装LAMP环境和phpMyAdmin,mysql8.0.1/mysql5.7.22+centos7,windows mysql安装、配置

    介绍如何在CentOs6.2下面使用YUM配置安装LAMP环境,一些兄弟也很喜欢使用编译的安装方法,个人觉得如果不是对服务器做定制,用yum安装稳定简单,何必去download&make&am ...

  7. centos 7 Mysql5.7 主从复制配置

    1.环境 Centos 7 Mysql 5.7 Master  192.168.1.71 Slave01 192.168.1.72 2.分别配置master,slave01 # vi /etc/my. ...

  8. MySQL5.7基于binary log的主从复制

    MySQL5.7基于binary log的主从复制 作者:尹正杰  版权声明:原创作品,谢绝转载!否则将追究法律责任. 基于binary log 的复制是指主库将修改操作写入binary log 中, ...

  9. 【MySQL】-NO.21.MySQL.1.MySQL.1.001-【Install MySQL5.7 On Windows】

    1.0.0 Summary Tittle:[MySQL]-NO.21.MySQL.1.MySQL.1.001-[Install MySQL5.7 On Windows] Style:Web Serie ...

随机推荐

  1. telnet命令使用详解

    telnet命令用于登录远程主机,对远程主机进行管理.telnet因为采用明文传送报文,安全性不好,很多Linux服务器都不开放telnet服务,而改用更安全的ssh方式了.但仍然有很多别的系统可能采 ...

  2. Adaboost的意义

    Adaboost是广义上的提升方法(boosting method)的一个特例.广泛应用于人脸识别等领域. 它的基本思想是,“三个臭皮匠赛过诸葛亮”,即用多个弱分类器的线性加权,来得到一个强的分类器. ...

  3. IDEA 使用tomcat7-maven-plugin

    使用了这个插件就不需要配置tomcat了,直接用maven去run就行 配置方法:pom里添加:(之所以用tomcat7是因为如果直接用依赖下载很难下载到tomcat8-maven-plugin,详情 ...

  4. 2018 年 3 月 iOS架构师 面试总结

    序言: 今年2月中下旬因为个人原因,换了一份工作,3月初期间面试了有3,4家,基本都是D轮或者刚刚上市的公司,也有上榜的BAT,也从他们的面试笔试中看到了自己的一些不足,于是就想写出来和大家分享一下, ...

  5. Learn HTML5 in 5 Minutes!

    There's no question, HTML5 is a hot topic for developers. If you need a crash course to quickly unde ...

  6. 我的linux一万小时

    这不是一篇鸡汤文,因为我并没有在使用 Linux 一万小时后成为 Linux 达人,甚至在很多方面,我连新手都算不上.我走的这些弯路能篇成一本很有参考价值的反面教材,下面,我在www.itxdl.cn ...

  7. 二分查找的变种(Java实现)

    普通二分查找: 先回顾一下普通的二分查找 注意:二分查找有这样一个问题:当数组中数有重复时,比如 {3,3,3,3} 这个数组,二分查找3时,返回的是arr[1],也就是说二分查找并不会返回3第一次出 ...

  8. C语言最后一次作业--总结报告

    1.当初你是如何做出选择计算机专业的决定的? 经过一个学期,你的看法改变了么,为什么? 你觉得计算机是你喜欢的领域吗,它是你擅长的领域吗? 为什么? 当时选择计算机专业,是基于自己的高考分数和想出省的 ...

  9. Codeforces Round #471 (Div. 2) C. Sad powers

    首先可以前缀和 ans = solve(R) - solve(L-1) 对于solve(x) 1-x当中符合条件的数 分两种情况 3,5,7,9次方的数,注意这地方不能含有平方次 平方数 #inclu ...

  10. 1.使用dom4j解析XML文件

    一.dom4j的简介 dom4j是一个Java的XML API,是jdom的升级品,用来读写XML文件的.dom4j是一个十分优秀的JavaXML API,具有性能优异.功能强大和极其易使用的特点,它 ...