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

news2024/9/22 23:28:16

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
 #设置主服务器的IP
 MASTER_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 TO
 MASTER_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.coloradmin.cn/o/1237634.html

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

相关文章

对中国控制会议论文模板的拙略模仿

由于控制会议的latex模板年久失修,不适用于Texlive,因此我自己做了一个模板,这个Latex模板修改自自动化学报的模板,尽可能还原控制会议的模板要求,但是有些部分因为时间原因未完全还原,使用者可以根据自身需…

python网络通信之基础知识填坑

文章目录 版权声明网络通信要素IP地址ifconfig和ping命令ifconfig (Interface Configuration)ping 端口和端口号的介绍端口号的分类socket介绍TCPTCP简介TCP的特点 UDPUDP简介UDP特点 版权声明 本博客的内容基于我个人学习黑马程序员课程的学习笔记整理而成。我特此声明&#…

不是说人工智能是风口吗,那为什么工作还那么难找?

最近确实有很多媒体、机构渲染人工智能可以拿高薪,这在行业内也是事实,但前提是你有足够的竞争力,真的懂人工智能。 首先,人工智能岗位技能要求高,人工智能是一个涵盖了多个学科领域的综合性学科,包括数学、…

探索锦食送如何通过API集成无代码开发技术提高电商平台和营销系统效率

探索锦食送无代码开发集成技术 随着电子商务和营销系统的快速发展,企业不断寻求更高效和灵活的管理方式。锦食送,作为高端餐饮外卖服务的领先者,通过无代码开发的API集成技术,实现了电商平台和营销系统的高效管理。这种创新的连接…

SV-7042VP 4G无线网络音柱sip广播4G音柱

SV-7042VP 4G无线网络音柱sip广播4G音柱 1. 采用防水一体化设计,整合了音频解码、数字功放及音柱 2. 提供配置软件,支持SIP标准协议,通过SIP服务器能够接入现有综合通信调度平台系统,接受sip通信调度平台。融合第三方sip协议及si…

阿里云高校计划学生和教师完成认证领取优惠权益

阿里云高校计划学生和教师均可参与,完成学生认证和教师验证后学生可以免费领取300元无门槛代金券和3折优惠折扣,适用于云服务器等全量公共云产品,订单原价金额封顶5000元/年,阿里云百科aliyunbaike.com分享阿里云高校计划入口及学…

MONGODB 的基础 NOSQL注入基础

首先来学习一下nosql 这里安装就不进行介绍 只记录一下让自己了解mongodb ubuntu 安装后 进入 /usr/bin ./mongodb即可进入然后可通过 进入的url链接数据库 基本操作 show dbshow dbsshow tablesuse 数据库名插入数据db.admin.insert({json格式的数据})例如 db.admin.inse…

数据结构-快速排序“人红是非多”?看我见招拆招

目录 1.快速排序 Hoare版本: 挖坑法: 前后指针版本: 快速排序的时间复杂度 2.快速排序的优化 三数取中法选key 随机数选key 三路划分法 3. 非递归实现快速排序 1.快速排序 快速排序一共有三种版本:Hoare版本、挖坑法、前后指针版本…

JSP EL表达式基本使用

今天我们来说EL表达式 这在整个jsp中都是非常重要的一章 因为 如果我们用 <%属性%> 属性为空时 直接就是个 null 这个肯定是不能让用户看到的东西 所以 我们就需要EL表达式 例如 我们jsp代码编写如下 <% page contentType"text/html; charsetUTF-8" page…

抖音seo短视频矩阵源码开发部署与维护--开源

一、引言 随着抖音等短视频平台的崛起&#xff0c;越来越多的企业和个人开始关注如何在这些平台上提升曝光量和用户流量。抖音SEO&#xff08;搜索引擎优化&#xff09;是一种有效的方法&#xff0c;通过优化短视频内容和关键词&#xff0c;让更多的人找到并点击你的视频。本文…

