MySQL8.0主从复制实现及遇到的个人问题

文章目录

  • 1、准备两个服务器或者虚拟机
  • 2、主库配置
  • 3、从库配置
  • 4、配置过程中使用到的命令
  • 5、遇到的问题

1、准备两个服务器或者虚拟机

这里使用的VM虚拟机的Centos、MySQL版本是8.0.26、使用FinalShell进行远程操作。

2、主库配置

  1. 修改MySQL配置文件(/etc/my.cnf)
#启用二进制日志
log-bin=mysql-bin
#服务器唯一id(不能重复)
server-id=100

在这里插入图片描述

  1. 重启mysql服务
    linux命令:systemctl restart mysqld
  2. 登录MySQL
  3. 创建用户并分配权限
    因为我的MySQL版本是8.0,必须要创建用户和分配用户权限分开操作。
# 已经不再使用
GRANT REPLICATION SLAVE ON *.* TO 'mengting'@'%' identified by '123456';
# 先创建用户,在赋予权限
# 在创建用户的时候,必须设置密码的等级  不然会创建失败(根据自己的设置进行决定)
set global validate_password.policy = 0;
set global validate_password.length = 10;CREATE USER 'mengting'@'%' IDENTIFIED BY '1111111111';
GRANT REPLICATION SLAVE ON *.* TO 'mengting'@'%';
  1. 执行show命令并记录File和Position(非常重要)
show master status;
# 执行完就不要进行操作了

在这里插入图片描述

3、从库配置

  1. 测试:是否能在从数据库使用上面创建的用户访问主数据库
# -u后面是账号,-p后面是密码,ip是主数据库的ip地址
mysql -h 192.168.110.110 -umengting -p1111111111
# 如果可以连接成功证明端口都是可以正常连接的
# 如果不能连通可以查看一下是否是防火墙的原因(可以暂时关闭防火墙)
  1. 修改MySQL配置文件(/etc/my.cnf)
#不要重复即可
server-id=101

在这里插入图片描述
3. 重启MySQL服务

#重启MySQL服务
systemctl restart mysqld
  1. 执行sql
#刚才记录的File和Position在这里要使用
#将master_log_file与master_log_pos修改为自己对应的值
change master to master_host='192.168.110.110',
master_user='mengting',master_password='1111111111',
master_log_file='mysql-bin.000001',master_log_pos=439;
  1. 查看从机状态
show slave status \G;

在这里插入图片描述
看到两个Yes代表配置成功了,可以进行测试了。

4、配置过程中使用到的命令

  1. linux命令:
--查看ip地址
ifconfig或ip addr
--暂时关闭防火墙
systemctl stop firewalld
--查看防火墙状态
systemctl status firewalld
--紧张开机启动防火墙
systemctl disable firewalld
--重启mysql服务
systemctl restart mysqld
--查看mysql服务状态
systemctl status mysqld
--启动mysql服务
systemctl start mysqld
--停止mysql服务
systemctl stop mysqld
--查看mysql错误日志
vim /var/log/mysql.log
--查看自动生成的root密码
grep 'temporary password' /var/log/mysqld.log
--查看是否开启某个端口
netstat -an|grep 3306
  1. mysql命令:
--远程登录
mysql -h 192.168.110.110 -uroot -p123456
--停止复制进程
stop slave;--重置复制状态(常用)
--RESET SLAVE命令用于重置复制状态。当你执行这个命令时,
--从服务器会删除所有复制相关的状态信息,包括二进制日志文件和位置、
--错误日志、中继日志等。这相当于重新初始化从服务器的复制状态,
--以便重新开始从主服务器同步数据。
--注意,这个命令需要具有足够权限的管理员或用户才能执行。
reset slave;
--开启复制进程
start slave;--设置密码等级
set global validate_password.policy = 0;
--设置密码长度
set global validate_password.length = 4;
--创建用户
create user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '1234';
--分配用户权限(全部权限)
grant all on *.* to 'root'@'%';
--在主服务器创建从机数据库用户(用于主从复制)
CREATE USER 'mengting'@'%' IDENTIFIED BY '0123456789';
GRANT REPLICATION SLAVE ON *.* TO 'mengting'@'%';--从机服务器进行主从复制
change master to master_host='192.168.110.110',
master_user='mengting',master_password='1111111111',
master_log_file='mysql-bin.000001',master_log_pos=156;
--查看主机(主数据库)状态
show master status;
--查看从机
show slave status;

5、遇到的问题

  1. Slave_IO_Running显示NO
    Slave_SQL_Running显示NO
    检查配置文件是否出错、检查是否成功开启主从复制SQL语句、检查服务器端口是否开放、检查是否可以在从机服务器连接到主机数据库(重要)

  2. Slave_IO_Running显示Connection
    Slave_SQL_Running显示NO
    检查网络是否连接,如果网络没有问题可以等待一会(比较慢)

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

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

相关文章

二叉树链式结构的实现(二叉树的遍历以及各种常用功能函数的实现)

之前也是把堆部分的知识点梳理完毕(即二叉树链式顺序的实现):堆的应用:堆排序和TOP-K问题 那么讲完了二叉树链式结构的实现。今天就进入二叉树链式结构的实现: 文章目录 1.准备工作2.二叉树的遍历2.1前序遍历2.2中序遍…

User Friendly大会 | 每日互动刘宇分享AIGC时代的数智营销变革

近日,第十九届暨2023年User Friendly国际用户体验大会在深圳召开。本次大会以“开智启能,体验无界”为主题,邀请了各行业领袖精英齐聚,分享前沿新观点,碰撞体验新思潮。每日互动高级副总裁刘宇作为业内资深专家&#x…

