广告
返回顶部
首页 > 资讯 > 数据库 >Mysql主从复制搭建
  • 772
分享到

Mysql主从复制搭建

Mysql主从复制搭建 2020-09-28 03:09:35 772人浏览 猪猪侠
摘要

1.Mysql主库会把所有的写操作记录在binlog日志中,并且生成log dump线程,将binlog日志传给从库的I/O线程,从库生成两个线程,一个是I/O线程,另外一个是sql线程。 主将更改操作记录到binlog里从将主的binlo

Mysql主从复制搭建

1.Mysql主库会把所有的写操作记录在binlog日志中,并且生成log dump线程,将binlog日志传给从库的I/O线程,从库生成两个线程,一个是I/O线程,另外一个是sql线程。

主将更改操作记录到binlog里从将主的binlog事件(sql语句) 同步本机上并记录在relaylog里从根据relaylog里面的sql语句按顺序执行。

2.主从复制步骤:

  • 确保从数据库与主数据库里的数据一致
  • 在主数据库里创建一个同步账户授权给从数据库使用
  • 配置主数据库(修改配置文件)
  • 配置从数据库(修改配置文件)
  • 一主一从
  • 主主复制
  • 一主多从---扩展系统读取的性能,因为读是在从库读取的
  • 多主一从---5.7版本开始支持
  • 联级复制

3.需求:

搭建两台mysql服务器,一台作为主服务器,一台作为从服务器,主服务器进行写操作,从服务器进行读操作。

4.环境说明【使用Docker启动两个】

名称	Ip	Port
M1		192.168.149.128 	3307
M1S1	192.168.149.128 	3308

5.安装【阿里云需要放掉端口3307,3308,本机关闭防火墙即可】

docker run --name M1 -p 3307:3306 -e MYSQL_ROOT_PASSWord=123456 -d mysql:5.7
docker run --name M1S1 -p 3308:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

6.修改配置文件

*** 一、将容器里面的配置文件复制出来,主要修改服务器的配置。  
# 1.在root目录下创建一个mysqlms的目录存放从docker容器里面复制过来的配置文件。

mkdir mysqlms
docker cp M1:/etc/mysql/conf.d/docker.cnf m1.cnf 
docker cp M1S1:/etc/mysql/conf.d/docker.cnf m1s1.cnf

# 2.配置主机:主机里面要记录sql 语句,以后从机会把该sql 语句偷过去
vi m1.cnf
server-id=1
log-bin=master.bin
# 3.配置从机:
vi  m1s1.cnf
server-id=2

*** 二、配置文件修改后,复制到容器里面
docker cp m1.cnf M1:/etc/mysql/conf.d/docker.cnf
docker cp m1s1.cnf M1S1:/etc/mysql/conf.d/docker.cnf

*** 三、重启
docker restart M1 M1S1

7.配置主机:执行sql

7.1 进入主机,执行配置
docker exec -it M1 bash
mysql -uroot -p123456

7.2 创建账户
create user "rep"@"%" identified by "123456";

7.3 给该用户授予权限:
grant replication slave on *.* to "rep"@"%";
flush privileges

7.4  至此:M1 里面已经创建了一个用户:rep 123456 拥有所以库,所有表replication slave  
尝试使用M1 里面的rep 用户登录:

8.配置从机:执行sql

8.1 配置登录
docker exec -it M1S1 bash;
mysql -u root -p123456;

8.2 从机执行
change master to master_host="127.0.0.1",master_port=3307,master_user="rep",master_password="123456",master_log_file="master.000001",master_log_pos=745;

注意:master_log_file:该文件具体叫什么名称,需要从主机里面去看看:
进入M1 里面使用root 用户登录M1,执行下面的sql:
show master status;

8.3 启动主从,查询状态 有两个yes
start slave;
show slave status G;

8.4 规范如下:
1 只能在主机里面执行DML 语句,绝对不能在【从机】里面执行DML语句【会破坏主从】
2 只在从机里面可以执行查询语句
3 主机只有一台,但是从机可以有多台

9.测试

在M1 里面创建数据库,看M1S1 有没有复制过去

您可能感兴趣的文档:

--结束END--

本文标题: Mysql主从复制搭建

