Mysql 8.0主从复制模式安装(兼容Mysql 5.7)
Mysql V8.0.35安装
官网地址:MySQL :: Download MySQL Community Server
- 下载【Mysql 8.0.35】压缩包
- 解压压缩包,仅保留6个安装文件即可
mysql-community-client-8.0.31-1.el7.x86_64.rpm mysql-community-client-plugins-8.0.31-1.el7.x86_64.rpm mysql-community-common-8.0.31-1.el7.x86_64.rpm mysql-community-icu-data-files-8.0.31-1.el7.x86_64.rpm mysql-community-libs-8.0.31-1.el7.x86_64.rpm mysql-community-server-8.0.31-1.el7.x86_64.rpm
- 安装Mysql
# 1、检查MySQL需要的依赖
# 给安装MySQL需要的 /tmp文件夹赋权
chmod -R 777 /tmp# 2、检查依赖
rpm -qa | grep libaio
# 如无
yum install libaio
rpm -qa | grep net-tools
# 如无
yum install net-tools# 3、按照如下顺序 执行安装
#第1步安装mysql-community-common
rpm -ivh mysql-community-common-8.0.35-1.el7.x86_64.rpm
#第2步安装mysql-community-client-plugin
rpm -ivh mysql-community-client-plugins-8.0.35-1.el7.x86_64.rpm
#第3步安装mysql-community-libs
#如果报错mariadb-libs is obsoleted by mysql-community-libs-8.0.35-1.el7.x86_64
#执行 yum remove mariadb-libs
rpm -ivh mysql-community-libs-8.0.35-1.el7.x86_64.rpm
#第4步安装mysql-community-client
rpm -ivh mysql-community-client-8.0.35-1.el7.x86_64.rpm
#第5步安装mysql-community-icu-data-files
rpm -ivh mysql-community-icu-data-files-8.0.35-1.el7.x86_64.rpm
#第6步安装mysql-community-server
#如果报错
#Failed dependencies:# libnuma.so.1()(64bit) is needed by mysql-community-server-8.0.35-1.el7.x86_64# libnuma.so.1(libnuma_1.1)(64bit) is needed by mysql-community-server-8.0.35-1.el7.x86_64# libnuma.so.1(libnuma_1.2)(64bit) is needed by mysql-community-server-8.0.35-1.el7.x86_64
#执行 yum install numactl
rpm -ivh mysql-community-server-8.0.35-1.el7.x86_64.rpm# 4、查看MySQL版本
mysql --version
# 或
mysqladmin --version
# 或 -i区分大小写,不然找不到
rpm -qa | grep -i mysql# 5、初始化 生成root用户密码
mysqld --initialize --user=mysql# 6、查看密码 [_#F8,8yL_n/0];[w;eabA+L2E*]
cat /var/log/mysqld.log# 7、查看MySQL运行状态
systemctl status mysqld# 8、启动MySQL服务
systemctl start mysqld# 9、查询当前MySQL是否开机自启动
systemctl list-unit-files | grep mysqld.service# 10、如果是disable,可设置开机自启动
systemctl enable mysqld.service# 11、命令行登录
mysql -uroot -p# 12、提示修改密码
alter user 'root'@'localhost' identified by 'Sdmc@2023ab';#13、配置运行远程登录
use mysql #访问mysql库
update user set host = '%' where user = 'root'; #使root能再任何host访问
FLUSH PRIVILEGES; #刷新
- 配置Mysql 5.7兼容
a.配置不区分大小写lower_case_table_names
注意,重启后mysql密码会重置,需要重新查看mysql密码,才可以进行连接。
#1.MySQL8.0下修改此配置重启时禁止启动,如需更该需做如下操作
# a.停止MySQL服务
# b.删除数据目录(慎重),即删除/var/lib/mysql 目录
# c.在MySQL配置文件my.cnf中添加
lower_case_table_names=1
# d.启动服务器
# d.查看mysql密码
cat /var/log/mysqld.log
b.更改为InnoDB引擎或删除分区(未执行)
ALTER TABLE part ENGINE = INNODB;
c.设置兼容模式sql_mode
sql_mode=TRADITIONAL
- 配置Mysql 8.0主从复制
a.主服务器(Master)上修改配置文件(my.cnf)新增下面参数:
#1.MySQL8.0下修改此配置重启时禁止启动,如需更该需做如下操作
# a.停止MySQL服务
# b.删除数据目录(慎重),即删除/var/lib/mysql 目录
# c.在MySQL配置文件my.cnf中添加
lower_case_table_names=1
# d.启动服务器
# d.查看mysql密码
cat /var/log/mysqld.log
b.主服务器(Master)重启Mysql服务
systemctl restart mysqld
c.主服务器(Master)的数据库中创建用于复制的账户并授予相应的权限。
#1.登录MySQL
mysql -uroot -p
#2.切换MySQL
use mysql;
#3.创建用户
CREATE USER 'db_sync'@'%' IDENTIFIED BY 'Sdmc@123';
#4.授权账号复制权限
GRANT REPLICATION SLAVE ON *.* TO 'db_sync'@'%';
#5.刷新配置
FLUSH PRIVILEGES;
d.主服务器(Master)上执行以下命令获取当前二进制日志文件的名称和位置:
SHOW MASTER STATUS;
f.从服务器(Slave)上修改配置文件(my.cnf)/etc/my.cnf
server-id = 2
#中继日志文件的名称,用于从主服务器接收二进制日志事件。
relay-log = mysql-relay-bin
#从服务器的二进制日志文件的名称。
log_bin = mysql-bin
#不同步相关的库
replicate-ignore-db = mysql
replicate-ignore-db = information_schema
replicate-ignore-db = performance_schema
重启Mysql服务
#重启MySQL服务 systemctl restart mysqld
g.登录从服务器(Slave)MySQL上根据主服务器建立的账号和show master status;显示的内容,修改以下命令配置主从复制(根据主服务上的配置进行修改)
#1.进入Mysql登录
mysql -uroot -p
#2.停止Mysql从服务
STOP SLAVE;
进行Master设置
CHANGE MASTER TO#设置主服务器的IPMASTER_HOST = '10.148.0.22',#设置主服务器的账号MASTER_USER = 'db_sync',#设置主服务器的密码MASTER_PASSWORD = 'Sdmc@123',#主服务器数据库上的file值(不能有空格)MASTER_LOG_FILE = 'mysql-bin.000001',#主服务器数据库的Position值MASTER_LOG_POS = 157,get_master_public_key=1;
#启动Slave
start slave;
#查看主从同步开启状态 SHOW SLAVE STATUS\G;
注意:如果手欠,不小心把从库的数据删除后,导致同步失败;
重新执行
#停止Slave同步
stop slave;
#从小设置binlog行数
CHANGE MASTER TOMASTER_HOST = '10.148.0.22',MASTER_USER = 'db_sync',MASTER_PASSWORD = 'Sdmc@123',MASTER_LOG_FILE = 'mysql-bin.000001',#主服务器数据库的Position值(最新的值)MASTER_LOG_POS = 3429,get_master_public_key=1;
相关文章:

