windows下实现mysql8的主从复制

1、下载mysql8的安装包

MySQL :: Download MySQL Community Server

2、放到指定目录进行解压,更改名称为mysql-8.1.0-winx64-master,并复制一份作为从数据库

3、在bin目录下创建一个my.ini文件

添加如下内容

[mysqld]
basedir="D:/soft/mysql/mysql-8.1.0-winx64-master"
datadir="D:/soft/mysql/mysql-8.1.0-winx64-master/data"
socket="D:/soft/mysql/mysql-8.1.0-winx64-master/mysql.sock"
log-bin=mysql-bin
server-id=1
port=3306
# 设置需要同步的数据库
binlog-do-db=mydb
# 屏蔽系统库同步
binlog-ignore-db=mysql
binlog-ignore-db=information_schema
binlog-ignore-db=preformance_schema

4、使用管理员打开cmd并使用如下命令初始化数据库,此时会在安装包目录下创建data目录

mysqld --initialize-insecure

5、注册服务mysql-master

mysqld install mysql-master --defaults-file="D:\soft\mysql\mysql-8.1.0-winx64-master\bin\my.ini" 

6、启动服务,可以使用如下命令或者在服务中重启

net stop mysql-master

net start mysql-master

6、设置主库root用户密码
mysqladmin -u root -password 12345678;

或者也可以在进入mysql后进行密码的修改

mysql -uroot -P3306;

use mysql;

ALTER user 'root'@'localhost' IDENTIFIED BY '12345678'

7、进行navicat配置主库连接

8、创建用于同步的账号slave,设置过期策略,修改服务器权限

9、使用如下命令查找File文件是否存在,是同步时会使用的binlog文件,记住File及Position的值

show master status;

10、配置从数据库,在拷贝的mysql-8.1.0-winx64-slave的bin路径下添加从库的my.ini文件并进行配置

[client]
port=3307
socket="D:/soft/mysql/mysql-8.1.0-winx64-slave/mysql.sock"
[mysqld]
basedir="D:/soft/mysql/mysql-8.1.0-winx64-slave"
datadir="D:/soft/mysql/mysql-8.1.0-winx64-slave/data"
socket="D:/soft/mysql/mysql-8.1.0-winx64-slave/mysql.sock"
port=3307
server-id=2
#skip-grant-tables
log-bin=mysql-bin

# 设置需要同步的数据库表
replicate_wild_do_table=mydb.%
# 屏蔽系统库同步
replicate_wild_ignore_table=mysql.%
# 启用中继日志
relay-log=mysql-relay
# 将从服务器设置为只读
read_only=1

# 要进行主从复制的数据库名
replicate-do-db=mydb
# 不进行主从复制的数据库名
replicate-ignore-db=mysql
# 记录从库更新,允许链式复制(A-B-C),当该从库作为其他库的主库时,需要添加该参数
log-slave-updates

11、以管理员权限打开cmd控制台,进行相应的操作

mysqld.exe --initialize-insecure --user=mysql

mysqld install mysql-slave --defaults-file="D:\soft\mysql\mysql-8.1.0-winx64-slave\bin\my.ini"

net start mysql-slave

12、登录从数据库,进行root用户密码修改,开启远程访问

mysql -uroot -P3307

use mysql;

ALTER user 'root'@'localhost' IDENTIFIED BY 'xtf******';

# 开启远程访问,不开启通过Navicat远程连接会报错Access denied for user

update user set host='%' where user='root';

FLUSH PRIVILEGES;

13、重启服务

net stop mysql-slave

net start mysql-slave

14、在navicat中配置同步

stop slave;
change master to master_host='127.0.0.1',master_port=3306,master_user='slave',master_password='123456',master_log_file='mysql-bin.000005',master_log_pos=569;
start slave;

show slave status;

# 如上参数

master_host  主库的ip地址

master_port   主库的端口

master_user  同步账号

master_password  同步账号的密码

master_log_file    开始同步的日志文件要与上边show master status的File一样

master_log_pos   开始同步的日志的开始位置

15、也可以在命令行中使用命令启动链路及查看链路

stop slave;

start slave;

show slave status \G;

16、验证,在主库中进行表内容的创建,从库也会进行相应操作

主库进行数据添加

从库出现相应操作

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

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

相关文章

【精华】关于生成式AI的思考

文章目录 0 论述1 观点2 模型开发栈3 新兴产品蓝图4 思考番外篇-与AI聊天须知 0 论述 生成式AI的首年——“第一幕”——是从技术出发的。我们发现了一个新的“锤子”——基础模型,并引发了一波轻量级的新技术演示应用。 我们现在认为市场正在进入“第二幕”——这…

TS编译选项——TS文件编译后消除注释