基于PHP的动漫周边购物系统

有需要请加文章底部Q哦 可远程调试 基于PHP的动漫周边购物系统 一 介绍 此动漫周边购物系统系统基于原生PHP开发&#xff0c;数据库mysql&#xff0c;前端bootstrap。用户可注册登录&#xff0c;购物下单&#xff0c;评论等。管理员登录后台可对动漫周边商品&#xff0c;用户…

【23真题】难!下沙“小清华”难度爆增!

今天分享的是23年“下沙小清华”杭州电子科技大学843的信号与系统试题及解析。 本套试卷难度分析&#xff1a;22年杭电843考研真题&#xff0c;我也发布过&#xff0c;若有需要&#xff0c;戳这里自取&#xff01;平均分为112分&#xff0c;最高分为145分&#xff01;该院校23…

优化3种教学方法

在教育领域&#xff0c;教学方法对于学生的学习成果和兴趣至关重要。 第一种是项目式学习。这种方法鼓励学生通过完成实际的项目来获取知识&#xff0c;而不仅仅是在课堂上听讲。学生需要在实际操作中解决问题&#xff0c;这能培养他们的创新思维和实践能力。项目式学习还能提高…

验收材料-软件质量保证措施

一、 质量保障措施 二、 项目质量管理保障措施 &#xff08;一&#xff09; 资深的质量经理与质保组 &#xff08;二&#xff09; 全程参与的质量经理 &#xff08;三&#xff09; 合理的质量控制流程 1&#xff0e; 质量管理规范&#xff1a; 2&#xff0e; 加强协调管理&…

OCR是什么意思,有哪些好用的OCR识别软件?

1. 什么是OCR&#xff1f; OCR&#xff08;Optical Character Recognition&#xff09;是一种光学字符识别技术&#xff0c;它可以将印刷体文字转换为可编辑的电子文本。OCR技术通过扫描和分析图像中的文字&#xff0c;并将其转化为计算机可识别的文本格式&#xff0c;从而…

mysql开启慢查询日志

直接看原文: 原文链接:MySQL慢查询日志开启、配置、分析等操作_Code0cean的博客-CSDN博客 ------------------------------------------------------------------------------------------------------------------------------- 命令总结: 查看慢查询日志文件 tail -100f …

webGL开发微信小游戏

WebGL 是一种用于在浏览器中渲染 2D 和 3D 图形的 JavaScript API。微信小游戏本质上是在微信环境中运行的基于 Web 技术的应用&#xff0c;因此你可以使用 WebGL 来开发小游戏。以下是基于 WebGL 开发微信小游戏的一般步骤&#xff0c;希望对大家有所帮助。北京木奇移动技术有…

下载安装升讯威在线客服系统时提示风险的解决办法

客服系统的服务端程序、客服端程序、配套的配置工具涉及磁盘文件读写、端口监听&#xff0c;特别是经过混淆加密后&#xff0c;可能被部分浏览器或部分杀毒软件提示风险。请忽略并放心使用&#xff0c;如果开发软件是为了植入木马&#xff0c;这个代价可太大了&#xff0c;不如…

向量数据库,展望AGI时代

无论是向量数据库&#xff0c;还是大模型&#xff0c;归根结底&#xff0c;大家在追捧它时的心态&#xff0c;焦虑大于需求。 向量数据库的热潮&#xff0c;在一定程度上“外化”了人们的焦虑。 但这并不能否定向量数据库的实际价值&#xff0c;甚至更长远来看&#xff0c;向…

低代码!小白用10分钟也能利用flowise构建AIGC| 业务问答 | 文本识别 | 网络爬虫

一、与知识对话 二、采集网页问答 三、部署安装flowise flowise工程地址&#xff1a;https://github.com/FlowiseAI/Flowise flowise 官方文档&#xff1a;https://docs.flowiseai.com/ 这里采用docker安装&#xff1a; step1&#xff1a;克隆工程代码 &#xff08;如果网络…