Mysql 8.0主从复制模式安装(兼容Mysql 5.7)

Mysql V8.0.35安装

官网地址:MySQL :: Download MySQL Community Server

  1. 下载【Mysql 8.0.35】压缩包

  1. 解压压缩包,仅保留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

  1. 安装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;                                    #刷新
  1. 配置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

  1. 配置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;

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

摄影网站的技术 SEO:提示和最佳实践

摄影就是要给人留下良好的第一印象。如果你想在竞争中领先,摄影师的SEO是您可以采用的最佳营销方法之一。 我们都曾有过这样的经历:你建立了一个漂亮的作品集网站来吸引更多的业务。网站上线并在社交媒体上推广后,您就可以坐等了。网站访问量…

002、ArkTS

之——开发语言 目录 之——开发语言 杂谈 正文 1.TypeScript基础 1.1 基础类型 1.2 条件语句 1.3 函数 1.4 类 1.5 模块 1.6 迭代器 2.ArkTS 2.1 JAVA SCRIPT 2.2 TS 2.3 ArkTS ​编辑 3.示例 3.1 概述性示例 3.2 自定义组件 3.3 渲染控制语法 3.4 状态管…

linux升级gcc版本详细教程

0.前言 一般linux操作系统默认的gcc版本都比较低,例如centos7系统默认的gcc版本为4.8.5。gcc是从4.7版本开始支持C11的,4.8版本对C11新特性的编译支持还不够完善,因此如果需要更好的体验C11以及以上版本的新特性,需要升级gcc到一个…

P8A002-CIA安全模型-配置Linux描述网络安全CIA模型之可用性案例

【预备知识】 可用性(Availability) 数据可用性是一种以使用者为中心的设计概念,易用性设计的重点在于让产品的设计能够符合使用者的习惯与需求。以互联网网站的设计为例,希望让使用者在浏览的过程中不会产生压力或感到挫折&#…

F5社区学习心得分享:如何克服云迁移挑战?

伴随数字时代的快速发展,很多企业都会借助云迁移,踏上转型之旅。尽管云迁移被认为是一种能够节约成本,且不会影响正常运营的现代化改造举措,然而我们并不能低估它的复杂性。正如有研究表明,约有41%的企业并没有通过云迁…

JSP EL表达式之 empty

好 本文我们还是继续说EL表达式 我们来讲一个非空判断的好手 empty 我们直接编写代码如下 <% page contentType"text/html; charsetUTF-8" pageEncoding"UTF-8" %> <%request.setCharacterEncoding("UTF-8");%> <!DOCTYPE html&…

基于GPRS的汽车碰撞自动报警系统(论文+源码)

1. 系统设计 本次基于GPRS的汽车碰撞自动报警系统的设计中&#xff0c;其主要的目标功能如下&#xff1a;1、实时检测当前的GPS精度和纬度坐标&#xff1b;2.当发生碰撞后系统自动将当前的信息通过GPRS数据发送到远端数据进行报警&#xff1b;3、系统在碰撞后一方面进行本地报警…

补充:如何提高selenium的运行速度?

已经通读该专栏文章的同学,或许对UI自动化测试有了一定的掌握,细心的同学肯定会发现一个问题,当用例量达到一定程度时,对于整体用例的执行速度肯定不会很满意。除了应用多线程运行用例的方式加快速度,有没有其他的方法呢? 今天告诉大家,方法是有的!也是本人新学的。即…

【开源】基于Vue+SpringBoot的农家乐订餐系统

项目编号&#xff1a; S 043 &#xff0c;文末获取源码。 \color{red}{项目编号&#xff1a;S043&#xff0c;文末获取源码。} 项目编号&#xff1a;S043&#xff0c;文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 用户2.2 管理员 三、系统展示四、核…

【技术分享】RK3399 Ubuntu通过Python实现录音和播放功能

​本文基于IDO-SBC3968 Ubuntu 系统通过Python脚本实现录音和播放功能。 IDO-SBC3968采用RK3399国产六核64位CPU高性能处理器&#xff0c;支持4K HDMI2.0显示&#xff0c;接口丰富&#xff0c;拥有千兆以太网&#xff0c;全协议TypeC接口&#xff0c;USB3.0 &#xff0c;eDP 和…

