当前位置: 首页 > news >正文

Mysql主从服务安装配置

1.下载地址

MySQL :: Download MySQL Community Server (Archived Versions)icon-default.png?t=N7T8https://downloads.mysql.com/archives/community/

2.安装配置

1.下载解压后,拷贝一份作为slave的安装目录

3.配置my.ini

由于下载mysql8版本,解压后,没有相关的my.ini配置文件,需要手动创建配置文件。

参考地址:

MySQL :: MySQL 8.0 Reference Manual :: 2.3.4.2 Creating an Option Fileicon-default.png?t=N7T8https://dev.mysql.com/doc/refman/8.0/en/windows-create-option-file.html

MySQL :: MySQL 8.0 Reference Manual :: 4.2.2.2 Using Option Filesicon-default.png?t=N7T8https://dev.mysql.com/doc/refman/8.0/en/option-files.html

3.安装命令

3.1安装主服务器

  1. 配置my.ini脚本

在C:\mysql8\mysql8.0.2-master目录下,新建my.ini文件,将以下内容复制到文件中进行保存。

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8[client]
default-character-set=utf8
port=3307[mysqld]#设置开启日志
log-bin = mysql-bin
#设置服务ID,主从不能一致
server-id = 1
#设置需要同步的数据库
binlog-do-db = user_db
#屏蔽系统同步
binlog-ignore-db = mysql
binlog-ignore-db = information_schema
binlog-ignore-db = performance_schema
#设置3306端口
port = 3307
# 设置mysql的安装目录
basedir=C:\\mysql8\\mysql8.0.2-master
# 设置mysql数据库的数据的存放目录
datadir=C:\\mysql8\\mysql8.0.2-master\\data
# 允许最大连接数
max_connections=2000
# 服务端使用的字符集默认为8比特编码的latin1字符集
#character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

2.进入到mysql的bin目录

3.初始化数据库

mysqld --initialize --user=mysql --console

获取到初始化密码sQlnj#Ckl0rL

初始化成功会在data目录下产生文件

4.安装mysql服务

mysqld --install mysqlmaster --defaults-file="C:\mysql8\mysql8.0.2-master\my.ini"

安装成功后再windows service服务中可以看到该服务

5.启动mysql服务

启动mysqlmaster服务成功

3.2安装从服务器

1.配置my.ini脚本

在C:\mysql8\mysql8.0.2-slave目录下,新建my.ini文件,将以下内容复制到文件中进行保存。

[client]
port=3308[mysql] 
# 设置mysql客户端默认字符集
default-character-set=utf8 
[mysqld]#设置开启日志
log-bin = mysql-bin
#设置服务ID,主从不能一致
server-id = 2
#设置需要同步的数据库
#replicate_do_db = user_db
#屏蔽系统同步
#replicate_wild_ignore_table = mysql%
#replicate_wild_ignore_table = informatin_schema.%
#replicate_wild_ignore_table = performance_schema.%
#设置3308端口
port = 3308
# 设置mysql的安装目录
basedir=C:\\mysql8\\mysql8.0.2-slave
# 设置mysql数据库的数据的存放目录
datadir=C:\\mysql8\\mysql8.0.2-slave\\data
# 允许最大连接数
max_connections=2000
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

2.进入到mysql的bin目录

3.初始化数据库

mysqld --initialize --user=mysql --console

获取到数据库初始化密码gLp#Q,*wy5Gf

初始化成功会在data目录下产生文件

mysqld --install mysqlslave --defaults-file="C:\mysql8\mysql8.0.2-slave\my.ini" 

安装mysqlslave服务成功。

4.启动mysql服务

4.连接主从数据库

使用工具连接数据库服务器后,连接正常。(连接前会提示修改初始化密码)

5.修改主从配置文件

1.停止mysql主从服务

修改配置文件时,首先将服务停止。

2.修改主从配置文件

2.1修改主服务器文件如下:

#设置开启日志
log-bin = mysql-bin
#设置服务ID,主从不能一致
server-id = 1
#设置需要同步的数据库
binlog-do-db = user_db
#屏蔽系统同步
binlog-ignore-db = mysql
binlog-ignore-db = information_schema
binlog-ignore-db = performance_schema

2.2修改从服务器文件如下

#设置需要同步的数据库

replicate_do_db = user_db

3.启动主从服务

3.创建从服务器访问的账户

创建用于操作账户,在主节点创建一个用户db_sync,用于从节点链接主节点时使用。

