简单来说,双主复制就是让两台mysql服务器中的数据保持同步,可以用来实现灾备和负载均衡

主机1 IP:192.168.200.128

主机2 IP:192.168.200.131

两台主机系统均为centos7

步骤也很简单

一定要记住,防火墙,selinux先关闭再实验

1。安装并部署mariadb

2。配置mariadb的配置文件

3。在两台主机mysql中增加用户以及密码,用来登录mysql

4。配置另一台主机为master,并开启slave

5。测试双主复制是否成功

下面用主机1说明

1。无非就是yum install mariadb mariadb-server -y还有设置密码为123456之类,不多说

2。如图,这个是在主机1上的配置文件截图,主机2也差不多,只需要把id改为2,mastera-bin该为masterb-bin,还有最后一行的1改为2就可以了。后面这两行是比较关键的,假设我们有一个表的id是自增的,那么如果我们在主机1和主机2上分别插入数据,那么很有可能新插入的主键会重复冲突,导致插入数据时出现问题



3。添加用户,授权replication slave就可以



4。设置master,其中IP,用户名,密码以及master_log_file和master_log_pos是在主机2上的,后面两个的值在主机2上执行show master status;即可获取



5。下面我们就实验一下,创建这么一个表



再插入一条数据,id自增为3



再到主机2中插入数据,从3的下一个数4开始,并且以2递增

对了,因为我都是在虚拟机做实验,所以总喜欢在做新实验时直接把系统快照直接恢复到刚装好系统的状态,这样可以避免很多问题。

所以我打算这回多找点事做,直接在配置好msyql之后不恢复快照直接进行mysql双主配置,然后,在主机2上change master。。。。那里时,一回车就包1201错误

上网一查,删除下面两文件

/var/lib/mysql/master.info

/var/lib/mysql/relay-log.info(我只删除了这个,问题解决,配置成功了,)

本来想向其他人请教一下的,结果上网一查就有就能解决了。所以百度,谷歌之所以存在,不是没有道理的。

有时候遇到问题,一定要先百度,看完百度搜索结果前两页还不能解决,再考虑请教别人吧,特别是这种提示有错误代码的,网上应该都有现成的答案的

linux环境下配置mysql双主复制的更多相关文章

  1. keepalived+mysql双主复制高可用方案

    MySQL双主复制,即互为Master-Slave(只有一个Master提供写操作),可以实现数据库服务器的热备,但是一个Master宕机后不能实现动态切换.而Keepalived通过虚拟IP,实现了 ...

  2. 分布式数据存储 - MySQL双主复制

    上篇文章<分布式数据存储 - MySQL主从复制>,我们说到MySQL主从复制很好的保障了从库,读的高可用性.so,问题来了: 1.针对主库,写的高可用性又是如何做到高可用性? 2.如果需 ...

  3. Window环境下配置MySQL 5.6的主从复制

    原文:Window环境下配置MySQL 5.6的主从复制 1.环境准备 Windows 7 64位 MySQL 5.6 主库:192.168.103.207 从库:192.168.103.208 2. ...

  4. 阿里云ECS服务器Linux环境下配置php服务器(二)--phpMyAdmin篇

    上一篇讲了PHP服务器的基本配置,我们安装了apache,php,还有MySQL,最后还跑通了一个非常简单的php页面,有兴趣的朋友可以看我的这篇博客: 阿里云ECS服务器Linux环境下配置php服 ...

  5. MySQL双主复制

    原文发表于cu:2017-06-12 本文简单介绍MySQL双主复制原理及1个简单是双主复制验证. 一.MySQL双主复制原理 1. 双主复制原理 master-master复制的两台服务器,既是ma ...

  6. mysql 双主复制 centos7

    mysql 安装请看:http://www.cnblogs.com/leohe/p/6839705.html 双主复制设置 1. 两台虚拟机,都是 centos7 主: 10.1.1.115 从: 1 ...

  7. 在Docker下搭建MySQL双主双重集群(单机展示,与多机原理一致)

    前言 Docker的安装部署&在Docker下MySQL的安装与配置 https://www.cnblogs.com/yumq/p/14253360.html 在Docker进行单机主从复制M ...

  8. mysql双主复制总结

    双主复制: 1).在两台服务器上各自建立一个具有复制权限的用户: 2).修改配置文件: # 主服务器A上 [mysqld] server-id = 10 log-bin = mysql-bin rel ...

  9. linux环境下配置虚拟主机域名

    linux环境下面配置虚拟主机域名 第一步:在root目录下面(即根目录)ls(查看文件)cd进入etc目录find hosts文件vi hosts 打开hosts文件并进行编辑在打开的文件最下面添加 ...

随机推荐

  1. Python Django 之 Template 模板的使用

    一.模板样式 注意: 1.url urlpatterns = { path('admin/', admin.site.urls), path('order/', views.order), path( ...

  2. Reveal 破解及使用

    Reveal是一款很好的iOS调试应用,这在你的开发中起到了相当大的帮助. 破解包可去http://xclient.info/?_=118ba0724e7a6af91ba29a22ee4131da 下 ...

  3. word-wrap与break-word属性的区别

    共同点 word-wrap:break-word与word-break:break-all都能把长单词强行断句 不同点 word-wrap:break-word会首先起一个新行来放置长单词,新的行还是 ...

  4. angular自定义指令

    1.在directive文件下创建指令的js文件 通常自定义指令需要声明模块(注意定义指令时, js内部指令名称需采用 aaAaBb驼峰的命名方式  html中使用的是aa-aa-bb) e.g (f ...

  5. Asp.Net MVC3.0中防止跨站的POST

    在Form中添加 @Html.AntiForgeryToken(); 在后台的Action中增加 [ValidateAntiForgeryToken] 这个方法还可以添加自定义的参数 @Html.An ...

  6. C# 连接EXCEL 和 ACCESS

    97-2003版本 EXCEL Provider=Microsoft.Jet.OLEDB.4.0;Data Source=文件位置;Extended Properties=Excel 8.0;HDR= ...

  7. 合并k个有序数组

    给定K个有序数组,每个数组有n个元素,想把这些数组合并成一个有序数组 可以利用最小堆完成,时间复杂度是O(nklogk),具体过程如下: 创建一个大小为n*k的数组保存最后的结果创建一个大小为k的最小 ...

  8. elasticsearch.in.sh优化内存

    elasticsearch.in.sh文件主要是内存优化 ES_MIN_MEM=24g(24g是物理内存的一半) ES_MAX_MEM=24g ES调优: 1.Java层面的调优,加大JVM的可用内存 ...

  9. 搭建Django项目

    命令行搭建Django项目 1.安装django 在指定解释器环境下安装django 1.11.9 在真实python3环境下: pip3 install django==1.11.9 在虚拟环境下: ...

  10. getHibernateTemplate().save(t)执行不成功,数据不能插入到数据库

    BaseDaoImpl类中的代码如下 public void save(T t) {System.out.println(666);getHibernateTemplate().save(t);    ...