主从复制介绍:

由于数据存储是软件和系统最重要的一部分,所以说如何做到数据安全、性能良好,就需要考虑很多的业务和技术,而主从复制在Mysql数据库使用方面,是不可缺少的一个重要方案,我们用主从复制方案主要实现,读写分离实现负载均衡、实现实时数据备份,甚至还可以将不同的业务分到不同的备份库。

实现的原理:

Replication原理

Mysql 的 Replication 是一个异步的复制过程,从一个MySQL节点(称之为Master)复制到另一个MySQL节点(称之Slave)。在 Master 与 Slave 之间的实现整个复制过程主要由三个线程来完成,其中两个线程(SQL 线程和 I/O 线程)在 Slave 端,另外一个线程(I/O 线程)在 Master 端。 要实现 MySQL 的 Replication ,首先必须打开 Master 端的 Binary Log,因为整个复制过程实际上就是 Slave 从 Master 端获取该日志然后再在自己身上完全顺序的执行日志中所记录的各种操作。 
看上去MySQL的Replication原理非常简单,总结一下: 
* 每个从仅可以设置一个主。 
  * 主在执行sql之后,记录二进制log文件(bin-log)。 
  * 从连接主,并从主获取binlog,存于本地relay-log,并从上次记住的位置起执行sql,一旦遇到错误则停止同步。

主要的架构与方案:

Master-Slave 主从同步

Master-Slave-Slave  一主多从(A->B->C)级联方式

Master-Master   互为主备

Master-slave主从实现方案:

基本需求:

(1)    两台虚拟机

192.168.121.105  mysql5.6.30 RPM包   数据库主  master

192.168.121.146  mysql5.6.30 二进制包   数据库从   slave

(2)主要的配置

Master 的my.cnf 开启bin-log日志将server-id设置为一个随机数字,最好设置为IP之类的,从机可以不开启二进制日志,因为从机不再做同步,如果还需要做同步时,需要开启此功能,同时需要注意的是需要将server-id也设置为一个数字不能和主机相同。

主库的配置

从库的配置

(3)在主库中创建具有replication slave权限的账户,从库用来数据同步。

连接主库,并用授权语句授权;

(4)还需要注意的是,当主库有大量数据时,我们要将数据备份,手动恢复到从库,然后在做主从,而数据备份的时候还要对主库锁表,只读,以防数据发生改变。

锁表命令:

Flush  table with read lock;

(5)锁表后查看主库的二进制日志文件名以及binlog日志偏移量,我们的数据将从这一点开始同步。

(6)登录从库配置从库数据同步,以下的命令主要是将密码端口等信息写入到master.info文件。

CHANGE  MASTER TO MASTER_HOST='192.168.121.105', MASTER_PORT=3306,MASTER_USER='rep',MASTER_PASSWORD='123123',
MASTER_LOG_FILE="mysql-bin.000002",MASTER_LOG_POS=318;

执行完如果如果不报错时,就可以开始数据同步。

在从库上面执行

start  slave;

(7)执行完毕后就需要查看是否同步成功,第一个yes 表示主机与从机间的同步,这两个参数比较重要,只有这两个参数都是正确的,我们才能数据同步。

(8)数据同步验证

在主库建一个stu库,再观察从库

转载于:https://blog.51cto.com/dreamlinux/1835040