create user 'db_sync'@'%' identified with mysql_native_password by 'db_sync'; #创建用户
grant replication slave on *.* to 'db_sync'@'%'; #用户授权
flush privileges; #刷新权限
show master status;查看记录文件名和位置点

创建成功后,可在主数据库中查询到新建的db_sync用户信息

4.查看主库的状态

5.设置从库向主库同步数据

mysql ‐h localhost ‐P3308 ‐uroot ‐p
#先停止同步
STOP SLAVE;
#修改从库指向到主库,使用上一步记录的文件名以及位点
change master to 
master_host='localhost',
master_port=3307,
master_user='db_sync',
master_password='db_sync',
master_log_file='mysql-bin.000002',
master_log_pos=1152; #需要在主库中输入show master status可查询文件名称
#需要在主库中输入show master status可查询文件名称
#启动同步
START SLAVE;
#查看从库状态Slave_IO_Runing和Slave_SQL_Runing都为Yes说明同步成功,如果不为Yes,请检查
error_log,然后排查相关异常

6.查询从库的状态

#查看从库状态Slave_IO_Runing和Slave_SQL_Runing都为Yes说明同步成功,如果不为Yes,请检查

error_log,然后

排查相关异常。

show slave status

#注意 如果之前此从库已有主库指向 需要先执行以下命令清空

STOP SLAVE IO_THREAD FOR CHANNEL '';

reset slave all;

在主库中查询到的file和Position字段的数据对应从库设置的master_log_file和master_log_pos字段。

6.测试数据库同步

6.1在主数据库中创建user_db数据和t_user表

在主数据库中创建user_db,并创建表,该表数据为空

查询从库数据,从数据库会自动创建数据库和表。

6.2.在主数据库插入数据,查看从库同步的数据。

7.附加说明

1.同步问题排查

如果从库没有同步数据,可使用show slave status命令,查看master_info_File和Slave_SQL_Running_State字段显示的信息

2.cmd下执行数据库初始化或者创建windows service服务失败。

必须在管理员模式下打开命令窗口

3.在初始化数据库时失败

在配置my.inf的datadir时,必须要自己创建好data文件夹。

相关文章:

Mysql主从服务安装配置

1.下载地址 MySQL :: Download MySQL Community Server (Archived Versions)https://downloads.mysql.com/archives/community/ 2.安装配置 1.下载解压后,拷贝一份作为slave的安装目录 3.配置my.ini 由于下载mysql8版本,解压后,没有相关的my…...

双向BFS

1034 Number Game 分数 35 作者 陈越 单位 浙江大学 A number game is to start from a given number A, and to reach the destination number B by a sequence of operations. For the current number X, there are 3 types of operations: XX1 XX−1 XXN Your job is to f…...

数据艺术:精通数据可视化的关键步骤

数据可视化是将复杂数据转化为易于理解的图表和图形的过程,帮助我们发现趋势、关联和模式。同时数据可视化也是数字孪生的基础,本文小编带大家用最简单的话语为大家讲解怎么制作一个数据可视化大屏,接下来跟随小编的思路走起来~ 1.数据收集和…...

MySQL 是如何实现事务的四大特性的?

分析&回答 如果你不知道事务更不知道四大特性请先看看:说说什么是事务 原子性 语句要么都执行,要么都不执行,是事务最核心的特性,事务本身来说就是以原子性来定义的,实现主要是基于undo log undo log&#xff…...

python实现zscore归一化和minmax标准化

zscore归一化: minmax from sklearn import preprocessing from sklearn.preprocessing import StandardScaler import numpy as np# 数据 x np.array([[1.,-1.,2.],[2.,0.,0.],[0.,1.,-1.]]) print(----------------minmaxscaler标准化-------------) # 调用minma…...

架构师成长之路Redis第三篇|Redis key过期清除策略

Eviction policies maxmemory 100mb 当我们设置的内存达到指定的内存量时,清除策略的配置方式决定了默认行为。Redis可以为可能导致使用更多内存的命令返回错误,也可以在每次添加新数据时清除一些旧数据以返回到指定的限制。 当达到最大内存限制时,Redis所遵循的确切行为是…...

C++智能指针之weak_ptr(保姆级教学)

目录 C智能指针之weak_ptr 概述 作用 本文涉及的所有程序 使用说明 weak_ptr的常规操作 lock(); use_count(); expired(); reset(); shared_ptr & weak_ptr 尺寸 智能指针结构框架 常见使用问题 shared_ptr多次引用同一数据,会导致两次释放同一内…...

ElementUI浅尝辄止18:Avatar 头像

