一、主从库系统环境

1.主库系统:Microsoft Windows Server 2008 R2 Enterprise

2.从库系统: Microsoft Windows 7 旗舰版

二、主从库系统MYSQL版本(保证版本一致,否则会出现不能同步)

1.主库MYSQL版本:5.6.16

2.从库MYSQL版本:5.6.16

三、主库(IP:100.100.100.211)MYSQL配置

1.找到mysql的配置文件my.ini,默认安装的位置: C:\ProgramData\MySQL\MySQL Server 5.6

  • 我们在修改这个my.ini前先把这个文件备份一下
  • 我们将这个my.ini文件打开
  • 在[mysqld]下增加如下配置,其中binlog-do-db是指定作为要同步的数据库,如果需要所有数据库都同步,那么这一项可以去掉

##服务ID,同一局域网内保持唯一性
server-id=100
##开启二进制日志功能
log-bin=mysql-bin
##指定mysql的binlog日志记录哪个db
binlog-do-db=test
##禁用dns反查
skip-name-resolve
  • 修改完成后重启mysql服务,在任务栏管理器中-服务-找到mysql服务右键先停止再启动

  • 命令行登录mysql,执行完下面的命令后输入root用户的密码即可
mysql -uroot -p
  • 在master数据库创建数据同步用户,授予用户 slave REPLICATION SLAVE权限和REPLICATION CLIENT权限,用于在主从库之间同步数据。
CREATE USER 'slave'@'%' IDENTIFIED BY '@#$Rfg345634523rft4fa';
GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'slave'@'%';

>>语句中的%代表所有服务器都可以使用这个用户,如果想指定特定的ip,将%改成ip即可。

  • 查看主mysql的状态
show master status;

上面图中的File和Position在从库配置中会用到,记录下FilePosition的值,并且不进行其他操作以免引起Position的变化

  • 主库配置完毕

四、从库(IP:100.100.100.98)MYSQL配置

  • 同样找到my.ini的位置,默认安装的话,一般是这个路径:C:\ProgramData\MySQL\MySQL Server 8.0
  • 将my.ini备份一下
  • 打开my.ini文件在[mysqld]下加入从库id配置,如下图:

[如果需要跳过所有的复制错误,可以在[mysqld]下加入以下配置]

#跳过所有错误
slave-skip-errors=all
  • 重启mysql服务,可通过任务栏管理器中的服务直接右键菜单点击重启服务,如下图:

  • 命令行登录mysql,输入下面的命令再输入密码即可
mysql -uroot -p

如下图:

  • 执行主从同步命令
 change master to master_host='100.100.100.211', master_user='slave', master_password='@#$Rfg345634523rft4fa', master_port=3306, master_log_file='mysql-bin.000001', master_log_pos= 427, master_connect_retry=30;

【参数说明】

master_host :Master的地址

master_port:Master的端口号

master_user:用于数据同步的用户

master_password:用于同步的用户的密码

master_log_file:指定 Slave 从哪个日志文件开始复制数据,即上文中提到的 File 字段的值

master_log_pos:从哪个 Position 开始读,即上文中提到的 Position 字段的值

master_connect_retry:如果连接失败,重试的时间间隔,单位是秒,默认是60秒

  • 开启主从复制
start slave;
  • 查看从库同步状态
show slave status \G;

如下图:

[SlaveIORunning 和 SlaveSQLRunning 都是Yes说明主从复制已经开启]

  • 从库配置完成
  • 现在可以在主库中增加一条数据,然后看从库中是否有该数据,如果有则说明,主从同步已经配置成功了

五、互为主从配置

1、从库(IP:100.100.100.98)MYSQL配置(按照主库进行配置)

  • 我们将这个my.ini文件打开
  • 在[mysqld]下增加如下配置,其中binlog-do-db是指定作为要同步的数据库,如果需要所有数据库都同步,那么这一项可以去掉

##服务ID,同一局域网内保持唯一性
server-id=98
##开启二进制日志功能
log-bin=mysql-bin
##指定mysql的binlog日志记录哪个db
binlog-do-db=test
##禁用dns反查
skip-name-resolve
  • 修改完成后重启mysql服务,在任务栏管理器中-服务-找到mysql服务右键先停止再启动

  • 命令行登录mysql,执行完下面的命令后输入root用户的密码即可
mysql -uroot -p
  • 在master数据库创建数据同步用户,授予用户 slave REPLICATION SLAVE权限和REPLICATION CLIENT权限,用于在主从库之间同步数据。
CREATE USER 'slave'@'%' IDENTIFIED BY '@#$Rfg345634523rft4fa';
GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'slave'@'%';

2、主库(IP:100.100.100.211)MYSQL配置(执行同步从库的命令)

  • 执行主从同步命令
 change master to master_host='100.100.100.99', master_user='slave', master_password='@#$Rfg345634523rft4fa', master_port=3306, master_log_file='mysql-bin.000001', master_log_pos= 427, master_connect_retry=30;

【参数说明】

master_host :Master的地址

master_port:Master的端口号

master_user:用于数据同步的用户

master_password:用于同步的用户的密码

master_log_file:指定 Slave 从哪个日志文件开始复制数据,即上文中提到的 File 字段的值

master_log_pos:从哪个 Position 开始读,即上文中提到的 Position 字段的值

