mysql主主备份:

保证各服务器上的数据库中的数据一致,因此需要开启数据库同步机制。由于是一整套系统,并且系统内含数据库。由于任何一台服务器都有可能被选中,因此要让所有的数据库上的数据都是最新的,任何一个服务器上的数据发生变化时都要自动的同步到其他的服务器上。

三维可视化管理系统使用的时Mysql数据库,这里采用的时主-主备份机制进行同步的。

主一数据库:192.168.10.7

主二数据库:192.168.10.212

主数据库1:

编辑数据库配置文件

3DDataCenter\64\mysql\my.ini
# 开启二进制同步
log-bin=mysql-bin # 设置ID,不能重复,可以使用IP最后一位数字 
server-id=129 # 需要同步的数据名称,多个数据库则要重复设置: bin-do-db,bin-ignore-db为互斥关系, 只需设置其中一项即可
replicate-do-db=itv # 自增长字段初始值为1
auto-increment-offset=2 # 自增长字段增量值
auto-increment-increment=2 # 跳过所有复制的错误
slave-skip-errors=all

主数据库2:

编辑数据库

3DDataCenter\64\mysql\my.ini
# 开启二进制同步
log-bin=mysql-bin # 设置ID,不能重复,可以使用IP最后一位数字 
server-id=128 # 需要同步的数据名称,多个数据库则要重复设置: bin-do-db,bin-ignore-db为互斥关系, 只需设置其中一项即可
replicate-do-db=itv # 自增长字段初始值为1
auto-increment-offset=1 # 自增长字段增量值
auto-increment-increment=2 # 跳过所有复制的错误
slave-skip-errors=all

配置完成后如果项目已经启动则需要重启,若没有启动项目此时启动项目

创建mysql复制账户:

在主一数据库操作:

为主二的所在的ip创建一个账号密码为root1,这样就能够允许远程访问本机数据库了

在 3DDataCenter\64\mysql\bin 地址栏上面输入cmd

登录mysql:

mysql -uroot -p -P3333   //登录mysql
use mysql;
grant replication slave on *.* to root1@'192.168.10.212' identified by 'root1';

赋予权限:如果就这样连接的话虽然能访问但还是看不了数据的,所以需要赋予root1权限

GRANT ALL PRIVILEGES ON *.* TO 'root1'@'192.168.10.212' IDENTIFIED BY 'root1' WITH GRANT OPTION;

立即生效:

flush privileges;

在主二数据库操作:

为主二的所在的ip创建一个账号密码为root1,这样就能够允许远程访问本机数据库了

在 3DDataCenter\64\mysql\bin 地址栏上面输入cmd

登录mysql:

mysql -uroot -p -P3333   //登录mysql
use mysql;

grant replication slave on *.* to root1@'192.168.10.7' identified by 'root1';
GRANT ALL PRIVILEGES ON *.* TO 'root1'@'192.168.10.7' IDENTIFIED BY 'root1' WITH GRANT OPTION;

立即生效:

flush privileges;

测试能否访问:

在主一登录主二的数据库:

mysql -h192.168.10.212 -uroot1 -p -P3333   //登录主二的数据库

继续连接,发现可以连接成功,并且可以查看数据

show databases;  //查看数据库

同理,在主二的数据库可以访问主一的数据库看下:

mysql -h192.168.10.7 -uroot1 -p  -P3333   //登录主一的数据库

show databases;  //查看数据库

互告bin-log信息

登录本地的mysql

主主同步还有主从同步都是基于binlog的原理进行,相当于我们打开了这个开关,每次操作数据库都会产生一个binlog日志,然后把binlog日志进行发给对方进行执行,这样数据就保持同步了

首先进入MySQL命令行:

在主数据库1下操作:

查看日志: show master status;

设置同步:

change master to master_host = '192.168.10.212',master_user='root1',master_password='root1',master_port=3333,master_log_file='mysql-bin.000001',master_log_pos=47007;

备注: master_log_file与File值一致, master_log_pos与Position值一致

开始同步: start slave;

查看同步情况:

show slave status\G;

当看到了两个yes,即:Slave_IO_Running: Yes

Slave_SQL_Running: Yes

如果是两个yes就说明已经成功

出现报错的情况

说明已经配置成功了,但是这里有一个显示为no,明显有问题

解决办法:

stop slave;
reset slave;
start slave;

然后我们继续查看同步情况;

show slave status\G;

发现还是报错,只是报错的内容不一样

继续输入

reset master;
show master status\G;

stop slave;   //这里可能需要等待一会儿

change master to master_host = '192.168.10.212',master_user='root1',master_password='root1',master_port=3333,master_log_file='mysql-bin.000001',master_log_pos=106;

start slave;

show slave status\G;

支持主数据库一完成

在主数据库2下操作:

这里其实跟上面的主数库1是一样的操作

show master status;

change master to master_host = '192.168.10.212',master_user='root1',master_password='root1',master_port=3333,master_log_file='mysql-bin.000001',master_log_pos=695;

备注: master_log_file与File值一致, master_log_pos与Position值一致

开始同步:

  start slave;

查看同步情况:

 show slave status\G;

如果碰到问题可以根据上面的出现报错的情况处理

测试:在浏览器打开两个页面,我们修改其中一个数据