Mysql主从复制原理以及实现相关推荐

  1. MySQL主从复制原理、半同步操作步骤及原理

    MySQL主从复制原理.半同步操作步骤及原理 1.1 企业Linux运维场景数据同步方案 1.1.1 文件级别的异机同步方案 1.scp/sftp/nc 命令可以实现远程数据同步. 2.搭建ftp/h ...

  2. MySQL主从复制原理应用基础

    mysql主从复制 mysql支持单向 双向 链式级联 实时 异步复制,在复制过程中,一台服务器充当主服务器(Master),而一个或多个其他服务器充当从服务器(Slave) mysql主从复制的应用 ...

  3. mysql主从复制原理详解_简述 MySQL 逻辑架构与主从复制原理。

    ↑ 点击上面 "时代Java"关注我们,关注新技术,学习新知识! 1.Mysql逻辑架构图 如果能在脑海中构建出MySql各组件之间如何协同工作的架构图,就会有助于深入理解MySq ...

  4. MySQL主从复制原理(原理+实操)

    1.MySQL主从复制原理(原理+实操) 主从复制简介 在实际的生产中,为了解决Mysql的单点故障已经提高MySQL的整体服务性能,一般都会采用「主从复制」. 比如:在复杂的业务系统中,有一句sql ...

  5. 五、MySQL主从复制原理

    MySQL主从复制原理.半同步操作步骤及原理 标签(空格分隔): mysql 1.1 企业Linux运维场景数据同步方案 1.1.1 文件级别的异机同步方案 1.scp/sftp/nc 命令可以实现远 ...

  6. MySQL主从复制原理

    学习MySQL主从复制,从以下几个方面进行: 1. 什么是MySQL主从复制? 2. 为什么要使用主从复制? 3. 主从复制的原理? 4. 主从复制的劣势? 5. 主从切换 6. 实际操作 一.什么是 ...

  7. MySQL主从复制原理解析

    MySQL主从复制原理 1.为什么需要MySQL的主从复制? 2.什么是MySQL的主从复制? 3.MySQL主从复制原理 原理 具体步骤 对于MySQL主从复制,我们已经在[MySQL主从复制安装配 ...

  8. mysql主从复制原理详解_MySQL主从复制没使用过?三大步骤让你从原理、业务上理解透彻...

    成长是一棵树,总是在你不知不觉的情况下快乐长大:成长是一株草,总是在你不知不觉的情况下长满大地:成长是一朵花,总是在你不知不觉的情况下开满山头. 这不,随着时间的迁移.项目网站的用户量.数据量持续上升 ...

  9. mysql主从复制原理 简书_mysql主从复制,从原理讲到安装配置,全干货

    0.为什么需要主从复制? 1.在业务复杂的系统中,有这么一个情景,有一句sql语句需要锁表,导致暂时不能使用读的服务,那么就很影响运行中的业务,使用主从复制,让主库负责写,从库负责读,这样,即使主库出 ...

  10. mysql主从复制原理分析

    1.主从复制这类NFS存储数据通过inotify+rsync同步到备份的NFS服务器,只不 过Mysql的复制方案是其自带的工具 inotify 是一种文件系统的变化通知机制,如文件增加.删除等事件可 ...

最新文章

  1. 如何根据点云计算对应物体的长宽
  2. DL之模型调参:深度学习算法模型优化参数之对深度学习模型的超参数采用网格搜索进行模型调优(建议收藏)
  3. java_basic_review(5) java继承
  4. 使用el-checkbox实现全选,点击失效没有反应
  5. 自动化运维环境搭建过程
  6. python产生随机数列表_python如何产生10个不同的随机数
  7. 一次没想好,第二次就要想到做好
  8. 如何快速分享CAD图纸?CAD图纸怎么加密?
  9. 深度学习--Inception-ResNet-v1网络结构
  10. DMS - 简介 Driver Monitor System
  11. win10计算机全名恢复,详细教您win10强制进入恢复模式方法
  12. java单例模式(下)
  13. Oracle 一致性读
  14. fastjson 首字母大写问题
  15. #UVM# 关于多次TB中 include “uvm_macros.svh“的疑问篇
  16. 移动端UC浏览器不支持Blob的解决方案
  17. micro的介绍、安装与使用
  18. DLL load failed while importing _ssl: 找不到指定的模块
  19. 【附源码】Python小游戏 ——开心消消乐
  20. radmin显示不能连接到服务器,关于Radmin安装失败或无法显示远程桌面的处理方法...

热门文章

  1. boost::contract模块实现volatile的测试程序
  2. ITK:计算网格上的测地距离
  3. VTK:Utilities之BoundingBoxIntersection
  4. OpenCV拼接细节stitching detailed的实例(附完整代码)
  5. Qt Creator将QML模块与插件一起使用
  6. C语言实现二叉树(附完整源码)
  7. C++ 面向对象的三大特性和五个原则?
  8. C++ decltype关键字
  9. python使用get和post方法_python爬虫中get和post方法介绍以及cookie作用
  10. 01_Linux系统系统语言查询,设置Xshell工具,中文显示,测试Xshell中文字符显示,Linux中文显示乱码设置