二维码地址门牌管理系统:物业管理的未来趋势

文章目录 前言一、数字化管理与便捷服务二、身份认证与安全保障三、业主便利与贴心服务四、未来发展趋势 前言 在数字化时代,物业管理面临着不断增加的挑战。为了提高管理效率、服务业主,二维码门牌管理系统应运而生。本文将探讨这一新型管理方式&#…

navicat密码解密

https://github.com/HyperSine/how-does-navicat-encrypt-password 获取加密的密码 reg query HKEY_CURRENT_USER\SOFTWARE\PremiumSoft\Navicat\Servers /s /v host reg query HKEY_CURRENT_USER\SOFTWARE\PremiumSoft\Navicat\Servers /s /v pwd或者通过导出连接之后查看文…

Unable to connect to Redis server

报错内容: Exception in thread "main" org.redisson.client.RedisConnectionException: java.util.concurrent.ExecutionException: org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 175.24.186.230/175.24.186.230…

【实用安装教程】在win系统下制作Mac OS镜像启动U盘

第一步:制作Mac OS系统引导镜像启动U盘 准备一个8G(或以上)的U盘插入到win系统的电脑上 去下载TransMac(Mac启动盘制作工具)v10.4按照说明安装好 插入准备好的U盘,U盘数据要转移,打开TransMac,右键U盘选…

ssm基于echarts的基金交易网站的设计与实现论文

摘 要 计算机网络发展到现在已经好几十年了,在理论上面已经有了很丰富的基础,并且在现实生活中也到处都在使用,可以说,经过几十年的发展,互联网技术已经把地域信息的隔阂给消除了,让整个世界都可以即时通话…

基于Spring Boot+Vue的学生信息管理系统【附源码】

介绍 1)登录模块:用户通过输入可以输入编号、邮箱、手机号和密码来登录系统,如果输入错误会返回登录界面,并提示错误信息,成功登录后用户的登录信息会存储在浏览器中,系统会根据这些信息判断该用户的操作权限。 2)系统…

Windows反调试技术学习

Windows反调试 前言元旦快乐!!!通过 API 调用IsDebuggerPresentCheckRemoteDebuggerPresent(NtQueryInformationProcess)OutputDebugStringZwSetInformationThread(ThreadHideFromDebugger) 手动…

【占用网络】VoxFormer 基于视觉的3D语义场景方案 CVPR 2023

前言 本文分享“占用网络”方案中,来自CVPR2023的VoxFormer,它基于视觉实现3D语义场景补全。 使用Deformable Attention从图像数据中,预测三维空间中的体素占用情况和类别信息。 VoxFromer是一个两阶段的框架: 第一个阶段&…

理解UML中的依赖关系

理解UML中的依赖关系 在面向对象的设计中,理解各种类之间的关系对于构建一个清晰、可维护的系统至关重要。UML(统一建模语言)为我们提供了一种可视化这些关系的方式。今天,我们将深入探讨UML中的依赖关系(Dependency&a…

苹果Vision Pro将于1月27日上市!

在无数期待中,苹果全新产品Vision Pro头显终于定下上市日期。 彭博社记者马克古曼(Mark Gurman)于近日在X(前推特)平台爆料了这一信息,预计苹果Vision Pro头显将于2024年1月27日率先在美国上市。 在过去看…

如何计算非线性负载的功率需求?

非线性负载的功率需求计算是一个相对复杂的过程,因为非线性负载的电流和电压之间的关系不是简单的正比关系。在计算非线性负载的功率需求时,需要考虑负载的特性、工作状态以及电源电压等因素。 确定负载的类型:首先需要了解负载的具体类型&am…

RocketMQ单机部署完整学习笔记

文章目录 前言一、RocketMQ是什么?二、使用步骤1.安装MQ1.安装JDK2.安装mq3.MQ配置(核心) 2.搭建可视化dashboard1.下载源码2.修改配置3.启动 3.整合java1.生产者2.消费者3.启动生产者4.启动消费者5.dashboard添加消费组 三、总结全部的配置 前言 本文是基于4.X版本…

静态网页设计——电影角(HTML+CSS+JavaScript)

前言 声明:该文章只是做技术分享,若侵权请联系我删除。!! 使用技术:HTMLCSSJS 主要内容:本网页主要利用HTML语言编写,简要介绍世界上一些主要国家,例如,中,…

【已解决】You have an error in your SQL syntax

报错讯息 java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘desc,target_url,sort,status,create_by,modify_by,created,last_update_time FROM…

跑通CLAM

项目场景: 从github上下载CLAM代码,上传Camelyon-16中的部分WSI图像,将代码跑通。 CLAM项目地址: GitHub - mahmoodlab/CLAM: Data-efficient and weakly supervised computational pathology on whole slide images - Nature …

高级RAG(四):RAGAs评估

之前我完成了父文档检索器和llamaIndex从小到大的检索这两篇博客,我在这两篇博客中分别介绍了使用langchain和llamaIndex进行文档检索的方法和步骤,其中包含了不同的RAG的检索策略,通常来说一个典型的RAG系统一般包含两个主要的部件&#xff…

程序媛的mac修炼手册--MacOS系统更新升级史

啊,我这个口罩三年从未感染过新冠的天选免疫王,却被支原体击倒😷大意了,前几天去医院体检,刚检查完出医院就摘口罩了🤦大伙儿还是要注意戴口罩,保重身体啊!身体欠恙,就闲…

‘react-native‘ 不是内部或外部命令,也不是可运行的程序或批处理文件。

原因:没有下载react-native 解决下载react-native npm i -g react-native-cli