MySQL双主复制模型

配置双主数据库实例


双方可以相互复制

为了不影响效果,两台虚拟机把刚才生成的数据文件都删除

rm -rf /var/lib/mysql/*

1、时间要同步

2、双方既要启动中继日志,也需要启动二进制日志

3、编写主的配置文件

MySQL双主复制模型

双主复制时有一个最大的问题,自动增长字段会重叠。为了避免重叠,一个节点使用奇数,另一个节点使用偶数 这里表示的意思,从1增长,一次增长2 从数据库就从2开始,一次增长2

这里是为了确保id号不会冲突

编写从服务器的配置文件

MySQL双主复制模型

4、启动两个节点

5、各自连上mysql,都要授权一个拥有复制权限的用户账户

主服务器

MySQL双主复制模型

从服务器

MySQL双主复制模型

注意一定要看清双方的二进制文件日志在什么位置,这里碰巧都一样

MySQL双主复制模型

MySQL双主复制模型

验证本地对应的二进制文件是否存在

ls /var/lib/mysql

MySQL双主复制模型

两台服务器都有

下一步把各自的主节点都指向对方就可以了

节点2

MySQL双主复制模型

节点1

MySQL双主复制模型

所以每台主机,本地都可以SHOW SLAVE STATUS\G

然后启动线程

START SLAVE;

MySQL双主复制模型

都启动了

测试

在主的创建一个数库

MySQL双主复制模型

在从的查看

MySQL双主复制模型

成功

再到从的创建一个数据库

MySQL双主复制模型

MySQL双主复制模型

在从的数据库中创建一个表,在主的服务器中也能看到

MySQL双主复制模型

MySQL双主复制模型

MySQL双主复制模型

互相复制,成功

再插入数据

MySQL双主复制模型

到另一个节点去查看数据

MySQL双主复制模型

复制成功

这里如果插入两个数据就会有排序问题

MySQL双主复制模型

MySQL双主复制模型

批量插入这个问题没法避免

原创文章,作者:15152188070,如若转载,请注明出处:http://www.178linux.com/60268

(0)
1515218807015152188070
上一篇 2016-11-21
下一篇 2016-11-21

相关推荐

  • Bash Shell详解

    引言:什么是Shell? Linux的命令行接口归结起来就是各种Shell,那么到底什么是Shell?Shell,译为外壳,是用户直接连入计算机所使用的计算机程序,负责解析用户提供的命令,如词法分析、语法分析、句法分析。 1.Shell的分类 Linux 的命令 shell 是与操作系统相分离的一层。不同的 shell 环境影响您具备不同的功能,比如可编辑的…

    2017-09-07
  • Nginx 编译安装

    简介 Nginx ("engine x") 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx是由Igor Sysoev为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配…

    Linux干货 2016-12-01
  • 网卡路由配置信息及偷懒用法

            对于初学Linux的人来说,配置网卡无疑是比较晕的,各种的配置文件,字段、命令等让人眼花撩乱。所以这一章主要给大多数还在网卡配置路由配置的同学们解惑一、网卡配置基本概念        …

    Linux干货 2017-05-08
  • 运维练习题

     1、简述TCP三次握手四次挥手过程及各过程中客户端和服务器端的状态。TCP三次握手:客户端向服务器发送SYN包,客户端进入syn_SEND状态服务端收到客户端的发送的包返回ACK+SYN包,服务器端进入SYN_RECV状态客户端收到服务器端返回的包再发ACK包,客户端进入ESTABLISHED状态,服务器收到包也进入ESTABLISHED状态客户…

    Linux干货 2016-06-12
  • Linux文件查找命令

      Linux系统文件查找     使用linux系统难免会忘记文件所在的位置,可以使用以下命令对系统中的文件进行搜索。 locate命令:     locate命令其实是“find -name”的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库(/var/lib/locatedb),这个数据库中含有本地所有文件信息。L…

    Linux干货 2016-11-28
  • 第九周作业

    1. 写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; # awk -F: ‘{if($7!=”/sbin/nologin”) {printf “Logined user %s\n”…

    Linux干货 2017-03-01