Mysql 8.0主从复制模式安装(兼容Mysql 5.7)
Mysql V8.0.35安装 官网地址:MySQL :: Download MySQL Community Server 下载【Mysql 8.0.35】压缩包 解压压缩包,仅保留6个安装文件即可 mysql-community-client-8.0.31-1.el7.x86_64.rpm mysql-community-client-plugins-8.0.31-1.el7.x86_64.rpm my…...

基于Django+Tensorflow卷积神经网络鸟类识别系统
欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介系统概述系统功能核心技术系统架构系统优势 二、功能三、系统四. 总结 总结 一项目简介 介绍一个基于DjangoTensorflow卷积神经网络鸟类识别系统是一个非…...

史上最全前端知识点+高频面试题合集,十二大专题,命中率高达95%
前言: 下面分享一些关于阿里,美团,深信服等公司的面经,供大家参考一下。大家也可以去收集一些其他的面试题,可以通过面试题来看看自己有哪里不足。也可以了解自己想去的公司会问什么问题,进行有针对的复习。…...

我叫:基数排序【JAVA】
1.自我介绍 基数排序(radix sort)属于“分配式排序” (distribution sort),又称“桶子法” (bucket sort)或bin sort,它是通过键值的各个位的值,将要排序的元素分配至某些“桶”中,是‘桶排序’的扩展 2.基本思想 将所有待比较数值统一为同样的数位长度,数位较短的数…...