在tsconfig.json文件中配置removeComments属性 {"compilerOptions": {// outDir 用于指定编译后文件所在目录"outDir": "./dist", // 将编译后文件放在dis目录下// 是否文件编译后移除注释"removeComments": true} } 左边是编写的t…

华为云云耀云服务器L实例评测 | 基于minikube搭建单节点kubernetes集群

目录 1 安装Docker2 conntrack-tools3 安装minikube4 下载二进制:kubeadm、kubectl、kubelet5 准备镜像6 启动minikube7 简单测试8 开启dashboard ​ Minikube 是一个使用golang开发的单节点kubernetes集群环境,在资源紧张的情况下,可以用于快…

MySQL - 关于约束类型和作用的介绍

约束的概念:约束是作用于表中字段上的规则,用于限制存储在表中的数据。 约束的作用:用于保证数据库中数据的正确性、完整性和一致性。 约束分类: 约束类型作用关键字非空约束限制该字段的数据不能为nullnot null唯一约束保证该…

什么是Peppol ID?如何创建?

Peppol 网络的两大优势是安全和高效,由于Peppol 最常用于电子发票,因此这些优势在电子发票上展露无遗。相比之下,通过电子邮件发送 PDF 格式的发票和其他文件不仅处理成本较高,而且容易出现发票欺诈。 如果您所在的公共部门组织或…

AI聊天ChatGPT系统源码卡密验证开源版

ChatGPT卡密验证版源码是一个基于PHP7.4和MySQL5.6的聊天AI源码,它不仅支持暗黑模式、反应速度极快,而且充值方面采用后台生成卡密方式,方便快捷,如果您有能力将其接入在线支付,即可进一步拓展充值方式,为更…

云原生容器平台——新华资产数字化转型加速器

新华资产管理股份有限公司(以下简称“新华资产”)于2006年5月经中国保险监督管理委员会批准、7月3日正式挂牌成立,是国内首批专业保险资产管理机构。2020年上半年,公司管理的资产规模突破万亿元人民币,投资收益水平居行…

Python 用列表实现模拟手机通讯录(简易版)

"""列表实现好友管理系统知识点:1、列表存储信息2、列表增删改查3、嵌套循环4、字符串分割和拼接(重点)5、列表索引"""# 暂存好友信息(程序结束数据删除) friend_info list()input_buf…

飞书与企业微信的异同

云文档 飞书的云文档会自动用游览器打开,不会直接在PC应用中打开(移动端能在应用中打开)。 飞书云文档能够插入视频、流程图、问卷等等 聊天消息交互 钉钉也有类似的功能,可以针对消息进行点赞等回复 钉钉的消息回复还有【收到…

Room Arranger for Mac: 轻松创造梦想家园的必备设计软件

你是否曾经梦想过自己动手设计理想中的家居环境?你是否希望通过一个简单易用的工具来实现你的设计理念?那么,Room Arranger for Mac就是你的最佳选择! Room Arranger是一款专门为Mac用户打造的室内设计软件,它拥有直观…

适用于初学者,毕业设计的5个c语言项目,代码已开源

C语言项目集 项目介绍 该项目适用于初学者学习c语言,也适用于高校学生课程设计,毕业设计参考。 项目并不能满足所有人的需求,可进行项目指导,定制开发。 开源地址 c语言项目代码地址 项目列表 该项目包含如下5个管理系统&am…

Linux 入门:基本指令

本篇文章来介绍我们在初学Linux时可以会碰倒的一些基本指令,让我们对这些指令有一个基本的了解。 目录 01. ls 指令 02. pwd 命令 03. cd 指令 04. touch 指令 05. mkdir 指令(重要) 06. rmdir指令 && rm 指令(重…

Java深入理解线程的三大特性

目录 1 CPU缓存导致可见性问题2 线程切换导致原子性问题3 性能优化导致有序性问题4 JMM(Java Memory Model)5 volatile6 synchronized 1 CPU缓存导致可见性问题 线程的三大特性: 可见性:Visibility有序性:Ordering原子性:Atomic…

轻松搭建Linux的环境

Linux的环境的搭建 目录:一、使用云服务器二、使用虚拟机软件2.1 下载虚拟机软件2.2 下载一个操作系统的镜像文件 三、直接安装在物理机上四、使用XShell远程登录到Linux 目录: 我们平常用的都是windows系统,对Linux系统还是很陌生得。为什么…

当遇到第一个不满足条件的元素后返回这个元素及之后的各元素itertools.dropwhile()

【小白从小学Python、C、Java】 【计算机等考500强证书考研】 【Python-数据分析】 当遇到第一个不满足条件的元素后 返回这个元素及之后的各元素 itertools.dropwhile() 选择题 以下程序的运行结果是? import itertools a[1,3,5,2,4,6] print("【显示】a ",a) prin…

百度实习一面(知识图谱部门)

百度面经(知识图谱部)一面 1.自我介绍 介绍完了,打开共享,对着简历一点一点问 2.ffmpeg在项目中是怎么使用的 回答了ffmpeg在项目中使用的命令,用来干了什么 3.为什么使用toml配置,了解过yml配置吗&am…

【大数据开发技术】实验05-HDFS目录与文件的创建删除与查询操作

文章目录 一、实验目标二、实验要求三、实验内容四、实验步骤 一、实验目标 熟练掌握hadoop操作指令及HDFS命令行接口掌握HDFS目录与文件的创建方法和文件写入到HDFS文件的方法掌握HDFS目录与文件的删除方法掌握查询文件状态信息和目录下所有文件的元数据信息的方法 二、实验…

全栈工程师必须要掌握的前端JavaScript技能

作为一名全栈工程师,在日常的工作中,可能更侧重于后端开发,如:C#,Java,SQL ,Python等,对前端的知识则不太精通。在一些比较完善的公司或者项目中,一般会搭配前端工程师&a…

MySQL数据库基础知识要点总结

目录 前言 一.数据库构成 1.1 表 1.2 关系 1.3 索引 1.4 查询语言 1.5 数据库管理系统 二.数据类型 2.1 整数 2.2 浮点 2.3 日期与时间 2.4 字符串 三.约束条件 3.1 主键约束 3.2 唯一约束 3.3 外键约束 3.4 非空约束 3.5 默认值约束 总结 前言 数据库是…

产品经理认证(UCPM)备考心得

UCPM是联合国训练所CIFAL中心颁发的产品经理证书。如今,ESG是推动企业可持续发展的新潮流。UCPM作为一种可持续发展证书,为我们带来了一套先进科学、系统全面的产品管理模式,是产品管理领域公认的权威证书。那么,如何准备这张证书…