数据库配置的时候,一定要开启二进制日志,如果开始没开启后来再想开启的话,必须重启。

基于日志点的复制

备份数据库工具

-------------------------------------------------------------------------------------------------

基于日志的复制连路

开始

1.准备2台虚拟机,ip addr命令查看ip

主服务器ip 192.168.3.100, 从服务器192.168.3.101

2.创建用户,更改用户权限

3.配置主数据库 和 从数据库 的参数 /etc/my.cnf

主服务器

server-id = 1

启动了bin-log

从服务器

server-id = 2

配置relay—log

同样启用的bin-log。 最好启用,方便主从迁移,故障转移等。

4.初始化从服务器的数据

备份主数据库,这里因为是测试 用的mysql dump ,生产环境最好选用xtrabuctup

注意不要备份系统库,会造成未知的问题

将文件备份到从服务器上 root目录

初始化从服务器数据库

5.启动复制连路

查看备份文件 all.sql 里面有这么一句话,直接复制下来就行

将连路配置好

查看连路配置  show slave status \G;

启动连路  start slave;

6.查看主从进程 show processlist \G;

从服务器启动了2条相关的线程

主服务器启动了Binlog Dump 线程

-------------------------------------------------------------------------------------------------

基于日志复制的优缺点

----------------------------------------------------------------------------------------------------

GTID复制方式的优势

基于日志复制的缺点

GTID复制的优势

GTID的步骤

----------------------------------------------------------------------------------------------------

基于GTID的复制

前两步是和【基于日志的复制】步骤是一样的

3.修改主服务器上的文件  vi etc/my.cnf

启动这两个选项

从服务器的配置

启动 这几个选项

重启服务器

4.初始化从服务器的数据

拷贝到从服务器

5.对从数据库进行配置

6.启动复制,并查看是否成功

7.测试 : 主数据库添加数据,查看从数据库是否有数据

-----------------------------------------------------------------------------------------------

-------------------------------------------------------------------------------------------------

从库分担读负载,分库分表分担写负载。

主主复制

不建议使用,但是特定场景除外

场景:例如两个地区都有数据库,都要保存两个地区的数据。

1。主备模式,只有一个主对外提供服务,一个 出现问题,另一个才会对外提供服务

2。主主模式,同时对外提供服务

可能停留在5-8的课程中

Mysql 复制工作原理的更多相关文章

  1. MySQL MHA工作原理

    MHA工作组件 MHA(Master High Availability)是一种MySQL高可用解决方案,由日本DeNA公司开发,主要用于在故障切换和主从提升时进行快速切换,并最大程度保证数据一致性. ...

  2. mysql索引工作原理、分类

    一.概述 在mysql中,索引(index)又叫键(key),它是存储引擎用于快速找到所需记录的一种数据结构.在越来越大的表中,索引是对查询性能优化最有效的手段,索引对性能影响非常关键.另外,mysq ...

  3. MySQL:索引工作原理

    索引查找:通过索引键找到索引的叶子节点,再通过叶子节点的标记快速找到表中对应的行数据,再返回指定的列 索引找查是通过索引键定先位到一块局部区域,再开始扫描匹配的数据的. 为什么需要索引(Why is ...

  4. MySQL索引工作原理

    为什么需要索引(Why is it needed)?当数据保存在磁盘类存储介质上时,它是作为数据块存放.这些数据块是被当作一个整体来访问的,这样可以保证操作的原子性.硬盘数据块存储结构类似于链表,都包 ...

  5. MySQL复制机制原理

    背景介绍 复制,就是对数据的完整拷贝,说到为什么要复制,首先能想到的是怕数据意外丢失,使得用户蒙受损失. 当完成了数据复制之后,会发现它的优势不止这一点,假如一台机器宕机了,可以启用备份在另一台机器的 ...

  6. MySQL Replication--复制基本工作原理

    复制工作原理(1) master将改变记录到二进制日志(binary log)中(这些记录叫做二进制日志事件,binary log events):(2) slave将master的binary lo ...

  7. Mysql 工作原理

    刚开始接触一个新的事物的时候,我觉得很有必要从其工作原理入手,弄清楚这个东西的来龙去脉,为接下来的继续深入学习做好铺垫,掌握好其原理有助于我们从整体上来把握这个东西,并且帮助我们在排错过程中理清思路. ...

  8. 生产环境搭建MySQL复制的教程(转)

    [导读] 网络上有很多关于MySQL复制搭建的步骤和范例,以及手册上有一章完整的篇幅,讲述MySQL复制的原理.搭建步骤.优化等,但依然存在很多刚开始学习MySQL知识或者刚进入DBA行业的朋友咨询, ...

  9. 14.19 InnoDB and MySQL Replication InnoDB 和MySQL 复制:

    14.19 InnoDB and MySQL Replication InnoDB 和MySQL 复制: MySQL 复制工作对于InnoDB 表和对于MyISAM表. 它是可能使用复制的方式 存储引 ...

随机推荐

  1. Android动态添加Device Admin权限

    /********************************************************************** * Android动态添加Device Admin权限 ...

  2. 【leetcode】9-PalindromeNumber

    problem Palindrome Number 回文数字: 什么是回文数字? 要求不能使用字符串: 翻转一半的数字: 如何判断数字到一半啦? 参考 1.leetcode-problem: 完

  3. Python之路,第三篇:Python入门与基础3

    1,  布尔运算符 运算符;    not      and   or not 运算符: 作用:逻辑取反 语法: not  表达式 例: not  True     #  False not   Fa ...

  4. lesson4-图像分类-小象cv

    CNN网络进化:AlexNet->VGG->GoogleNet->ResNet,深度8->19->22->152GoogleNet:Lsplit->trans ...

  5. 为何linux(包括mac系统)执行指令要加上 ./ ??

    比如,现在要在$HIVE_HOME/bin下执行hive指令来启动hive,则该指令的执行顺序如下所示: 1 先找PATH路径 1.1 如果PATH路径下配置了$HIVE_HOME/bin,无论PAT ...

  6. django -----分页器组件

    分页器组件 本文目录 1 Django的分页器(paginator)简介 2 应用View层 3 模版层 index.html 4 扩展 回到目录 1 Django的分页器(paginator)简介 ...

  7. (18)模型层 -ORM之msql 多表操作(字段的属性)

    数据库表的对应关系 1.一对一   #关联字段写在那张表都可以 PS:只要写OneToOneField就会自动加一个id 2.一对多  #关系确立,关联字段写在多的一方 3.多对多   #多对多的关系 ...

  8. C++学习(十)(C语言部分)之 分支语句

    #include<stdio.h> // std 标准  io ---->  input  output  输入 输出  printf scanf getchar ...... #i ...

  9. 使用JQuery反向选择checkbox

    HTML代码: <input id="haspda" type="checkbox" name="haspda" value=&quo ...

  10. Thinkphp,Jquery,Ajax异步发布

    1.在提交表单的HTML页面的<head>中定义一个变量供Jquery使用 <script type='text/javascript'>var handleUrl='< ...