我们访问192.168.10.7

这是修改前:

我们修改一个数据看另外的一个项目数据会不会改变

我们看下另外一个地址

同步成功

windows下mysql的数据主主同步的更多相关文章

  1. coreseek实战(二):windows下mysql数据源部分配置说明

    coreseek实战(二):windows下mysql数据源部分配置说明 关于coreseek在windows使用mysql数据源的配置,以及中文分词的详细说明,请参考官方文档: mysql数据源配置 ...

  2. windows下mysql配置

    windows下mysql配置   忙活了大半天,总算配置好了,本文献给windows下没试用过Mysql的小白,勿喷 http://blog.csdn.net/z1074907546/article ...

  3. Windows下MySQL配置及安全加固总结

    Windows下MySQL配置及安全加固总结 在网管的实际使用过程中,MySQL数据库在安装后的配置及安全加固内容,在客户中逐渐要求越来越高.从反馈的问题看,一般都是由第三方软件公司的软件扫描整个系统 ...

  4. windows下mysql和linux下mysql主从配置

    1. linux下mysql安装版本5.6   windows下mysql版本5.7  不要问我为什么版本不一致  就是想这么搞 2. linux为主服务器   windows为从服务器 3.找到li ...

  5. Windows 下目录及文件向Linux同步

    本文解决的是Windows 下目录及文件向Linux同步的问题,Windows向 Windows同步的请参考:http://www.idcfree.com/article-852-1.html 环境介 ...

  6. Windows下MYSQL自动备份批处理

    windows下MYSQL自动备份批处理 2011-05-04 09:16:45|  分类: mysql|举报|字号 订阅     按系统时间进行备份 注意mysql安装路径中如果有空格.就要把,.b ...

  7. Windows 下 MySql 5.7.20安装及data和my.ini文件的配置(转)

    Windows 下 MySql 5.7.20安装及data和my.ini文件的配置     本文通过图文并茂的形式给大家介绍了MySql 5.7.20安装及data和my.ini文件的配置方法. my ...

  8. (转)Windows下MySQL :GUI安装和使用(MySQL GUI tools)

    原文:http://blog.csdn.net/dahunbi/article/details/52970815 MySQL GUI Tools是MySQL官方提供的图形化管理工具,功能很强大,值得推 ...

  9. Windows 下MySQL zip 安装

    主要步骤: 1.下载解压到安装的文件夹 2.配置环境路径 3.配置my.ini文件,设置程序路径和数据存储路径 4.以管理员身份启动Mysqld install(提示sevice安装成功) 5.启动M ...

随机推荐

  1. 05 MySQL_主键约束

    主键约束 主键: 用于表示数据唯一性的字段称为主键: 约束:就是对表字段添加限制条件 主键约束:保证主键字段的值唯一且非空: - 格式 : create table t1(id int primary ...

  2. day01 Java_JVM,JCR,JDK

    精华笔记: java开发环境: 编译运行过程: 编译期:.java源文件,经过编译,生成.class字节码文件 运行期:JVM加载.class并运行.class(0和1) 特点:跨平台.一次编程到处使 ...

  3. Solution -「Luogu 5170」类欧几里得算法

    推柿子大赛了属于是. 题目要求三个柿子,不妨分别记为: \[\begin {align} f (a, b, c, n) &= \sum \limits _{i = 0} ^{n} \lfloo ...

  4. SpringBoot集成文件 - 如何基于POI-tl和word模板导出庞大的Word文件?

    前文我们介绍了通过Apache POI通过来导出word的例子:那如果是word模板方式,有没有开源库通过模板方式导出word呢?poi-tl是一个基于Apache POI的Word模板引擎,也是一个 ...

  5. typora的第一天

    一级标题 二级标题 三级标题 ..... 表格 java spring mybatis 代码 java代码 public void Hello(){ } 字体 hello word! hello wo ...

  6. SmartIDE v1.0.23 一个非常不敏捷的发布

    SmartIDE v1.0版本(CLI Build v1.0.23.4650,Server Build v1.0.23.4646)已经发布,在超过4000 个 Builds 之后,我们终于发布了v1. ...

  7. 求教:Knife4jAggregationDesktop访问报错HTTP ERROR 404

    (1)Windows Server 2019下面,java版本:c:\Users\WinUser01\.jdks\corretto-1.8.0_292\bin\java.exe(2)Knife4jAg ...

  8. 新一代大数据任务调度 - Apache DolphinScheduler喜提十大开源新锐项目 & 最具人气项目

    经 10000+ 开发者公开票选,20+专家评审. 10+ 主编团打分,历经数月打磨,11 月 19 日,由InfoQ 发起并组织的[2020中国技术力量年度榜单评选]结果正式揭晓. 2020 年度十 ...

  9. HDU4348 To the moon (主席树)

    标记永久化,除非想\(MLE\) 忽然感到主席树不过是函数式的树套树 #include <iostream> #include <cstdio> #include <cs ...

  10. SpingBoot解析Excel数据

    前言 在最近的工作中,由于导入模板除了前三列(姓名.手机号.实发工资)固定:其余的列不固定,并且可以做到两个模板的数据都能够正常入库进行对应业务处理. 一.数据模板数据展示: (1)模板一 (2)模板 ...