搭建mysql主从复制

news2024/12/25 9:01:48

前言
👏 作者简介:我是笑霸final,一名热爱技术的在校学生。
📝 个人主页:个人主页1 || 笑霸final的主页2
📕 系列专栏:数据库
📧 如果文章知识点有错误的地方,请指正!和大家一起学习,一起进步👀
🔥 如果感觉博主的文章还不错的话,👍点赞👍 + 👀关注👀 + 🤏收藏🤏
🐉 欢迎访问我的个人博客 ====> 笑霸final的个人博客
🧙 gitee主页笑霸final | | github主页笑霸final

目录

    • 一、配置文件
    • 二、配置步骤
    • 三、主机:建立账户并授权
    • 四、配置从机

一、配置文件

主从机的所有配置都在 mysqld节点下,并且都是小写字母。具体参数如下

  • 必选
#主服务器唯一ID
server-id=1

#启用二进制日志,并且指明路径 
log-bin=log-mysql

  • 可选
# 0(默认 可读可写主机)  1只读从机 
read-only=0

#控制单个而精致文件的大小,(默认为1G)
max_binlog_size=300M

#设置日志文件保留时长,单位是秒
binlog_expire_logs_seconds=6000

#设置不复制的数据库
binlog-ignore-db=test

#启用中继日志
relay-log=mysql-relay

#设置需要复制的数据库(默认全部复制)
binlog-do-db=数据库的名称

#设置binlog格式
binlog_format=STATEMENT


二、配置步骤

输入指令修改my.cnf文件

vim /etc/my.cnf

然后把需要的指令粘贴过去

在这里插入图片描述

然后保存重启mysql服务

systemctl restart mysqld

主从机都需要关闭防火墙

systemctl stop firewalld.service

注意设置完后需要重启mysql服务器

上面我配置的是主机 从机配置步骤一样

三、主机:建立账户并授权

#在主机MySQL里执行授权主从复制的命令
GRANT REPLICATION SLAVE ON *,* To'slave1'@'从机器数据库IP' IDENTIFIED BY abc123':#5.5,5.7

注意:如果使用的是MySQL8,需要如下的方式建立账户,并授权slave:

CREATE USER'testfinal'@'%' IDENTIFIED BY '123456';#用户名称自己定testfinal

#设置权限  设置( *.* )任何库的任何表 给
GRANT REPLICATION SLAVE ON *.* TO  'testfinal'@'%';

ALTER USER 'testfinal'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

flush privileges;

步骤

  • 登录主机master
  • 按步骤输入上面的代码
  • 查询Master的状态,并记录下File和Position的值。show master status图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lZ3EkcJm-1676270003677)(C:\Users\35886\AppData\Roaming\Typora\typora-user-images\image-20230213134338803.png)]

四、配置从机

  • 步骤1:登录从机后 输入一下命令

    CHANGE MASTER TO
    MASTER_HOST='主机的IP地址',
    MASTER_USER='主机用户名',
    MASTER_PASSWORD='主机用户名的密码',
    MASTER_LOG_FILE='mysql-bin.具体数字',#具体数字写主机刚刚查的写入文件
    MASTER_LOG_POS=具体值;  #具体值写主机刚刚查的写入位置
    

    举例:

    CHANGE MASTER TO
    MASTER_HOST='192.168.65.128',
    MASTER_USER='testfinal',
    MASTER_PASSWORD='123456',
    MASTER_LOG_FILE='log-mysql.000001',
    MASTER_LOG_POS=1153;
    

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GkShhJOB-1676270003677)(C:\Users\35886\AppData\Roaming\Typora\typora-user-images\image-20230213135700131.png)]

  • 如果之前设置过同步 应该先停止同步 在执行上面代码

  • 步骤二#启动slave同步

    START SLAVE;
    

    接着,查看同步状态

    SHOW SLAVE STATUS\G;
    

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AlRs9g9a-1676270003678)(C:\Users\35886\AppData\Roaming\Typora\typora-user-images\image-20230213140756970.png)]

  • 重新配置

stop slave;
reset master,#删除Master中所有的binglog文件,并将日志索引文件清空,重新开始所有新的日志文件(慎用)

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

缺失数据的处理

1:方括号里写数组,是对行进行操作,方括号里写字符串,是对列进行操作 dfdf.sort_values(byCount_AnimalName,ascendingFalse) #print(df.head(5)) print(df[:20]) print(df[Row_Labels]) print(type(b))2:t3.loc(定位取…

程序的编译与链接(预处理详解)+百度面试笔试题+《高质量C/C++编程指南》笔试题

本篇重点介绍程序的编译与链接过程中的预处理阶段,将详细的介绍在预处理阶段会发生什么,以及讲解有关百度该内容的面试笔试题和源于《高质量C/C编程指南》的笔试题。一.【预处理详解】①预定义符号②#define2.1 #define 定义标识符注意:2.2 #…

常见的EMC问题

