首页 > 数据库 >Windows环境下配置MySQL主从复制详细教程

Windows环境下配置MySQL主从复制详细教程

时间:2023-05-23 10:57:14浏览次数:47  
标签:主从复制 slave 5.7 Windows MySQL 39 NO master mysql

一、下载mysql

下载地址:MySQL :: MySQL Community Downloads

1、点击箭头所指

​编辑

 2、默认页面是下载mysql8,如果想下载mysql5点击箭头所指

​编辑

3、点击箭头所指选择需要的版本

​编辑4、点击箭头所指可以选择32位或64位

​编辑

5、然后点击download

​编辑

二、解压压缩包

1、解压压缩包----->放置任意磁盘

​编辑

 

 2、新建mysql配置文件ini
1)、新建文本文档,命名为my.ini

​编辑

 2)、my.ini内容如下

[mysqld]
# 设置mysql的安装目录
basedir=D:\\soft\\mysql-5.7.39
# 设置mysql数据库的存放目录
datadir=D:\\soft\\mysql-5.7.39\\data
#设置3306端口
port=3306

#主服务器唯一ID
server-id=1
#启用二进制日志
log-bin=txmysql-bin
#设置不要复制的数据库(可设置多个)
binlog-ignore-db=mysql

#设置需要复制的数据库
binlog-do-db=mydb1
#设置binlog格式,MIXED,ROW,STATEMENT
binlog_format=STATEMENT

sql_mode="STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

3、安装mysql,win10系统点击搜索cmd,然后以管理员身份运行

​编辑

 4、切换bin目录,运行mysqld install命令安装​编辑

 5、输入命令启动mysql

net start mysql

 6、使用命令进入mysql管理界面

mysql -u root -p

 7、修改密码为: 123456

ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

 8、刷新权限

flush privileges;

9、重启mysql

net stop mysql
net start mysql

10、第一个mysql安装完成

 

三、安装第二个MySQL服务

1、第一个MySQL服务安装完毕后,将MySQL的文件夹重新复制一份,并重命名为mysql-5.7.39-slave。修改下该文件夹下的my.ini文件,

[mysqld]
# 设置mysql的安装目录
basedir=D:\\soft\\mysql-5.7.39-slave
# 设置mysql数据库的存放目录
datadir=D:\\soft\\mysql-5.7.39-slave\\data
#设置3307端口
port=3307

#从服务器唯一ID
server-id=2
#启用中继日志
relay-log=mysql-relay


sql_mode="STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

2、同样以管理身份运行cmd,切换到mysql-5.7.39-slave/bin目录下,执行:

mysqld.exe --install mysqlc2 --defaults-file=D:\soft\mysql-5.7.39-slave\my.ini

说明:D:\soft\mysql-5.7.39-slave\my.ini是你自己的路径  ,mysqlc2是起的别名

然后以mysqlc2启动服务     

net start mysqlc2   

​编辑

 

四、主从复制配置

1、用navicat连接上主数据库进行操作(一条条执行)

#创建用户
CREATE USER 'slave'@'localhost' IDENTIFIED BY '123456';

#授权用户
GRANT REPLICATION SLAVE ON *.* TO 'slave'@'localhost';


#刷新权限
FLUSH PRIVILEGES;

show master status;

​编辑

 ​编辑

 2、从库slave指向master地址,在从库中使用命令:

#master_host 主数据库地址
CHANGE MASTER TO master_host ='127.0.0.1',
#上一步中主数据库创建的从库用户
master_user ='slave',
#上一步中主数据库创建的从库密码
master_password ='123456',
#上一步中保存的file
master_log_file ='txmysql-bin.000004',
#上一步中保存的position
master_log_pos = 567;

​编辑

 3、执行命令启动

start slave

4、使用命令show slave status查看从库状态

show slave status

​编辑

 5、问题:

如果是Slave_IO_Running:No,可能是由于uuid相同,而导致异常(因为直接复制的)。

修改D:\soft\mysql-5.7.39-slave\data\auto.cnf,把里面的server-uuid修改成不一样的值即可。重新启动从库mysql服务

6、可以以下边的两个error查询解决办法:

​编辑

 

最后我们可以在主库新增、修改和删除,会发现从库跟着变化了。此时,主从复制配置完成。

