IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> MySQL主从复制(Windows 10 + CentOS 7混合云) | MySQL8.0.29主从复制(附视频教程) -> 正文阅读

[大数据]MySQL主从复制(Windows 10 + CentOS 7混合云) | MySQL8.0.29主从复制(附视频教程)

视频教程:运维-主从复制

1. 概述

主从复制是指将主数据库的DDL和DML操作通过二进制日志传到从服务器中,然后在从库上对这些日志重新执行(也叫重做),从而使得从库和主库的数据保持同步。
在这里插入图片描述
MySQL支持一台主库同时向多台从库进行复制,从库也可以作为其他从服务器的主库,实现链状复制。
MySQL主从复制的优点主要包含如下三个方面:

  1. 主库出现问题,可以快速切换到从库提供服务
  2. 实现读写分离,降低主库的访问压力
  3. 可以在从库中执行备份,以避免备份期间影响主库服务

2. 原理

MySQL主从复制的原理如下:
在这里插入图片描述
从上图来看,复制分为三步:

  1. Master主库在事务提交时,会把数据变更记录在二进制日志文件(Binlog)中
  2. 从库读取主库的二进制日志文件(Binlog),写入到从库的中继日志(Relay log)
  3. Slave重做中继日志当中的事件,将改变反应它自己的数据

3. 搭建

参考:CentOS 7安装MySQL8.0.29步骤或者Win10安装MySQL8.0.29.0步骤准备两台服务器

3.1. 主库配置

  1. 修改配置文件
    CentOS 7修改配置文件/etc/my.cnf

    vim /etc/my.cnf
    
    # MySQL的服务器ID,保证整个集群环境中唯一,取值范围为1到2^32-1,默认为1
    server-id=1
    # 是否只读,1代表只读,0代表读写
    # read-only=0
    # 忽略的数据库,指不需要同步的数据库
    # binlog-ignore-db=mysql
    # 指定同步的数据库
    # binlog-do-db=db01
    

    Win 10修改C:\ProgramData\MySQL\MySQL Server 8.0\my.ini文件(Windows上很多变量都已经有了,比如server-id,建议想修改之前先查找下,没有的变量自己再新增)
    在这里插入图片描述

  2. 重启MySQL服务

    service mysqld restart
    
  3. 登录

    mysql -u root -p
    
  4. 查询二进制日志坐标

    show master status;
    

3.2. 从库配置

  1. 修改配置文件/etc/my.cnf
    vim /etc/my.cnf
    
    server-id=2
    read-only=0
    
  2. 重启MySQL服务
    service mysqld restart
    
  3. 登录
    mysql -u root -p
    
  4. 设置主库的配置
    CHANGE REPLICATION SOURCE TO SOURCE_HOST='10.1.1.20',SOURCE_USER='root',SOURCE_PASSWORD='Aa.123123',SOURCE_LOG_FILE='binlog.000003',SOURCE_LOG_POS=157;
    
    在这里插入图片描述
  5. 开启同步操作
    start replica;
    
  6. 查看主从同步状态
    show replica status\G;
    
    主要观察Replica_IO_RunningReplica_SQL_Running这两行(如果出现问题,可以通过查询日志排查问题,CentOS 7上的日志文件是/var/log/mysqld.log
    在这里插入图片描述

3.3. 测试

接着就可以测试增删改了,比如在主服务器上新建一个数据库test,接着刷新一下从服务器,会发现从服务器上也多了一个数据库test
在这里插入图片描述

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-05-14 10:00:40  更:2022-05-14 10:01:10 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 -2025/1/16 5:46:18-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码