Ubuntu下mysql主从复制搭建

news/2025/2/21 3:11:14

本文介绍mysql 8.4主从集群的搭建,从单个机器安装到集群的配置,整体走了一遍,希望对大家有帮助。mysql 8.4和之前的版本命令上有些变化,大家用来参考。

0、环境

mysql_6">1、安装mysql

1.1、更新apt repository

下载文件,地址: https://dev.mysql.com/downloads/repo/apt/。
下载完成后,执行命令:

sudo dpkg -i mysql-apt-config_0.8.33-1_all.deb

命令执行后,会询问要安装的版本等信息,按照提示最后确定即可。
完了后,更新apt repository:

sudo apt update

1.2、安装

sudo apt install mysql-server

等待下载完成,期间会让设置root用户的密码,按你的计划输入即可。等待安装完成,此时查看一下mysql服务运行状态。

sudo systemctl status mysql

在这里插入图片描述

2、master-slave配置

上面仅安装了master上的mysql,slave安装过程相同,此处不再赘述。在这里先简单说一下规划:

  • master:192.168.99.100 : 3306
  • slave:192.168.99.120 : 3306

保证这两台机器局域网互通,并且操作系统上的防火墙开发3306端口。下面按照步骤开始配置。

2.1、master添加配置

打开 /etc/mysql/my.cnf,添加红色框内的配置:
在这里插入图片描述
保存后,重启mysql

sudo systemctl restart mysql

2.2、slave-01添加配置

同master一样,修改my.cnf,添加如下配置:
在这里插入图片描述
注意:server-id不能与集群中的其他机器相同,并且是正整数。

2.3、master添加用户并授权

命令行连接mysqlmysql -uroot -p123456),然后执行命令:

create user 'repl'@'192.168.99.%' identified by 'mysql';
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'192.168.99.%';

执行成功后,咱们继续。还是在master机器上。

2.4、获取binlog位置

 show binary log status\G;

效果如下图:
在这里插入图片描述
我们要的就是上图的File和Position,后面要用。

2.5、slave配置

slave连接mysql,并执行如下命令:

 CHANGE REPLICATION SOURCE TO
  SOURCE_HOST='192.168.99.100',
  SOURCE_USER='repl',
  SOURCE_PASSWORD='mysql',
  SOURCE_LOG_FILE='mysql-bin.000001',
  SOURCE_LOG_POS=944,
  GET_SOURCE_PUBLIC_KEY=1;

命令中上面几个都能看明白,按照上面的配置填写即可。
最后一个GET_SOURCE_PUBLIC_KEY=1,是指通过普通密码验证,之前的版本是没有这项配置的。

执行完后,查看一下slave的状态。注意:mysql8.4命令有变化,之前的slave现在都改成了replica

show replica status\G;

效果如下:
在这里插入图片描述
红色标注的地方都是‘yes’,就说明主从复制配置完成了。

3、小结

总的来说,mysql 8.4搭建主从集群和之前的版本稍有不同,但步骤是不变的,只是命令稍有变化,大家搭建的时候发现命令错误,大概率就是命令变了。

好了,今天就到这里了。
//~~


http://www.niftyadmin.cn/n/5857395.html

相关文章

Java+SpringBoot+数据可视化的家庭记账小程序(程序+论文+安装+调试+售后等)

感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,我会一一回复,希望帮助更多的人。 系统介绍 在当下这个科技日新月异、经济蓬勃向上的时代,中国经济正以令人瞩目的速度迅…

解锁D3.js与PlantUML的交互奥秘:探索知识图谱数据可视化新领域

解锁D3.js与PlantUML的交互魔法:数据可视化新征程 在前端开发的广袤天地里,数据可视化一直是一颗璀璨的明珠,吸引着无数开发者探索其奥秘。而当D3.js这一强大的JavaScript库,遇上专注于创建UML图的PlantUML,一场奇妙的…

vue,vue3 keepalive没有效果,无法缓存页面include无效,keep-alive

keepalive没有效果,无法缓存页面? 问题大概是组件的name值不对应,vue2修改组件文件的name值,vue3保持组件文件名称和路由页面配置的name一致就可以了,如果vue3不想保持一致,必须手动在文件后面添加export..…

从零开始构建一个小型字符级语言模型的详细教程(基于Transformer架构)之一数据准备

最近特别火的DeepSeek,是一个大语言模型,那一个模型是如何构建起来的呢?DeepSeek基于Transformer架构,接下来我们也从零开始构建一个基于Transformer架构的小型语言模型,并说明构建的详细步骤及内部组件说明。我们以构建一个字符级语言模型(Char-Level LM)为例,目标是通…

Qt:多元素控件

目录 多元素控件介绍 QListWidget QTableWidget QTreeWidget 多元素控件介绍 多元素控件表示这个控件中包含了很多的元素,元素可能指的是字符串,也可以指的是更加复杂的数据结构、图片等等 Qt 中提供的多元素控件有: QListWidgetQListViewQTableW…

深入理解 C++17 中的 std::launder

文章目录 为什么需要 std::launder?std::launder 的定义与用法典型使用场景1. 处理 placement new 创建的新对象2. 处理虚函数表的更新3. 在类似 std::optional 的场景中 总结 在 C 编程语言的演进历程中,C17 标准引入了诸多实用且强大的特性&#xff0c…

R语言用逻辑回归贝叶斯层次对本垒打数据与心脏移植数据后验预测检验模拟推断及先验影响分析|附数据代码...

全文链接:https://tecdat.cn/?p40152 在统计学领域中,层次建模是一种极为强大且实用的工具。它能够巧妙地处理复杂的数据结构,通过分层的方式对数据进行建模。在贝叶斯统计的框架内,层次建模优势尽显,其可以有效地融合…

[Computer Vision]实验四:相机标定

目录 一、实验内容 二、实验过程及结果 2.1 实验代码 2.2 实验结果及分析 一、实验内容 了解针孔照相机的相关知识,实现相机标定。(可使用提供的棋盘格或自行打印) 可视化棋盘格关键点、匹配点数(可加ransac)输出…