标签:主从复制,slave,5.7,Windows,MySQL,39,NO,master,mysql
From: https://www.cnblogs.com/fenghd/p/17422642.html

相关文章

  • 安装MySQLdb for centos 7--小白教程
    1.MySQLdb下载地址:https://pypi.python.org/pypi/MySQL-python/1.2.5 2.unzipMySQL-python-1.2.5; 3.cdMySQL-python-1.2.5; pythonsetup.pyinstall;此时报错:Traceback(mostrecentcalllast): File"setup.py",line17,in<module>   metadat......
  • MySql
    数据库(数据库管理系统:简单sql语句)之前学过ObjectOutputstream-->java对象(张三20)->序列化到文件当中反序列化newjava对象readobjectwriteobject常见的有哪些数据库管理系统?IBM——>eclipseOracle甲骨文(sun)Oracle是做数据库起家的Oracle-->MYSQLAB公司MYSQL是占体积......
  • 【MySQL】MySQL执行一条 select 语句,期间发生了什么?
    1  前言我们学习SQL的时候,大家肯定第一个先学到的就是select查询语句了,比如下面这句查询语句://在product表中,查询id=1的记录select*fromproductwhereid=1;但是有没有想过,MySQL执行一条select查询语句,在MySQL中期间发生了什么?带着这个问题,我们可以......
  • H510以上芯片主板安装Windows系统
    H510以上芯片主板1\del进入BIOS,先去安全设置SECURITY(进入SECURITY关闭安全启动),进入SecureBoot选择Disabled关闭安全启动;2、Settings中,选高级,SettingsAdvanced下,将BIOSCSM/UEFIMode,默认的UEFI改成CSM,开启CSM(使用独显,有CSM选项时,一定要开启);3、SettingsAdvancedInte......
  • windows 开机登录
    避免使用服务启动软件,配置服务很麻烦,实施的时候初步使用。有些程序就可以开机运行,不用服务,特别情况,比如程序崩溃要重启的话,服务就可以。1、命令netplwiz1.在键盘上按下【win+R】组合键,调出运行窗口,然后输入【netplwiz】,然后回车进入。  2、重启操作系统  ......
  • 程序员的 Windows 工具箱「GitHub 热点速览」
    如何精简Windows并快速配置开发环境呢?本周特推的winutil是一个程序员的Windows工具箱,它提供了开发工具的一键安装以及减少系统垃圾的功能,一切为了简洁、高效。同样高效的还有C++日志库spdlog,快速构建React应用的refine,以及人脸分析库insightface。此外,你一定不能错......
  • 这可能是最全面的MySQL面试八股文了
    什么是MySQLMySQL是一个关系型数据库,它采用表的形式来存储数据。你可以理解成是Excel表格,既然是表的形式存储数据,就有表结构(行和列)。行代表每一行数据,列代表该行中的每个值。列上的值是有数据类型的,比如:整数、字符串、日期等等。数据库的三大范式第一范式1NF确保数据库表字段......
  • MySQL数据基础知识整理—3
    聚合函数我们先来看下定义:    在数据库中,聚合函数是指能够对一组数据进行计算并返回一个单一值的函数,这个单一值通常是对这组数据的总体统计结果。    简单来说,就是数据库提供给用户的一种常用函数,其中包括和,平均值,最大值,最小值等。下面我也会给出几个比较常用的聚合......
  • 在 Windows Server 2022 中,微软取消了一些以前的功能。以下是一些被取消的功能
    在WindowsServer2022中,微软取消了一些以前的功能。以下是一些被取消的功能:InternetStorageNameService(iSNS):iSNS是一个网络服务协议,为iSCSI设备提供自动发现和配置。在WindowsServer2022中,iSNS被取消了,建议使用其他的自动发现和配置方法。PeerNameResolu......
  • windows环境下使用Jenkins配置dotnet core极简入门
    1、环境准备1、安装Jenkins所依赖的Java环境,注意Java版本要与Jenkins要求的版本一致方法参照:Java开发环境配置|菜鸟教程(runoob.com)2、下载git工具:https://git-scm.com/download/win3、下载安装Jenkins:https://www.jenkins.io/download/jenkins的安装过程可参照:wind......