Vue3+Vite+TypeScript常用项目模块详解

目录 1.Vue3ViteTypeScript 概述 1.1 vue3 1.1.1 Vue3 概述 1.1.2 vue3的现状与发展趋势 1.2 Vite 1.2.1 现实问题 1.2 搭建vite项目 1.3 TypeScript 1.3.1 TypeScript 定义 1.3.2 TypeScript 基本数据类型 1.3.3 TypeScript语法简单介绍 2. 项目配置简单概述 2.…

Java 简易版王者荣耀

所有包和类 GameFrame类 package newKingOfHonor;import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.io.File; import java.util.ArrayList;im…

电源控制系统架构(PCSA)之系统分区电源域

目录 4.2 电源域 4.2.1 电源模式 4.2.2 电源域的选择 4.2.3 系统逻辑 4.2.4 Always-On域 4.2.5 处理器Clusters 4.2.6 CoreSight逻辑 4.2.7 图像处理器 4.2.8 显示处理器 4.2.9 其他功能 4.2.10 电源域层次结构要求 4.2.11 SOC域示例 4.2 电源域 电源域在这里被定…

Java魔法解密:HashMap底层机制大揭秘

文章目录 一、 源码深度解析1.1 窥探Java集合框架中的设计思想1.2 逐行解读HashMap的源代码1.2.1 类信息1.2.2 常量属性1.2.3 变量属性1.2.4 节点信息1.2.5 构造方法1.2.6 put方法1.2.6.1 putVal方法1.2.6.2 putTreeVal方法1.2.6.3 tieBreakOrder方法1.2.6.4 treeifyBin方法1.2…

Less 安装教程

文章目录 前言LESS的系统要求安装LESS例子输出Less编译css工具后言 前言 hello world欢迎来到前端的新世界 &#x1f61c;当前文章系列专栏&#xff1a;Sass和Less &#x1f431;‍&#x1f453;博主在前端领域还有很多知识和技术需要掌握&#xff0c;正在不断努力填补技术短板…

实战Flask+BootstrapTable最简动态表头及数据(ajax方法)

话不多说,有图有源码 1.实现原理:通过ajax从后端获取表头及数据 前端页面内容 <!DOCTYPE html> {% from "common/_macro.html" import static %} <html> <meta charset"utf-8"> <head> <!-- 引入bootstrap样式 --> <l…

【JAVA】学生信息管理系统

目录 前言 一、环境搭建 二、功能实现 1.学生信息类的创建 2.学生信息的添加功能 3.学生信息的删除功能 4.学生信息的修改功能 5.学生信息的查看功能 三、主类的调用 1.界面的搭建 2.学生端和教师端 3.系统和功能的选择 总结 前言 JAVA实现的学生信息管理…

超详细的的PyTorch安装教程,成功率高,适合初学者,亲测可用。

啰嗦几句&#xff1a;网上的教程很多&#xff0c;安装的方法多种多样&#xff0c;操作复杂&#xff0c;成功率还不高。小编在淘宝专门帮助不会安装的小伙伴远程配置环境&#xff0c;这方法都是测试过了&#xff0c;适用大部分人的&#xff0c;完全按照文章来操作&#xff0c;基…

服务化通信OPC实操

实操也是基于视频进行一些笔记&#xff0c;没得写就少写了 准备 Nuget包准备&#xff1a;OPCfoundation 一般都是使用Ua&#xff0c;当然也是有&#xff1a; 客户端链接服务器参数&#xff1a;IP Port 认证 登录用户名 Session 的实例化创建 进行使用&#xff1a; 因为Ses…

【C++】哈希(位图、布隆过滤器)

一、哈希的应用&#xff08;位图和布隆过滤器&#xff09; 1、位图&#xff08;bitset&#xff09; &#xff08;1&#xff09;位图概念 【题目】 给 40亿 个不重复的无符号整数&#xff0c;没排过序。给一个无符号整数&#xff0c;如何快速判断一个数是否在这 40亿 个数中。…