用图标、图片或者字符的形式展示用户或事物信息。 常用于管理系统或web网站的用户头像&#xff0c;在用户账户模块更换头像操作也能看到关于Avatar组件的应用。 1.如何使用&#xff1f; 通过 shape 和 size 设置头像的形状和大小。 <template><el-row class"de…...

1688API技术解析,实现按图搜索1688商品(拍立淘)

一种可能的解决方案是使用图像识别和相似度匹配的算法。您可以通过将输入的图片与1688上的商品图片进行比对&#xff0c;找出最相似的商品。这涉及到图像特征提取、相似度计算以及数据库匹配等技术。您可以使用开源的图像处理库&#xff08;如OpenCV&#xff09;来进行图像处理…...

【面试经典150题】买卖股票的最佳时机

题目链接 给定一个数组 prices &#xff0c;它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票&#xff0c;并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。 返回你可以从这笔交易中获取的…...

selenium可以编写自动化测试脚本吗?

Selenium可以用于编写自动化测试脚本&#xff0c;它提供了许多工具和API&#xff0c;可以与浏览器交互&#xff0c;模拟用户操作&#xff0c;检查网页的各个方面。下面是一些步骤&#xff0c;可以帮助你编写Selenium自动化测试脚本。 1、安装Selenium库和浏览器驱动程序 首先…...

CXL.mem M2S Message 释义

&#x1f525;点击查看精选 CXL 系列文章&#x1f525; &#x1f525;点击进入【芯片设计验证】社区&#xff0c;查看更多精彩内容&#x1f525; &#x1f4e2; 声明&#xff1a; &#x1f96d; 作者主页&#xff1a;【MangoPapa的CSDN主页】。⚠️ 本文首发于CSDN&#xff0c…...

使用boost::geometry::union_ 合并边界(内、外):方案二

使用boost::geometry::union_ 合并边界&#xff08;内、外&#xff09;&#xff1a;方案二 typedef boost::geometry::model::d2::point_xy<double> boost_point; typedef boost::geometry::model::polygon<boost_point> boost_Polygon;struct Point {float x;floa…...

ICCV 2023 | 小鹏汽车纽约石溪:局部上下文感知主动域自适应LADA

摘要 主动域自适应&#xff08;ADA&#xff09;通过查询少量选定的目标域样本的标签&#xff0c;以帮助模型从源域迁移到目标域。查询数据的局部上下文信息非常重要&#xff0c;特别是在域间差异较大的情况下&#xff0c;然而现有的ADA方法尚未充分探索这一点。在本文中&#…...

stable diffusion实践操作-黑白稿线稿上色

系列文章目录 本文专门开一节【黑白稿线稿上色】写相关的内容&#xff0c;在看之前&#xff0c;可以同步关注&#xff1a; stable diffusion实践操作 文章目录 系列文章目录前言一、操作步骤1. 找到黑白线稿图 总结 前言 本章主要介绍黑白稿线稿上色&#xff0c;这是通过Cont…...

Python学习教程:集合操作的详细教程

前言 大家早好、午好、晚好吖 ❤ ~欢迎光临本文章 Python中有两种可以遍历的容器类型&#xff1a; 序列类型&#xff1a;包含字符串、列表、元祖 序列类型是线性表&#xff0c;就像数组一样&#xff0c;是在内存中开辟一块连续空间&#xff0c;连续存储的&#xff0c; 那么查找…...

球球的排列

题目传送门 引 计数DP,好像特别经典&#xff0c;有两种做法&#xff0c;我只会 O ( n 3 ) O(n^3) O(n3),有 O ( n 2 ) O(n^2) O(n2)的 解法 首先&#xff0c; 若 x y p 2 且 x z q 2 , 则 y z ( p q x ) 2 若xyp^2且xzq^2,则yz(\frac{pq}{x} )^2 若xyp2且xzq2,则yz(xpq…...

1783_CMD启动MATLAB同时执行一个脚本

全部学习汇总&#xff1a; GitHub - GreyZhang/g_matlab: MATLAB once used to be my daily tool. After many years when I go back and read my old learning notes I felt maybe I still need it in the future. So, start this repo to keep some of my old learning notes…...

C语言中内存分配的几种方式

目录 C语言中内存分配的几种方式静态内存分配栈内存分配堆内存分配内存映射文件 C语言中内存分配的几种方式 静态内存分配 静态内存分配是在程序编译时分配内存&#xff0c;通常用于全局变量和静态变量。这些变量的内存空间在程序的整个运行期间都是存在的。 栈内存分配 栈内存…...

组相联cache如何快速实现cache line eviction并使用PMU events验证

