前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >0619-MySQL5.7.22主从配置

0619-MySQL5.7.22主从配置

作者头像
Fayson
发布于 2019-05-14 02:20:58
发布于 2019-05-14 02:20:58
70100
代码可运行
举报
文章被收录于专栏:Hadoop实操Hadoop实操
运行总次数:0
代码可运行

作者:余枫

1

文档编写目的

在生产环境中,数据库的主从配置是很有必要的,主从配置能提供数据源的备份,提供安全性方面的保障,从数据库也能减轻主数据库的访问压力,在出现故障时,也能减少损失。文档中会介绍MySQL5.7.22的主从配置步骤。

2

配置信息

操作系统:Red Hat 7.2

数据库版本:MySQL5.7.22

主节点:192.168.0.236

从节点:192.168.0.237

数据库用户名密码统一为root/!qQ123456

在配置过程中使用root用户进行操作

3

配置过程

3.1

Master/Slave配置

  • Master配置

修改主节点配置文件加入如下配置并重启服务:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
vim /etc/my.cnf

log-bin=mysql-bin
server-id=236
binlog_format=MIXED

参数含义:

log-bin:开启二进制日志,日志文件前缀

server-id:数据库服务的唯一标识,不能重复

binlog_format=MIXED:记录二进制日志的格式,推荐使用MIXED

Slave配置

修改从节点配置文件加入如下配置并重启服务:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
vim /etc/my.cnf

log-bin=mysql-bin
server-id=237

server-id和上面不能相同,是唯一的。

3.2

主从复制

  • 在主节点数据库中创建一个用户fftest

用户名:fftest密码:fftest

用户必须要有REPLICATION SLAVE权限,这样slave才能通过该用户进行复制。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
GRANT REPLICATION SLAVE ON *.* TO 'fftest'@'192.168.0.%' IDENTIFIED BY 'fftest';
FLUSH PRIVILEGES;
  • 查看主节点MySQL二进制日志File与Position
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
show master status;
  • 在从节点数据库中执行如下命令进行同步,host为Master节点地址,file和pos为上一步中查看的Master的信息,执行完成后通过start slave启动同步。
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
change master to
master_host='192.168.0.236',
master_user='fftest',
master_password='fftest',
master_log_file='mysql-bin.000003',
master_log_pos=601;

start slave;
  • 查看从节点状态

上图标记部分为yes,表示主从复制构建成功

4

测试结果

  • 在主节点创建数据库testff,并新建表test1
  • 向表中插入数据
  • 在从节点中成功查看到数据,主从构建测试成功

5

主从配置的补充

如果在主从配置之前,主数据库已经有了数据,可按照下列步骤进行配置。

1.查看主库已有数据

2.锁定主数据库

锁定后,只允许读取不允许写入,这样做的目的是防止备份过程中或备份完成后有新数据插入,导致备份数据与主数据不一致。

  • 备份数据

由于是做测试,所以只备份了fff,在生产/开发/测试环境中,请根据实际情况进行备份。

  • 从数据库导入数据

导入数据成功后,即可进行后续的主从配置,步骤与文档中的步骤一致即可。

6

总结

1.在主从配置过程中,数据库不可写入,否则会导致配置不成功。

2.在主节点数据库有数据的情况下,需要先对数据进行备份,然后导入到从数据库中,同时限制主节点数据库的写入操作,接下来才能进行主从的配置。

