实战案例:将已有的 MySQL8.0 单机架构变成主从复制架构

操作步骤

  1. 修改 master 主节点 的配置( server-id log-bin )
  2. master 主节点 完全备份( mysqldump )
  3. master 主节点 创建复制用户并授权
  4. master 主节点 将完全备份文件拷贝至从节点
  5. 修改 slave 从节点 的配置( server-id read-only )
  6. 修改 完全备份数据文件( 添加主节点的相关信息 )
  7. slave 从节点 还原备份( souce /data/all.sql )
  8. slave 从节点 开启复制( start slave; )
  9. 验证 主从复制架构
// 主节点
# 修改 master 主节点的配置
[root@master ~] vim /etc/my.cnf.d/mysql-server.cnf
[mysqld]
server-id=8
log_bin
log-bin=/data/mysql/logbin/mysql-bin

[root@master ~] systemctl restart mysqld

# 完全备份
[root@master ~] mysqldump -A -F --master-data=1 --single-transaction > /root/all.sql

// 创建复制用户并授权
# 注意: 修改 IP 地址
mysql> create user repluser@"192.168.80.%" identified by "123456"
mysql> grant replication slave on *.* to repluser@"192.168.80.%"";

# 将备份复制到从节点
[root@master ~] scp /root/all.sql 192.168.80.150:/root

// 配置从节点
[root@slave ~] yum install mysql-server -y
[root@slave ~] vim /etc/my.cnf.d/mysql-server.cnf
[mysqld]
server-id=18
log_bin
read-only

[root@slave ~] systemctl enable --now mysqld

# 从节点修改备份文件
[root@centos8 ~] vim /root/all.sql 
CHANGE MASTER TO
  MASTER_HOST='192.168.80.130',                                                             
  MASTER_USER='repluser',
  MASTER_PASSWORD='123456',
  MASTER_PORT=3306,
MASTER_LOG_FILE='mysql-bin.000005', MASTER_LOG_POS=156;

# 从节点还原备份
mysql> set sql_log_bin=0;
mysql> source /root/all.sql;
mysql> set sql_log_bin=1;

# 从节点开始主从复制
mysql> start slave;

// 验证线程运行状态 ( 重要 )
mysql> show slave status\G;
*************************** 1. row ***************************
               Slave_IO_State: Waiting for source to send event
                  Master_Host: 192.168.80.130
                  Master_User: repluser
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: mysql-bin.000005
          Read_Master_Log_Pos: 367
               Relay_Log_File: slave-relay-bin.000002
                Relay_Log_Pos: 535
        Relay_Master_Log_File: mysql-bin.000005
             Slave_IO_Running: Yes                # 运行中
            Slave_SQL_Running: Yes                # 运行中
              Replicate_Do_DB: 
          Replicate_Ignore_DB: 
           Replicate_Do_Table: 
       Replicate_Ignore_Table: 
      Replicate_Wild_Do_Table: 
  Replicate_Wild_Ignore_Table: 


// 验证主从同步效果
mysql> drop table coc;     # 主节点删除
mysql> show tables;        # 从节点验证

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/381940.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

01 MySQL概念

文章目录 数据库MysqlSQL语言 数据库 数据库 : 按照数据一定结构,存储管理数据的仓库。数据库是在数据库管理系统管理和控制下,在一定介质上的数据集合。数据库管理系统 : 管理数据库的软件,用于建立和维护数据库。关…

社区店经营管理新思路:提升业绩的秘诀

作为一名资深的鲜奶吧创业者,我深知在社区经营一家店铺所面临的挑战与机遇。经过5年的探索与实践,我总结出了一套提升社区店业绩的秘诀,今天就和大家分享一下。 一、明确目标客户群体,精准定位 在社区开店,首先要明确…

【Wio Terminal教程】使用LCD屏幕(3)

使用LCD屏幕(3) 一、加载图片1、安装库2、 图像格式配置3、开始 二、线图1、安装库2、开始 三、直方图1、安装库2、开始 一、加载图片 本节将讲述如何在 Wio Terminal 上从 SD 卡加载并显示图像到 TFT LCD 屏幕。这对于你的设计可能是一个非常有用的实现…

C语言字符串常量

字符串常量 字符串常量在内存中的存储,实质是一个匿名数组匿名数组,同样满足数组两种涵义的规定示例: printf("%d\n", sizeof("abcd")); // 此处 "abcd" 代表整个数组 printf("%p\n", &"…

038 什么是面向对象

面向过程&面向对象 什么是面向对象 现实世界中的事物、类、对象之间的关系 在我们想通过计算机解决一个具体问题的时候,我们可以研究与问题有关事物的共性,比如我在观察了大量的杯子后得出一些结论:杯子都应该有材质、颜色、尺寸、形状这…

Unity 接口、抽象类、具体类对象的配合使用案例

文章目录 示例1:接口(Interface)示例2:抽象类(Abstract Class)示例3:结合使用接口与抽象类示例4:多接口实现示例5:抽象类与接口结合 在Unity中使用C#编程时,接…