如何快速实现cache line eviction 一&#xff0c;什么是cache hit、miss、linefill、evict &#xff1f;1.1 如果要程序员分别制造出cache hit、miss、linefill、evict这四种场景&#xff0c;该怎么做&#xff1f; 二&#xff0c;实现cache line eviction的方法1.1 直接填充法3…...

从零到一:OpCore-Simplify如何让黑苹果配置变得如此简单?

从零到一&#xff1a;OpCore-Simplify如何让黑苹果配置变得如此简单&#xff1f; 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 还在为复杂的OpenCor…...

终极指南:如何在4K显示器上完美运行VPet虚拟桌宠模拟器

终极指南&#xff1a;如何在4K显示器上完美运行VPet虚拟桌宠模拟器 【免费下载链接】VPet 虚拟桌宠模拟器 一个开源的桌宠软件, 可以内置到任何WPF应用程序 项目地址: https://gitcode.com/GitHub_Trending/vp/VPet 你是否在4K显示器上运行虚拟桌宠时遇到过模糊、卡顿或…...

Nunchaku-FLUX.1-dev镜像安全加固:非root运行/最小权限/网络策略限制

Nunchaku-FLUX.1-dev镜像安全加固&#xff1a;非root运行/最小权限/网络策略限制 1. 为什么需要安全加固&#xff1f; 当你把Nunchaku-FLUX.1-dev这个强大的文生图模型部署在自己的服务器上时&#xff0c;可能更多关注的是它能生成多么精美的图片&#xff0c;或者处理中文提示…...

从零开始:LabelImg图像标注工具的完整实战指南

从零开始&#xff1a;LabelImg图像标注工具的完整实战指南 【免费下载链接】labelImg LabelImg is now part of the Label Studio community. The popular image annotation tool created by Tzutalin is no longer actively being developed, but you can check out Label Stu…...

Qwen2.5-Coder-1.5B实现计算机网络实验:TCP/IP协议栈分析

Qwen2.5-Coder-1.5B实现计算机网络实验&#xff1a;TCP/IP协议栈分析 1. 引言 计算机网络课程中的TCP/IP协议栈分析实验一直是让学生头疼的内容。传统实验需要手动编写底层网络代码&#xff0c;配置复杂环境&#xff0c;调试过程繁琐。现在有了Qwen2.5-Coder-1.5B这样的代码生…...

GTE模型在法律文书智能检索中的突破性应用

GTE模型在法律文书智能检索中的突破性应用 1. 引言 在法律行业&#xff0c;文书检索一直是个让人头疼的问题。传统的检索方式主要依赖关键词匹配&#xff0c;但法律文书往往涉及复杂的语义关系和专业术语&#xff0c;简单的关键词搜索经常会出现"查不全"或"查…...

解锁Dify工作流新潜能:四种并行模式实战解析

1. 为什么需要工作流并行化&#xff1f; 第一次用Dify构建工作流时&#xff0c;我就被它的可视化编排能力惊艳到了。但实际跑了几次发现&#xff0c;当处理复杂任务时&#xff0c;串行执行就像在高速公路上开拖拉机——明明有八车道却只开放一条。比如做新闻情感分析时&#xf…...

**基于Python实现脉冲神经网络:从理论到代码的创新实践**在深度

基于Python实现脉冲神经网络&#xff1a;从理论到代码的创新实践 在深度学习飞速发展的今天&#xff0c;传统人工神经网络&#xff08;ANN&#xff09;已难以满足对生物可解释性和能效比更高的需求。而**脉冲神经网络&#xff08;Spiking Neural Networks, SNN&#xff09;**作…...

Codex CLI 配置避坑指南:从 TOML 语法到沙箱策略的 5 个实战技巧

Codex CLI 配置避坑指南&#xff1a;从 TOML 语法到沙箱策略的 5 个实战技巧 如果你已经初步了解 Codex CLI 的基本用法&#xff0c;但在实际配置过程中频繁踩坑&#xff0c;这篇文章就是为你准备的。我们将深入探讨那些官方文档没有详细说明的细节问题&#xff0c;以及如何通过…...

3分钟掌握MicroPython WebREPL:浏览器直接控制嵌入式设备

3分钟掌握MicroPython WebREPL&#xff1a;浏览器直接控制嵌入式设备 【免费下载链接】webrepl WebREPL client and related tools for MicroPython 项目地址: https://gitcode.com/gh_mirrors/we/webrepl 想要用浏览器直接控制你的MicroPython开发板吗&#xff1f;WebR…...