`

centos7搭建mysql主从复制

阅读更多

环境描述

操作系统:CentOS7 主服务器master192.168.32.130 从服务器slave192.168.32.129

主从复制

前面我已经写了关于centos7上面配置mysql数据库的文章了,这里就直接跳过mysql安装。

1)主从复制原理



 

图片来源于网络

主从复制分为同步复制和异步复制,实际复制架构中大部分为异步复制。 复制的基本过程如下:1.Slave上面的IO进程连接上Master,并请求从指定日志文件的指定位置(或者从最开始的日志)之后的日志内容;   2.Master接收到来自SlaveIO进程的请求后,通过负责复制的IO进程根据请求信息读取制定日志指定位置之后的日志信息,返回给Slave IO进程。返回信息中除了日志所包含的信息之外,还包括本次返回的信息已经到Master端的bin-log文件的名称以及bin-log的位置;   3.SlaveIO进程接收到信息后,将接收到的日志内容依次添加到Slave端的relay-log文件的最末端,并将读取到的Master端的 bin-log的文件名和位置记录到master-info文件中,以便在下一次读取的时候能够清楚的告诉Master。    4.SlaveSql进程检测到relay-log中新增加了内容后,会马上解析relay-log的内容成为在Master端真实执行时候的那些可执行的内容,并在自身执行。

 

  1. 修改mysql master服务器

    master服务器上(我这里是192.168.32.130),切换到/etc/ 下找到my.cnf文件,对其进行修改,修改内容主要是在文件最上面添加如下内容:

    server-id=202   #设置服务器唯一的id,默认是1,我们设置ip最后一段,slave设置203

    log-bin=mysql-bin # 启用二进制日志

    binlog-ignore-db=mysql,information_schema  #忽略写入binlog的库



      

     

  2. 修改mysql slave服务器

    slaver服务器上(我这里是192.168.32.129),切换到/etc/ 下找到my.cnf文件,对其进行修改,修改内容主要是在文件最上面添加如下内容:

    server-id=203   #这个值只要与集群中的mysql服务器保持唯一就行,可以自定义

    replicate-do-db = jeff  #只同步jeff

    slave-skip-errors = all   #忽略因复制出现的所有错误



      

  3. 重启masterslaver服务器

     systemctl restart mysqld,其实这里你也可以先关闭systemctl stop mysqld然后再启动systemctl start mysqld

     

  4. 在主服务器上建立帐户并授权slave

    GRANT REPLICATION SLAVE ON *.* to 'mysqlsync'@'192.168.32.129' identified by 'chenfeng1234.Com';

     

  5. 查看主数据库状态

    登录master数据库,通过命令show master status;进行查看主数据库状态,主要看masterFilePosition对应的值,方便后面讲其配置到slave中。



      

     

  6. 配置从数据库

    登录slave数据库,通过命令

    change master to

    master_host='192.168.32.130',

    master_user='chenfeng',

    master_password='ChenFeng0814!',

    master_log_file='mysql-bin.000003',

    master_log_pos=1731;

    这里解释一下各命令的含义:

    master_host 表示master服务器的IP地址;

    master_user表示master服务器给定的远程登录用户名;

    master_password表示远程登录密码;

    master_log_file表示master服务状态中的File值;

    master_log_pos表示master服务状态中Position值。

     

  7. 启动slave同步进程并查看状态

    登录slave数据库,通过命令show slave status\G;当红圈内的两个状态都是yes就表明已经配置同步成功了,如下图所示:



      

     

  8. 验证主从同步

    此时所有主从同步配置已完成,现在我在master服务器上jeff数据库中插入一张表并导入部分数据来验证下slave服务器是否能够正常同步过来,可以看到此时数据库中并没有表的存在。



      

    master中执行添加表语句



      

    可以看到此时master上面表已经建成了



      

    再查看slave上面是否已经同步过去了,确实是已经同步过来了



      

     

  9. 常见错误



      

    如上图,查看slave状态是IO_RUNNING状态为no,这个可能是/var/lib/mysql/auto.cnf中的server-uuid主、从重复了,解决办法是将master上的auto.cnf文件删除,然后重启master服务器的mysql服务,将会生成一个新的auto.cnf文件,且server-uuid肯定和slave上面的值不等。



      

    如上图,查看slave状态是IO_RUNNING状态为connecting,这个错误可能由三个原因导致:1.远程用户、密码配置错误;2.read_master_log_posrelay_master_log_file配置错误;3.网络问题或者防火墙问题。

     

    参考博文地址:http://blog.jobbole.com/94595/

 

  • 大小: 74.1 KB
  • 大小: 20.6 KB
  • 大小: 11.8 KB
  • 大小: 10.2 KB
  • 大小: 47.3 KB
  • 大小: 4.1 KB
  • 大小: 22 KB
  • 大小: 6.7 KB
  • 大小: 6.7 KB
  • 大小: 46.3 KB
  • 大小: 47.5 KB
分享到:
评论

相关推荐

    centos7 搭建mysql主从.docx

    在CentOS7系统中搭建MySQL主从复制是一个常见的任务,特别是在需要高可用性和数据冗余的环境中。以下是一份详细的步骤指南,涵盖了从安装MySQL到配置主从复制的全过程。 首先,由于CentOS7的默认YUM源中不包含MySQL...

    CentOS服务器平台搭建mysql主从复制与读写分离的方法

    主要介绍了CentOS服务器平台搭建mysql主从复制与读写分离的方法,结合实例形式较为详细的分析了CentOS平台搭建mysql主从复制与读写分离的步骤、设置方法、相关操作技巧与注意事项,需要的朋友可以参考下

    Mysql主从复制原理(原理+实操).docx

    如果我们看到Master和Slave的状态都是正常的,那么我们就可以成功地搭建了Mysql主从复制了。 Mysql主从复制是一种非常有用的技术,它可以帮助我们提高数据库的性能和可用性。但是,它也需要我们对Mysql有深入的了解...

    在centos7上搭建mysql主从服务器的方法(图文教程)

    在CentOS7上搭建MySQL主从服务器是数据库高可用性和负载均衡的一种常见实践,它能够保证数据的一致性,并在主服务器出现故障时无缝切换到从服务器,确保服务的连续性。以下将详细介绍如何在CentOS7环境下搭建MySQL...

    MySQL主从复制.pdf

    MySQL主从复制技术是一种数据库复制技术,它可以在多个服务器之间复制数据,使得数据在不同位置保持一致。这种技术广泛应用于数据库的高可用性、负载均衡、数据备份、读写分离等场景。 知识点一:MySQL版本和操作...

    CentOS7下MySQL8的主主互备安装文档和my.cnf配置文件

    在IT领域,数据库管理是至关重要的,特别是在企业级应用中。本教程将深入探讨如何在...通过这个教程,你可以掌握在CentOS7系统上搭建高可用MySQL主主互备环境的全过程,提升数据库管理能力,确保业务系统的稳定运行。

    Mysql主从复制+读写分离1

    1. 搭建并测试一主两从的主从复制环境 * 在 master 节点上安装 Mysql,并创建从服务器的账户 * 在 slave 节点上安装 Mysql,并配置从服务器的账户 2. 安装 am 节点的 amoeba 代理程序 * 在 am 节点上安装 JDK 和...

    mysql数据库主从复制的搭建.md

    使用与Linux版本centos7以及7以上版本,就是傻瓜试安装,每一条命令都有详细解释和说明,关键技术,数据挂载目录,主从复制模式的三种模式,binlog的三种格式的解释说明

    MySQL主从复制的研究与应用.pdf

    在实际应用中,MySQL主从复制的搭建需要以下几个步骤: 1. **环境准备**:通常选择最新稳定版本的MySQL,如5.7.18,并在Linux(如CentOS)环境下安装。关闭防火墙、SELinux,确保系统时间同步。 2. **安装数据库**...

    centos7 mariadb主从复制配置搭建详解步骤

    花了小一天的时间,终于实现了centos7 mariadb主从复制配置搭建,下面记录一下过程 环境: 虚拟机:vm8; centos7 版本:7.2.1511; mariadb 版本:centos7.2内置的 主库服务器: 10.69.5.200,CentOS 7,MariaDB 10已...

    lepus(天兔)监控MySQL主从复制延迟,慢查询

    通过以上内容可知,Lepus监控系统是针对MySQL主从复制延迟和慢查询问题的专业监控工具,主要运行在Centos/RedHat平台上,需要一定的PHP和Python环境支持,以及MySQL、Apache、PHP和Python驱动模块的配合。搭建监控...

    mysql主从互备实战

    本文将详细介绍如何搭建MySQL主从互备系统,并通过具体的步骤指导完成快速数据迁移。 #### 二、准备工作 ##### 1. 环境准备 - **主机**:IP地址为192.168.1.203,端口号3306 - **从机**:IP地址为192.168.1.204,...

    centos7上mysql5.6 安装配置(包含主从配置和双击热备)

    文档包含mysql下载链接,包含mysql安装配置,初学者可立即入门安装,包含主从配置和双击互呗配置,全手动安装过程分享

    Mycat+MySQL主从复制读写分离验证安装手册

    ### Mycat+MySQL主从复制读写分离验证安装手册知识点详解 #### 1. 实验环境及准备 在实现Mycat与MySQL的主从复制读写分离之前,需要搭建好实验环境。根据文档中的信息,实验环境由两台机器组成,分别用于充当MySQL...

    Mysql 5.6.26 主从搭建完整版.pdf

    文章内容涉及环境配置、MySQL安装、配置文件修改、主从同步设置等多个方面,为读者提供一个完整搭建MySQL主从架构的过程。 首先,我们来了解环境配置部分。文章明确指出,所使用的操作系统版本为CentOS 7.6,MySQL...

    mysql主从同步搭建修改优化版.pdf

    以下是对搭建、修改和优化MySQL主从同步过程的详细解释: 1. **环境配置**: 主服务器(Master)和从服务器(Slave)通常运行在不同的硬件或虚拟机上,以实现物理隔离和负载分散。在这个例子中,两者都是CentOS ...

    MySQL主从配置完整步骤资料

    本文详细介绍了MySQL主从配置的具体步骤和命令,包括如何在主服务器上创建复制用户、编辑配置文件、设置读锁、获取binlog信息;以及在从服务器上编辑配置文件、配置复制参数、启动复制进程和检查复制状态的方法。...

Global site tag (gtag.js) - Google Analytics