`
fionajw
  • 浏览: 22957 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

Mysql主从同步配置

阅读更多

l   一、        主从配置的原理:
Mysql
Replication 是一个异步的复制过程,从一个 Mysql instace(我们称之为 Master)复制到另一个
Mysql instance(
我们称之 Slave)。在 Master Slave
之间的实现整个复制过程主要由三个线程来完成,其中两个线程(Sql线程和IO线程) Slave 端,另外一个线程(IO线程) Master
端。
  要实现 MySQL Replication ,首先必须打开 Master 端的Binary
Log(mysql-bin.xxxxxx)
功能,否则无法实现。因为整个复制过程实际上就是SlaveMaster端获取该日志然后再在自己身上完全
顺序的执行日志中所记录的各种操作。打开 MySQL Binary Log 可以通过在启动 MySQL Server 的过程中使用
“—log-bin”
参数选项,或者在 my.cnf 配置文件中的 mysqld 参数组([mysqld]标识后的参数部分)增加
“log-bin”
参数项。
  MySQL 复制的基本过程如下:
  1. Slave 上面的IO线程连接上 Master,并请求从指定日志文件的指定位置(或者从最开始的日志)之后的日志内容;
 
   2. Master 接收到来自 Slave IO 线程的请求后,通过负责复制的 IO
线程根据请求信息读取指定日志指定位置之后的日志信息,返回给 Slave 端的 IO
线程。返回信息中除了日志所包含的信息之外,还包括本次返回的信息在 Master 端的 Binary Log 文件的名称以及在 Binary
Log
中的位置;
  3. Slave IO 线程接收到信息后,将接收到的日志内容依次写入到 Slave 端的Relay
Log
文件(mysql-relay-bin.xxxxxx)的最末端,并将读取到的Master端的bin-log的文件名和位置记录到master-
info
文件中,以便在下一次读取的时候能够清楚的高速Master“我需要从某个bin-log的哪个位置开始往后的日志内容,请发给我
 
  
 4. Slave SQL 线程检测到 Relay Log 中新增加了内容后,会马上解析该 Log 文件中的内容成为在 Master
端真实执行时候的那些可执行的 Query 语句,并在自身执行这些 Query。这样,实际上就是在 Master 端和 Slave
端执行了同样的 Query,所以两端的数据是完全一样的。

l   二、        设置mysql主从配置的优点:
1
        解决web应用系统,数据库出现的性能瓶颈,采用数据库集群的方式来实现查询负载;一个系统中数据库的查询操作比更新操作要多得多,通过多台查询服务器将数据库的查询分担到不同的查询服务器上从而提高查询效率。
2
        Mysql数据库支持数据库的主从复制功能,使用主数据库进行数据的插入、删除与更新操作,而从数据库则专门用来进行数据查询操作,这样可以将更新操作和查询操作分担到不同的数据库上,从而提高了查询效率。

l   三、        主从数据库服务器的配置
1
        主数据库服务器的配置
1)、修改mysql的配置文件(/etc/my.cnf)在配置文件中设置:
server-id       = 1   ###
每一个数据库服务器都要制定一个唯一的server-id,通常主服务器制定为1
log-bin=mysql-bin     ###mysql
进行主从复制是通过二进制的日志文件来进行的,所以必须开启mysql的日志功能
(这个是/etc/my.cnf的默认配置,保持不变即可)
2)、GRANT REPLICATION SLAVE ON *.* TO ' replication'@'172.28.3.41' IDENTIFIED BY 'koncept';        #####给主数据库服务器授予一个可以进行复制的用户,172.28.3.41为从服务器的IP,这样从服务器就能有钱先来访问主数据库服务器
2
、从数据库服务器的设置
修改数据库配置文件/etc/my.cnf,配置如下内容:
   #server-id      = 1  ####
必须把server-id      = 1注释掉,
   server-id       = 2  ####
设置从的ID
   master-host     =  172.28.3.43  #####
设置主服务器的IP
   master-user     =   replication  #####
设置连接主服务器的用户名
   master-password =   concept     #####
设置连接主服务器的密码
   replicate-do-db=imtest0  ######
设置你要同步的数据库,可以设置多个   
####
就是我们前面建的用户名和密码,另外如果有端口号的变化还要配置端口
master-port     =  <port>
配置成你设置的端口就OK了!
3
、分别重新启动主从服务器 #### 如果不重新启动主服务器在后面查看status的时候会出现问题!
4
在从服务器上登录mysql,输入:show slave status\G  如果发现有:
  Slave_IO_Running: Yes
Slave_SQL_Running: Yes
  
就说明已经成功了,如果这两个选项不全是Yes,那就说明你钱面的某个配置错了,
  
我做的时候没有把主服务器重启,就出现  Slave_IO_Running: NO。重启后好了!

l   四、        监控服务器的状态
1
        监控主服务器的状态
可通过show master status来监控主服务器的状态,内容如下:
+------------------+----------+--------------+------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000003 |     1164 |              |                  |
+------------------+----------+--------------+------------------+
#####
其中File表示日志文件记录,Position表示日志文件的位置,这个也是数据库执行复制操作的必须标识,后面两字段表示复制的数据库名和不复制的数据库名,也可以在配置文件中你进行配置。
2
        监控从服务器的状态
可以通过:show slave status\G来查看,另外如果从数据库在复制的过程中出现问题,可以通过命令reset slave从数据库服务器复制的线程,从数据库服务器的通常操作命令有:
start slave
  ####启动复制线程
stop slave
  ####停止复制线程
reset slave
  ####重置复制线程
change master to
###动态改变到主服务器的配置

分享到:
评论

相关推荐

    MySQL主从同步配置过程.docx

    MySQL 主从同步配置过程 一、 MySQL 主从同步配置概述 MySQL 主从同步配置是指将 MySQL 数据库的数据从一台服务器(主服务器)同步到另一台服务器(从服务器)的过程。这种配置可以实现数据的高可用性和灾难恢复,...

    Linux-Mysql主从同步配置

    Linux-Mysql 主从同步配置 本文将详细解释 Linux-Mysql 主从同步配置的步骤和知识点。 一、主服务器配置 1. 编辑数据库配置文件 my.cnf, 一般在/etc/目录下。 2. 在[mysqld]下面加入以下代码: * log-bin=mysql...

    Linux配置mysql主从同步

    ### Linux下MySQL主从同步配置详解 #### 一、引言 在数据库管理领域,MySQL主从同步是一种常见的数据复制技术,它可以帮助我们构建高可用性和数据冗余性,从而提高系统的稳定性和可靠性。本文将详细介绍如何在Linux...

    12.1: MySQL主从同步 、 主从同步模式 、 总结和答疑.docx

    MySQL主从同步配置和实现 MySQL主从同步是指将一个MySQL服务器的数据实时地复制到另一个或多个服务器上,以实现数据的高可用性和灾难恢复。这种方式可以实现数据的热备援、读写分离、负载均衡等功能。 1. 案例 1:...

    mysql主从同步配置

    从其他地方复制的,不是用来赚分的,存粹是自己备份在网上,请下载的人自己看清楚

    MySQL主从同步配置图文详解(案例).pdf

    总之,MySQL主从同步配置涉及多个步骤,包括服务器安装、权限配置、数据库创建、配置文件修改和数据传输。这种配置能够提高系统的可用性和性能,尤其是在高并发场景下,通过读写分离,可以将读操作分散到从服务器,...

    win系统下的mysql主从同步配置

    在Windows操作系统下配置MySQL主从同步涉及多个步骤,以下将详细解读配置的原理、步骤、优缺点等内容。 MySQL主从同步原理: MySQL主从同步的核心在于主库(Master)记录更改操作的二进制日志(binlog),从库...

    mysql主从同步配置.docx

    配置 MySQL 主从同步主要包括以下几个步骤: 1. **开启 Binary Log**: - Master 端需要启用二进制日志(Binary Log),因为它记录了所有改变数据库状态的事务。可以通过在 MySQL 启动时使用 `--log-bin` 参数,...

    MySQL主从同步和主主同步详细过程

    超详细MySQL主从配置和主主同步总结。。。。。。。。。

    mysql主从同步解决方案及优化

    淘宝资深工程师丁奇在2009年的分享中详细介绍了MySQL主从同步的原理、配置、优化以及在实际应用中遇到的问题和解决方案。 首先,MySQL主从同步的基本概念指的是在一个数据库实例(主库)上对数据进行修改操作后,...

    mysql主从同步及canal配置详解.docx

    主从同步配置 在 Master 节点上,我们需要配置 binlog 机制,并指定需要同步的数据库和表。在 Slave 节点上,我们需要配置 Slave 的连接信息,并启动 Slave 服务。 ``` CHANGE MASTER TO MASTER_HOST='58.214.17....

    dble配置mysql主从同步

    dble配置mysql主从同步

    mysql主从库配置

    ### MySQL 主从库配置详解 #### 一、MySQL 安装与环境变量设置 在进行 MySQL 主从库配置之前,我们需要确保已经正确安装了 MySQL,并设置了相应的环境变量。以下是具体的步骤: 1. **下载 MySQL 免安装版**: - ...

    windows下mysql主从同步备份步骤

    在Windows环境下,MySQL主从同步备份是一种常见的高可用性和数据冗余策略,确保数据的安全性和一致性。以下是详细步骤,适用于MySQL 5.0版本: 1. **创建备份账户**: 在主服务器A上,我们需要创建一个用于复制的...

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

    MySQL主从同步是一种常见的数据库高可用性和数据冗余策略,它...总之,MySQL主从同步涉及到多个步骤,包括环境配置、权限设置、数据同步和监控优化。正确配置和维护主从同步能够确保数据库系统的稳定性和数据安全性。

    《深入理解MySQL主从原理32讲》推荐篇

    希望能帮助读者朋友们解决关于主从同步中的一些疑问。八怪写作风格很是严谨,几乎每篇都是从源码入手去剖析MySQL主从复制相关的知识点。 强烈推荐大家订阅本专栏 业界大咖推荐序 从2016年开始八怪(本名高鹏)经常...

    Mysql主从半同步配置

    MySQL主从半同步复制是介于异步复制和全同步复制之间的一种模式,它提供了更好的数据安全性和一致性,同时也尽可能地减少了性能损失。 首先,我们来了解一下什么是MySQL半同步复制。在半同步复制模式下,主服务器在...

Global site tag (gtag.js) - Google Analytics