master_connect_retry:如果连接失败,重试的时间间隔,单位是秒,默认是60秒

  • 开启主从复制
start slave;
  • 查看从库同步状态
show slave status \G;

如下图:

[SlaveIORunning 和 SlaveSQLRunning 都是Yes说明主从复制已经开启]

  • 从库配置完成
  • 现在可以在主库中增加一条数据,然后看从库中是否有该数据,如果有则说明,主到从同步已经配置成功了;
  • 现在可以在从库中增加一条数据,然后看主库中是否有该数据,如果有则说明,从到主同步已经配置成功了;

MYSQL互为主从同步(Windows)相关推荐

  1. MYSQL互为主从部署(Censo:6)

    MYSQL互为主从 操作环境: 系统环境:centos6.5_x64 Mysql-A:192.168.153.131 Mysql-B:192.168.153.140 Mysql安装已经完成 防火墙,s ...

  2. 高性能高可用MySQL(主从同步,读写分离,分库分表,去中心化,虚拟IP,心跳机制)

    高性能高可用MySQL(主从同步,读写分离,分库分表,去中心化,虚拟IP,心跳机制) 视频地址:https://www.bilibili.com/video/BV1ry4y1v7Tr?p=8& ...

  3. mysql数据库主从同步过程详述(三)

    续mysql数据库主从同步过程详述(二) 在此说明下:在最后试验过程中,当查看从库状态的时候,IO_Running显示为no,从error_log中看到如下报错提示: 120523  0:55:31 ...

  4. Linux下MySQL数据库主从同步配置

    操作系统:CentOS 6.x 64位 MySQL数据库版本:mysql-5.5.35 MySQL主服务器:192.168.21.128 MySQL从服务器:192.168.21.129 准备篇: 说 ...

  5. mysql数据库主从同步配置教程--数据库同步

    背景: 最近有一个mysql数据库同步的需求,我用了mysql主从同步的方法来实现.下面把步骤记录一下. 环境和拓扑 操作系统:Centos6.6 X64 mysql版本:5.1.73 Master: ...

  6. mysql数据库连接配置路径_[zz]MySQL数据库主从同步安装与配置总结

    注意:本文出自"阿飞"的博客 ,如果要转载本文章,请与作者联系! 并注明来源: http://blog.sina.com.cn/s/blog_49fd52cf0100pog2.ht ...

  7. mysql的主从同步问题_mysql主从同步问题梳理

    前言: MySQL主从复制故障机延迟原因有很多,之前详细介绍了Mysql主从复制的原理和部署过程,在mysql同步过程中会出现很多问题,导致数据同步异常.以下梳理了几种主从同步中可能存在的问题: 1) ...

  8. mysql设置主从同步只读_MySql主从同步设置

    主MySql服务器A:192.168.1.3 从MySql服务器B:192.168.1.4 1.编辑A的my.cnf,一般在/etc/my.cnf,在[mysqld]下面添加 log-bin=mysq ...

  9. windows下mysql主从同步_详解windows下mysql的主从同步

    半路出家到Java,刚开始听说到说程序支持读写分离感觉特别高大上,也一直没接触 偶然的机会接触到了,就一定得记下来. 今天先讲讲数据库的主从同步,两个好处: 是读写分离可以用上.比如 写操作就写到主数 ...

最新文章

  1. 电击、警棍、爆头,被骗去柬埔寨的程序员有多惨?
  2. 李飞飞:让机器有分辨事物的“眼睛”
  3. 06-jvm-查询命令-01
  4. ython二十五: 解压序列
  5. 逆袭之旅DAY17.东软实训.Oracle.存储过程
  6. linux系统更新字体,更换Linux下字体
  7. 九妹带你了解oracle
  8. 25 个超棒的 WordPress 主题(2012)
  9. spring boot web项目_SpringBoot2.x入门到项目实战课程系列(第四章)
  10. 第 1-7 课:数组和排序算法 + 面试题
  11. python模块的发布_(转载)Python中模块的发布与安装
  12. 第十六章:springboot 整合logback日志
  13. FB正在大规模重构React Native,预计今年发布
  14. java怎么实现微博评论_关于微博评论功能的设计与思考
  15. ubuntu屏幕放大+复制粘贴共享
  16. Kattis - hoppers Hoppers(判奇环)
  17. 怎样自建邮件服务器,简单快速搭建邮件服务器
  18. Yocto(一)-介绍
  19. 华硕笔记本很久没用开机后无法进入系统自动跳转bios界面的解决方法
  20. 华为云数据库三大优势

热门文章

  1. 集成学习——XGBoost原理理解
  2. 如果访问设备屏幕宽度小于1024,跳转到移动端
  3. Jenkins 在Windows下插件无法安装问题解决
  4. python把dict转成json_Python dict(或对象)与json之间的互相转化
  5. html目录清华,清华大学HTML、《网页设计与制作》讲义.ppt
  6. xml文件中““符号报错,无法识别
  7. JS为键盘中的Enter键添加onkeyDown()和onkeyUp()事件
  8. IE浏览器中访问jsp页面,页面不执行ajax请求,后台控制台报错
  9. HTML判断如果并且,将html转换为js,并且其中含有判断语句
  10. mac 建立软链接_MAC要倒闭了吗?正装口红80块,生姜高光105,让爱老师存点钱吧!...