本文链接: https://www.lsjlt.com/news/5220.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Mysql主从复制搭建
    1.mysql主库会把所有的写操作记录在binlog日志中,并且生成log dump线程,将binlog日志传给从库的I/O线程,从库生成两个线程,一个是I/O线程,另外一个是SQL线程。 主将更改操作记录到binlog里从将主的binlo...
    99+
    2020-09-28
    Mysql主从复制搭建
  • Docker搭建Mysql主从复制
    Docker搭建Mysql主从复制 前言 相信我,看完这一篇,mysql主从复制能遇到的错误在我这里都遇到了,docker能遇到的错误在我这里也遇到了,包括centos的错误,看吧,都是成长 do...
    99+
    2023-09-24
    docker mysql 容器 Linux
  • mysql搭建主从复制(一主一从,双主双从)
    主从复制原理 Mysql 中有一个binlog 二进制日志,这个日志会记录下所有修改了的SQL 语句,从服务器把主服务器上的binlog二进制日志在指定的位置开始复制主服务器所进行修改的语句到从服务器上执行一遍。 流程图 搭建一...
    99+
    2016-07-17
    mysql搭建主从复制(一主一从,双主双从)
  • Mysql主从复制搭建过程
    这篇文章主要讲解了“Mysql主从复制搭建过程”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Mysql主从复制搭建过程”吧! 一、相关概念mysql主从复...
    99+
    2022-10-18
    mysql
  • mysql主从复制环境搭建
    mysql 主从第一次我用不同版本mysql做会出不同步问题,建议用相同版本的mysql做主从主my.cnf文件 (192.168.1.64)mysqld模块加入log-bin=mysql-bin 启动二进...
    99+
    2022-10-18
    mysql 主从搭建
  • 如何搭建mysql主从复制
    搭建mysql主从复制的方法在主从服务器开启时间同步[root@storage  ~]# ntpdate 172.18.0.1主数据库配置使用记事本打开主数据库的my.cnf配置文件,在文件中的[my...
    99+
    2022-10-18
    mysql 主从复制
  • MySQL 主从复制原理及搭建
    一.主从复制的工作过程:二.MySQL复制类型基于SQL语句的复制基于行的复制混合复制三.实验环境  OS:CentOS 6.5 x64  master:192.168.0.134&nb...
    99+
    2022-10-18
    mysql 主从复制 单向同步
  • Mysql搭建主从复制的方法
    本篇内容主要讲解“Mysql搭建主从复制的方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Mysql搭建主从复制的方法”吧!主库:192.168.1.1 从库...
    99+
    2022-10-18
    mysql
  • MYSQL主从复制的搭建方式
    本篇内容主要讲解“MYSQL主从复制的搭建方式”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MYSQL主从复制的搭建方式”吧!前言:MYSQL的主从复制的原理跟...
    99+
    2022-10-18
    mysql
  • MySQL搭建主从复制详细步骤
    下面讲讲关于MySQL搭建主从复制详细步骤,文字的奥妙在于贴近主题相关。所以,闲话就不谈了,我们直接看下文吧,相信看完MySQL搭建主从复制详细步骤这篇文章你一定会有所受益。搭建MySQL主从复制需要提前准...
    99+
    2022-10-18
    数据库 mysql 主从复制
  • Linux下搭建MySQL的主从复制(一)
    一从一主模式的搭建1.主从复制原理 1. 从服务器使用IO Thread向主服务器发送请求   2. 主服务器接受到请求之后,将二进制日志文件通过...
    99+
    2022-10-18
    mysql 邻居 (一)
  • MySQL 5.7 基于GTID搭建主从复制
    MySQL 5.7 基于GTID搭建主从复制    一、搭建过程 1.1 准备三个MySQL实例 mysqld --initialize-insecure --use...
    99+
    2022-10-18
    gtid 主从 基于
  • MySQL5.7主从复制-GTID复制搭建
     两台服务器,系统是Redhat6.5,MySQL版本是5.7.18。 1、在主库上,创建复制使用的用户,并授予replication slave权限。这里创建用户repl,可以从IP为1...
    99+
    2022-10-18
    -gtid mysql5.7 主从
  • centos7 maiadb主从复制搭建
    需求:由于要使用saltstack,部署环境,先手动搭建了下主从环境,发现原来的word资料都找不到了,所以这次赶紧的记录到博客当中!!环境:两台设备,ip地址分别为:node1:192.168.56.11...
    99+
    2022-10-18
    主从 mariadb ce
  • 逻辑复制主从搭建
    创建复制用户: CREATE USER 'repl'@'192.168.6.%' IDENTIFIED BY '123'; GRANT REPLICATION SLAVE ON *.* TO 'repl'@...
    99+
    2022-10-18
    主从 搭建 逻辑
  • MongoDB 主从复制集搭建
    一、Mongodb复制集简介什么是复制集?复制集(Replica Sets)是额外的数据副本,是跨多个服务器同步数据的过程,复制集提供了冗余并增加了数据可用性,通过复制集可以对硬件故障和中断的服务进行恢复。...
    99+
    2022-10-18
    数据库 mongodb 主从复制
  • windows版的mysql主从复制环境搭建
    背景 最近在学习用Spring Aop来实现数据库读写分离的功能。 在编写代码之前,首先是要部署好mysql的环境,因为要实现读写分离,所以至少需要部署两个mysql实例,一主一从,并且主从实例之间能够自动同步,因为我的本机内存并不高,所以...
    99+
    2021-12-22
    windows版的mysql主从复制环境搭建
  • 怎样进行MYSQL主从复制的搭建
    今天就跟大家聊聊有关怎样进行MYSQL主从复制的搭建,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。前言:MYSQL的主从复制的原理跟MYSQL的主主复制的原理其实是一样的,但是从数据...
    99+
    2023-06-06
  • MySQL5.7主从复制-异步复制搭建
      两台服务器,系统是Redhat6.5,MySQL版本是5.7.18。 1、在主库上,创建复制使用的用户,并授予replication slave权限。这里创建用户repl,可以从IP...
    99+
    2022-10-18
    mysql5.7 主从 异步
  • docker创建MySQL镜像,搭建主从复制环境
    docker创建MySQL镜像,搭建主从复制环境 前言一、编写Dockerfile制作mysql镜像编写Dockerfile文件编写mysql_file文件:编写run.sh文件build M...
    99+
    2023-09-28
    centos linux docker
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作