3.主从配置可以通过读写分离来实现服务器负载均衡,同时通过数据的复制来实现数据的异地备份以及在主节点出现故障时,可以切换从节点继续提供数据上的服务。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-05-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Hadoop实操 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Mysql主从配置实战
实战mysql主从配置 准备两个docker容器,分别在3306和3307开启两个mysql为主从数据库 可执行以下命令 docker run -p 3306:3306 --name mysql3306 -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 docker run -p 3307:3306 --name m
老梁
2019/09/10
1K0
MySQL优化之实现MySQL主从复制
MySQL支持单向、异步复制,复制过程中一个服务器充当主服务器,而一个或多个服务器充当从服务器
Petrochor
2022/06/07
6110
MySQL优化之实现MySQL主从复制
MySQL 主从复制
​ my.ini 配置文件在 MySQL 的安装目录下,一般默认在 C:\Program Files\MySQL目录下。在修改之前最好先备份一下配置文件,如果在配置中发生错误,可以用配置文件恢复一下。
OY
2022/03/17
6860
MySQL 主从复制
mysql学习总结09 — 优化(架构层)-主从复制与读写分离
数据库服务器压力增大,增加多台mysql数据库服务器,需要建立主从复制机制保证数据一致同步。
csxiaoyao
2019/02/15
4130
【MySQL】主从复制介绍及配置
MySQL 主从复制是指数据可以从一个MySQL数据库服务器主节点复制到一个或多个从节点。 MySQL 默认采用异步复制方式,这样从节点不用一直访问主服务器来更新自己的数据,数据的更新可 以在远程连接上进行,从节点可以复制主数据库中的所有数据库或者特定的数据库,或者特定的表。
Xiongan-桃子
2023/06/18
3980
【MySQL】主从复制介绍及配置
记录一次Mysql主从以及高可用操作【未完待续】
之前托管的物理机组的Raid5出现了一块坏盘,介于最近的事情较多,暂时不打算对其做替换, 不管硬盘是否可靠,数据备份也是必要的。之前本来是有做计划任务备份的,但是使用的宝塔面板并不支持排除某个数据库,只能选择所有,我有个裤子达到了60G,也懒得去修改宝塔自带的计划任务。因为出现事故第一时间是恢复业务,然而备份只能说是second choice,后续可能会对其进行修改来实现排除某些个数据库的功能。 之前也做过主从,这次针对相关服务基于ipvs实现HA。
Laikee
2022/04/25
3240
记录一次Mysql主从以及高可用操作【未完待续】
高大上的MySql主从复制到底是什么
通常我们对数据库的读和写都是在同一个数据库服务器中操作,但是当我们的数据量大的时候我们可能会考虑性能问题,那么为了提升系统性能,我们就可以通过MySQL的主从复制(读写分离)来减轻数据库的负载,并且如果当主数据库服务器宕机,我们数据库的数据也不会丢失,因为我们复制到了另外一个服务器上,甚至是多台数据库服务器(一主多从),而MySQL只支持一个主数据库多个数据库。
用户7386338
2020/05/29
4240
Mysql8实现主从复制
记录下File和Position的值 注意:执行完此步骤后不要再操作主服务器MySQL,防止主服务器状态值变化
itze
2022/10/31
6070
Mysql8实现主从复制
MySQL主从复制配置
Mysql中有一种日志叫做bin日志(二进制日志)。这个日志会记录下所有修改了数据库的SQL语句(INSERT,UPDATE,DELETE,ALTER TABLE,GRANT等等)。
Java帮帮
2018/12/24
4740
docker搭建mysql主从
mysql主从 # 主mysql启动 docker run --privileged=true -d -p 3307:3306 --name='mysql_master' \ -e MYSQL_ROOT_PASSWORD=123456 \ -v /opt/mysql_master/log:/var/log/mysql \ -v /opt/mysql_master/data:/var/lib/mysql \ -v /opt/mysql_master/conf:/etc/mysql/conf.d mysql
buiu
2022/01/30
6480
Mysql主从复制
(1)主从服务器操作系统版本和位数必须一致; (2)主节点(Master)和从节点(Slave)数据库版本必须一致; (3)主节点(Master)和从节点(Slave)数据库中的数据必须一致; (4)主节点(Master)需要开启二进制日志; (5)主节点(Master)和从节点(Slave)的 server-id 在局域网内必须唯一。
码客说
2022/12/05
1.2K0
Mysql主从复制
linux安装mysql8并且实现主从同步
准备服务器Server1和Server2,如果在同一个服务器的话则安装mysql时需要改变其端口。
我的小熊不见了丶
2019/06/05
1.2K0
mysql实现主从复制的日志是哪种_Redis主从复制
Mysql主从同步,要求需要先搭建至少两个mysql实例,一主一从,使用推荐Docker搭建Mysql《Docker部署安装Mysql》
全栈程序员站长
2022/09/22
3510
mysql实现主从复制的日志是哪种_Redis主从复制
CentOS 7.2下MySQL主从复制配置
MySQL的 Replication 是一个异步的复制过程(mysql5.1.7以上版本分为异步复制和半同步两种模式),从一个 Mysql instace(我们称之为 Master)复制到另一个 Mysql instance(我们称之 Slave)。在 Master 与 Slave 之间的实现整个复制过程主要由三个线程来完成,其中两个线程(Sql线程和IO线程)在 Slave 端,另外一个线程(IO线程)在 Master 端。
星哥玩云
2022/08/17
5190
MySQL主从复制
修改mysql配置文件,不同的系统my.cnf路径不同(CentOS中位于/etc/my.cnf)
十毛
2019/03/27
1.8K0
CentOS 7搭建部署MySQL主从复制
1、做数据的热备,作为后备数据库,主数据库服务器故障后,可切换到从数据库继续工作,避免数据丢失。
用户5766185
2019/07/08
2.7K0
CentOS 7搭建部署MySQL主从复制
MySQL 结合 MyCAT 实现主从复制读写分离
MySQL 结合 MyCAT 实现主从复制读写分离是一个用于提高数据库性能和可用性的常见方案。
用户7353950
2024/04/03
1500
MySQL 结合 MyCAT 实现主从复制读写分离
Linux配置Mysql5.7主从配置
主从配置其实蛮简单的,主从配置也叫热备,热备就是在数据库启动的情况下实时对数据进行备份,相反对概念叫冷备,就是在数据库停止对时候对数据进行备份。
胖虎
2019/06/26
1.3K0
Linux配置Mysql5.7主从配置
SpringBoot 2.x ShardingSphere读写分离实战
MySQL 主从复制的方式有多种,本文主要演示基于基于日志(binlog)的主从复制方式。
小东啊
2019/06/26
1.1K0
SpringBoot 2.x ShardingSphere读写分离实战
mysql主从复制
由于我这里使用docker搭建,所以需要把配置文件和数据文件映射到宿主机,让容器运行时挂载数据
earthchen
2020/09/24
1K0
相关推荐
Mysql主从配置实战
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验