74HC154D-LED

一、引脚说明 1-11 13-17 :输出端。(outputs (active LOW)) 12:Gnd电源地 (ground (0 V)) 18-19:使能输入端、低电平有效 (enable inputs (active LOW)) 20-23:地址输入端 (addr…

计算机网络——04接入网和物理媒体

接入网和物理媒体 接入网络和物理媒体 怎样将端系统和边缘路由器连接? 住宅接入网络单位接入网络(学校、公司)无线接入网络 住宅接入:modem 将上网数据调制加载到音频信号上,在电话线上传输,在局端将其…

Redis核心技术与实战【学习笔记】 - 30.番外篇:Redis学习资料、运维说明及使用规范建议

1.Redis学习资料 虽然前面已经学习了 Redis 理论和技术点,但是如果想要持续提升自己的技术能力,还是需要不断丰富自己的知识体系。本章,给你推荐几本优秀的书籍,以及拓展知识面的其他资料。 1.1 经典书籍 在学习 Redis 时&…

如何实现视线(目光)的检测与实时跟踪

如何实现视线(目光)的检测与实时跟踪 核心步骤展示说明 找到人脸 检测人脸特征点 根据特征点找到人眼区域 高精度梯度算法检测瞳孔中心 根据眼睛周边特征点计算眼睛中心 瞳孔中心和眼睛中心基于视线模型计算视线方向 视线方向可视化 详细实现与说明: https://stud…

机器学习2--逻辑回归(案列)

糖尿病数据线性回归预测 import numpy as np import pandas as pd import matplotlib.pyplot as plt from sklearn.datasets import load_diabetes diabetesload_diabetes() datadiabetes[data] targetdiabetes[target] feature_namesdiabetes[feature_names] data.shape df …

【知识整理】招人理念、组织结构、招聘

1、个人思考 几个方面: 新人:选、育、用、留 老人:如何甄别? 团队怎么演进? 有没有什么注意事项 怎么做招聘? 2、 他人考虑 重点: 1、从零开始,讲一个搭建团队的流程 2、标…

【MySQL】字符串函数的学习

🌈个人主页: Aileen_0v0 🔥热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ​💫个人格言:“没有罗马,那就自己创造罗马~” #mermaid-svg-J7VN4RbrBi51ozap {font-family:"trebuchet ms",verdana,arial,sans-serif;font-siz…

【论文阅读笔记】InstantID : Zero-shot Identity-Preserving Generation in Seconds

InstantID:秒级零样本身份保持生成 理解摘要Introduction贡献 Related WorkText-to-image Diffusion ModelsSubject-driven Image GenerationID Preserving Image Generation Method实验定性实验消融实验与先前方法的对比富有创意的更多任务新视角合成身份插值多身份区域控制合…

探索C语言的内存魔法:动态内存管理解析

✨✨ 欢迎大家来到贝蒂大讲堂✨✨ 🎈🎈养成好习惯,先赞后看哦~🎈🎈 所属专栏:C语言学习 贝蒂的主页:Betty‘s blog 1. 静态开辟内存 通过前面的学习,我们已经掌握了两种开辟内存的方…

auto.js教程(autojs教程、autox.js、autoxjs)笔记(一)Autojs概述

参考文章:【自动化技术】Autojs从入门到精通 参考文章:AutoXJS开发入门简介菜鸟教程 参考文章:关于Auto.js的下架说明 参考文章:Auto.js 4.1.0 文档 文章目录 001--【Autojs概述】1、Autojs是什么,能做什么&#x…

【算法与数据结构】496、503、LeetCode下一个更大元素I II

文章目录 一、496、下一个更大元素 I二、503、下一个更大元素II三、完整代码 所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。 一、496、下一个更大元素 I 思路分析:本题思路和【算法与数据结构】739、LeetCode每日温度类似…

大脑是宇宙中最复杂的物体——科学家们试图破译它,读懂人们的思想

2023年,德克萨斯大学HuthLab进行的一项研究在神经科学和技术领域引发了震动。通过人工智能(AI)和脑成像技术的结合,无法与外界交流的人的思想首次被翻译成连续的自然语言。 这是迄今为止最接近读心术的科学方法。在过去的二十年里,神经成像技…

Zookeeper集群搭建(3台)

准备工作 1、提前安装好hadoop102、hadoop103、hadoop104三台机器,参照:CentOS7集群环境搭建(3台)-CSDN博客 2、提前下载好Zookeeper安装包并上传到/opt/software上、安装包,链接:https://pan.baidu.com/…

如何解决利用cron定时任务自动更新SSL证书后Nginx重启问题

利用cron定时任务自动更新SSL证书后,用浏览器访问网站,获取到的证书仍然是之前的。原因在于没有对Nginx进行重启。 据说certbot更新完成证书后会自动重启Nginx,但显然经我检测不是这回事儿。 所以我们需要创建一bash脚本,然后定时调用这个脚…