ArkUI开发进阶—@Builder函数@BuilderParam装饰器的妙用与场景应用【鸿蒙专栏-05】
ArkUI开发进阶—@Builder函数@BuilderParam装饰器的妙用与场景应用 HarmonyOS,作为一款全场景分布式操作系统,为了推动更广泛的应用开发,采用了一种先进而灵活的编程语言——ArkTS。ArkTS是在TypeScript(TS)的基础上发展而来,为HarmonyOS提供了丰富的应用开发工具,使开…...

智慧城市内涝积水监测仪功能,提升城市预防功能
内涝积水监测仪不仅改变了人们应对城市内涝的老办法,还让智慧城市往前迈了一大步。这个监测仪是怎么做到的呢?就是靠它精准的数据监测和预警,让城市管理有了更科学高效的解决妙招。它就像有了个聪明又负责任的助手,让城市管理更加…...

ISCTF2023 部分wp
学一年了还在入门( web where_is_the_flag ISCTF{41631519-1c64-40f6-8dbb-27877a184e74} 圣杯战争 <?php // highlight_file(__FILE__); // error_reporting(0);class artifact{public $excalibuer;public $arrow;public function __toString(){echo "为Saber选择…...
springboot(ssm毕业生学历证明系统Java(codeLW)
springboot(ssm毕业生学历证明系统Java(code&LW) 开发语言:Java 框架:ssm/springboot vue JDK版本:JDK1.8(或11) 服务器:tomcat 数据库:mysql 5.7(或8.0) 数据…...

分布式锁3: zk实现分布式锁
一 zk 实现分布式锁 1.1 zk分布式操作命令 1.指令: ls / get /zookeeper create /aa "test" delete /aa set /aa "test1" 分布式锁实现原理与最佳实践 2..znode节点类型: 永…...
每日博客Day8
每日博客Day 8 每日算法 206.翻转链表 个人第一次思路: 其实我个人的第一个思路是比较暴力的,我第一遍暴力遍历链表,把链表的所有数值全部都保存到数组里面,然后翻转这个数组,再重复的覆盖当前的这个链表。但是这样…...

Redis-主从与哨兵架构
Jedis使用 Jedis连接代码示例: 1、引入依赖 <dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>2.9.0</version> </dependency> 2、访问代码 public class JedisSingleTe…...
PTA 7-3 将数组中的数逆序存放
本题要求编写程序,将给定的n个整数存入数组中,将数组中的这n个数逆序存放,再按顺序输出数组中的元素。 输入格式: 输入在第一行中给出一个正整数n(1≤n≤10)。第二行输入n个整数,用空格分开。 输出格式:…...

JavaScript 如何拷贝对像(Object)或者数组(Array)
目录 JavaScript数据拷贝类型 浅拷贝 深拷贝 举例: 浅拷贝 数组 对象 深拷贝 lodash cloneDeep使用示例 自定义深拷贝方法示例 JSON.parse() 和 JSON.stringify()使用示例 JavaScript数据拷贝类型 浅拷贝 数组可以使用Array.prototype.slice()方法 …...

nodejs669在线图书借阅管理系统vue前端
系统的设计与实现主要实现角色有管理员和用户,管理员在后台管理用户模块、用户表模块、图书借阅模块、图书归还模块、图书分类模块、token表模块、收藏表模块、书籍信息模块、图书资讯模块、留言板模块、书籍信息评论表模块、注册用户模块、配置文件模块、处罚记录模块、在线客…...

计算机网络之概述
一、概述 1.1因特网概述 定义 网络(Network)由若干结点(Node)和连接这些结点的链路(Link)组成。多个网络还可以通过路由器互连起来,这样就构成了一个覆盖范围更大的网络,即互联网(或互连网)因此,互联网是“网络的网络…...
git stash save untracked not staged
git stash save untracked not staged 如图 解决方案: git stash save "tag标记信息" --include-untracked或者: git stash save -u "tag标记信息" git stash clear清空本地暂存代码_zhangphil的博客-CSDN博客文章浏览阅读486次。…...

spring-boot集成mybatis-generator
通用 Mapper 在 1.0.0 版本的时候增加了 MyBatis Generator (以下简称 MBG) 插件,使用该插件可以很方便的生成实体类、Mapper 接口以及对应的 XML 文件。 下面介绍了 mybatis-generator 在 spring-boot 中的使用过程 一、引入pom依赖 <dependencies><de…...

C++中用于动态内存的new和delete操作符
文章目录 1、动态分配内存的应用2、动态分配内存与分配给普通变量的内存有什么不同?3、C 中如何分配/释放内存4、new 操作符4.1 使用new的语法4.2 初始化内存4.3 分配内存块4.4 普通数组声明 Vs 使用new4.5 如果运行时没有足够内存可用怎么办? 5、delete 操作符 C/…...

什么是美颜sdk?集成第三方美颜sdk的步骤
本文将深入探讨如何集成第三方美颜sdk,为直播平台引入更先进、更具吸引力的美颜特效。 第一步:选择合适的第三方美颜sdk 在开始集成美颜sdk之前,首要任务是选择适合自己直播平台需求的第三方美颜sdk。不同的sdk可能具有不同的特色和性能&a…...
Gogs服务搭建及软件的使用
Gogs基本操作使用:https://blog.51cto.com/yangxingzhen/5980346 Gitea—私有git服务器搭建教程:https://huaweicloud.csdn.net/638db200dacf622b8df8c7f1.html?spm1001.2101.3001.6650.3&utm_mediumdistribute.pc_relevant.none-task-blog-2%7Edefault%7ECTR…...

使用VSCode开发Django指南
使用VSCode开发Django指南 一、概述 Django 是一个高级 Python 框架,专为快速、安全和可扩展的 Web 开发而设计。Django 包含对 URL 路由、页面模板和数据处理的丰富支持。 本文将创建一个简单的 Django 应用,其中包含三个使用通用基本模板的页面。在此…...
在四层代理中还原真实客户端ngx_stream_realip_module
一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡(如 HAProxy、AWS NLB、阿里 SLB)发起上游连接时,将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后,ngx_stream_realip_module 从中提取原始信息…...

剑指offer20_链表中环的入口节点
链表中环的入口节点 给定一个链表,若其中包含环,则输出环的入口节点。 若其中不包含环,则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...
Qwen3-Embedding-0.6B深度解析:多语言语义检索的轻量级利器
第一章 引言:语义表示的新时代挑战与Qwen3的破局之路 1.1 文本嵌入的核心价值与技术演进 在人工智能领域,文本嵌入技术如同连接自然语言与机器理解的“神经突触”——它将人类语言转化为计算机可计算的语义向量,支撑着搜索引擎、推荐系统、…...
【python异步多线程】异步多线程爬虫代码示例
claude生成的python多线程、异步代码示例,模拟20个网页的爬取,每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程:允许程序同时执行多个任务,提高IO密集型任务(如网络请求)的效率…...

Spring数据访问模块设计
前面我们已经完成了IoC和web模块的设计,聪明的码友立马就知道了,该到数据访问模块了,要不就这俩玩个6啊,查库势在必行,至此,它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据(数据库、No…...
AGain DB和倍数增益的关系
我在设置一款索尼CMOS芯片时,Again增益0db变化为6DB,画面的变化只有2倍DN的增益,比如10变为20。 这与dB和线性增益的关系以及传感器处理流程有关。以下是具体原因分析: 1. dB与线性增益的换算关系 6dB对应的理论线性增益应为&…...

Python基于历史模拟方法实现投资组合风险管理的VaR与ES模型项目实战
说明:这是一个机器学习实战项目(附带数据代码文档),如需数据代码文档可以直接到文章最后关注获取。 1.项目背景 在金融市场日益复杂和波动加剧的背景下,风险管理成为金融机构和个人投资者关注的核心议题之一。VaR&…...

mac 安装homebrew (nvm 及git)
mac 安装nvm 及git 万恶之源 mac 安装这些东西离不开Xcode。及homebrew 一、先说安装git步骤 通用: 方法一:使用 Homebrew 安装 Git(推荐) 步骤如下:打开终端(Terminal.app) 1.安装 Homebrew…...
从面试角度回答Android中ContentProvider启动原理
Android中ContentProvider原理的面试角度解析,分为已启动和未启动两种场景: 一、ContentProvider已启动的情况 1. 核心流程 触发条件:当其他组件(如Activity、Service)通过ContentR…...