电磁兼容设计的目的就在于满足产品功能要求、减少调试时间,使产品满足电磁兼容标准的要求,并且使产品不会对系统中的其它设备产生电磁干扰。 电磁兼容设计中常见的问题有哪些? 1、电磁兼容设计可以从电路设计(包括器件选择&…

69. open函数—打开文件并返回文件对象

69. open函数—打开文件并返回文件对象 文章目录69. open函数—打开文件并返回文件对象1. open() 函数的作用2. open函数语法参考3. open()函数参数说明1. file参数2. encoding 参数3. errors参数4. mode参数4. mode参数详解1. 准备工作2. w 写入模式3. a 追加模式4. r 只读模式…

RabbitMQ学习总结(10)—— RabbitMQ如何保证消息的可靠性

一、丢失场景 RabbitMQ丢失的以下3种情况: (1)生产者:生产者发送消息至MQ的数据丢失

布隆过滤器的使用

目录说明使用布隆过滤器使用测试Java 本地使用布隆过滤器Java集成Redis使用布隆过滤器说明 布隆过滤器是用来防止缓存穿透的,我们需要知道如何使用布隆过滤器。 使用 Google 的 Guava 库提供了使用布隆过滤器的 API 类(BloomFilter.class)&…

ubuntu 创建raid5教程

1、查看磁盘:parted -l 2、安装创建raid工具mdadm: sudo apt install mdadm 3、创建命令: sudo mdadm -Cv /dev/md0 -l5 -n3 /dev/sdb /dev/sdc /dev/sdd 说明: -Cv: 创建一个阵列并打印出详细信息 /dev/md0: 阵列名称 -l5: 指定阵列类型为 R…

Linux管道排序命令:sort、wc、uniq

sort 它可以根据不同的数据形式来排序,例如数字与文字的排序就不一样。此外,排序的字符与语系的编码有关,因此我们需要排序时,建议使用LANGC来让与系统统一,数据排序比较好一些 sort 【-fbMnrtuk】【file or stdin】 …

java: 错误: 不支持发行版本 5(快速解决办法)

目录 前言 一、出现报错 二、报错的原因 三、解决办法 四、解决成功 前言 在maven web项目上面要部署运行tomcat时候,会出现这个问题 一、出现报错 java: 错误: 不支持发行版本 5 二、报错的原因 (1)官方解释:这个错误…

解决1130-Host‘ ‘is not allowed to connect to this MySQL server,实现远程连接本地数据库

在使用Navicat远程连接本地数据库时,遇到了这样一个问题,我使用 本地主机的地址,连接本地的数据库,报错host ‘’ is not allowed to connect to this mysql server。上网上查了一下资料,原来自己安装在本地的mysql默认…

Netty 学习笔记——概念篇

Netty Home Netty GitHub Netty简介 Netty是由JBOSS提供的一个java开源框架,现为 Github上的独立项目。Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。 也就是说,Netty 是一个…

Java——聊聊JUC中的ThreadLocal

文章目录: 1.什么是ThreadLocal? 1.1 api介绍 1.2 最简单的案例认识ThreadLocal 1.3 线程池结合ThreadLocal案例 2.Thread &ThreadLocal & ThreadLocalMap 3.ThreadLocal内存泄漏问题 3.1 四大引用之强引用 3.2 四大引用之软引用 3.3 四…

cs285学习笔记

文章目录lec1ML和RL之间的区别几种RL分类current challengeslec4markov chainmarkov decision processpartially observed markov decision processRLs goalQ & Alec1 ML和RL之间的区别 mlrliid data数据不iid,前面的数据会影响future input训练时有确定的gro…

搜索二叉树

文章目录二叉搜索树模拟实现InsertInsertR()EraseEraseR搜索树的价值实现代码二叉搜索树 在二叉树的基础之上, 左子树的值都比根节点小,右子树都更大。那么他的左右子树也分别叫做二叉搜索树。 查找一个节点,最多查找高度次(建立在这个树是比较均衡的).10亿里面找…

Shennina:一款带有人工智能的自动化主机渗透工具

关于Shennina Shennina是一款功能强大的自动化主机渗透/漏洞利用框架,该项目的主要目的是使用人工智能技术来实现安全扫描、漏洞扫描/分析和漏洞利用开发的完全自动化。Shennina整合了Metasploit和Nmap这两款强大的网络安全工具实现其部分功能,并执行渗…

微搭使用笔记(二)微搭低代码平台介绍及基础使用

概述 官网地址: 官网 官方文档: 官方文档 FAQ: FAQ 腾讯云微搭低代码是一个高性能的低代码开发平台,用户可通过拖拽式开发,可视化配置构建 PC Web、H5 和小程序应用。支持打通企业内部数据,轻松实现企业微信管理、工…

别具一格,原创唯美浪漫情人节表白专辑,(复制就可用)(html5,css3,svg)表白爱心代码(4)

别具一格,独此一家,原创唯美浪漫情人节表白专辑 不一样的惊喜哦~!(html5,css3,svg)表白爱心代码(复制就可用)(4) 目录 款式四:时光的记忆款 1、拷贝完整源代码 2、更新时光盒所…

Springboot使用MDC进行日志追踪

Springboot使用MDC进行日志追踪前言一、为什么要跟踪日志二、MDC存储日志原理三、开始代码1、封装MDC工具类2、注册日志追踪拦截器四、配置logBack五、查看追踪效果六、要解决traceId传递问题1、在不同线程之间的传递2、远程调用时候的传递总结前言 MDC(Mapped Diag…

基于ChatGPT +Node.js的基本使用

一、简介 最近,围绕ChatGPT和OpenAI的话题是层出不穷,国内外的技术工作者都掀起了一股学习OpenAI的技术浪潮,甚至有很多的媒体预测OpenAI将会带来行业的革命,而国外一些大的企业也将OpenAI视为重要的竞争对手,比如Google和微软。 事实上,OpenAI 可以应用于任何涉及理解…

SpringBoot(3)之包结构

根据spring可知道,注解之所以可以使用,是因为通过包扫描器,扫描包,然后才能通过注解开发。 那么springboot需要扫描哪里呢? springboot的默认包扫描器,扫描的是自己所在的包和子包,例子如下 我…