`
chaijuntao
  • 浏览: 24786 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Mysql双主从同步部署(一)

 
阅读更多

最近因为一次偶然的数据库磁盘坏道故障,所以决定进行mysql同步的HA方案升级,趁着这个机会又重新审视了一把mysql replication的过程。

 

整个方案是基于四个mysql实例,实现两两主从,同时两台master之间进行主主同步,此方案的优势是任何一台master或者slave故障时,都可以切换到另一台master或slave进行服务,当任一台故障实例恢复后,都可以自动恢复和同步数据,整个故障和修复过程的数据同步问题,无需进行人工干预。简单的拓扑关系如下:

 

首先,准备四台虚拟机,安装上版本相同的mysql,保证slave版本大于等于master,为确保兼容性问题,最好是版本相同(至少保证版本号的前两位相同)

资源清单:

Master A : 192.168.4.85  , server_id  1

Slave A : 192.168.4.86  , server_id  2

Master B : 192.168.4.87  , server_id  3

Slave B : 192.168.4.88  , server_id  4

 

Mysql版本号:5.5.43

 

同步库名:test1

 

OK,从拓扑图中可以看出,我们的方案要做的其实是两件事,两个主从同步和一个主主同步。

先来看下主从同步的配置:

主库配置:

 1、修改Master A的配置文件my.conf:

server-id               = 1
log_bin                 = /var/log/mysql/mysql-bin.log
expire_logs_days        = 10
max_binlog_size         = 100M
binlog_do_db            = test1

 2、添加具有同步权限的账户

GRANT REPLICATION SLAVE ON *.* TO 'user'@'%' IDENTIFIED BY 'password';

3、重启mysql:

service mysql restart

4、显示master日志位置:

mysql >> show master status;

+------------------+-----------+--------------+------------------+
| File             | Position  | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+-----------+--------------+------------------+
| mysql-bin.000003 | 107 |              |                  |
+------------------+-----------+--------------+------------------+

 

从库配置

1、修改Slave A的配置文件my.conf:

server-id               = 2
expire_logs_days        = 10
max_binlog_size         = 100M
replicate_do_db         = test1

 2、重启mysql:

service mysql restart

3、设置主服务器信息

(如果主库有存量数据需要同步,则需要先进行dump操作后再进行从库的同步,此处不做详细介绍)
change master to master_host='192.169.4.85',                              
                 master_user='user',                                    
                 master_password=password,
master_log_file='mysql-bin.000003',                         
                             master_log_pos=107;

4、启动同步

mysql >>slave start;

5、显示slave状态,出现以下信息表示同步开启成功,主要看

Slave_IO_Running: Yes
Slave_SQL_Running: Yes

 

 

Mysql >> show slave status \G;
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 1.1.1.1
Master_User: repl
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000003
Read_Master_Log_Pos: 107
Relay_Log_File: relay-relay-bin.000012
Relay_Log_Pos: 1148354
Relay_Master_Log_File: mysql-bin.000003
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table: gslb.server_threshold,gslb.server,gslb.threshold,gslb.vip,gslb.status,gslb.vip_threshold
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 270500590
Relay_Log_Space: 1148510
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno: 0
Last_IO_Error:
Last_SQL_Errno: 0
Last_SQL_Error:
Replicate_Ignore_Server_Ids:
Master_Server_Id: 10201
1 row in set (0.00 sec)

接下去,在master的test1库中进行建表、插数据等操作后,到slave中能看到同步后的操作结果。

 

 Master B -- Slave B 的主从同步配置同上,至此两个主从同步均已部署完成,接下去,我们就要进行Master A -- Master B的主主同步配置工作,见下节

 

  • 大小: 31.2 KB
分享到:
评论

相关推荐

    MySQL主从安装部署

    #### 一、MySQL主从安装部署概述 MySQL 主从复制是一种常见的数据备份和负载均衡技术,在多个服务器之间同步数据。通过设置一个或多个从服务器来复制主服务器上的数据变更操作,从而实现数据冗余和故障转移。主从...

    MySQL数据库主从同步服务器部署

    MySQL数据库主从同步服务器部署是指将一个 MySQL 数据库分成主服务器和从服务器,以提高数据库的可用性和性能。本文档将详细介绍 MySQL 数据库主从同步服务器的部署过程,包括配置主服务器和从服务器的配置文件、...

    Linux配置mysql主从同步

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

    Mysql主从半同步配置

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

    MySQL主从复制部署实施文档

    ### MySQL主从复制部署实施知识点 #### 一、MySQL主从复制概述 MySQL主从复制是一种数据复制技术,它能够实现在多个服务器之间复制数据。通常包括一个主服务器(Master)和一个或多个从服务器(Slave)。在主从复制...

    MYSQL数据库主从复制高可用技术改造环境部署方案

    通过以上步骤,我们可以成功地部署一个基于MySQL的高可用性环境,确保即使在单个节点发生故障的情况下,系统也能快速恢复并继续提供服务。这种架构对于关键业务而言非常重要,因为它能够显著提高系统的稳定性和可靠...

    Debian系统下MySQL主从同步复制

    在Debian系统中实现MySQL主从同步复制是一种常见的数据库高可用性和负载均衡策略。这种技术可以确保数据的安全性并提高系统的整体性能。接下来,我们将详细介绍如何在Debian环境下配置MySQL的主从同步复制。 #### 1...

    详解Mysql主从同步配置实战.doc

    Mysql主从同步是一种常见的数据备份与读写分离的解决方案,通过在主服务器(Master)和从服务器(Slave)之间复制数据,实现数据的实时备份和负载均衡。其原理主要依赖于二进制日志(Binary Log),这是一种记录了...

    Windows环境下,安装MySQL多实例,并实现Mysql的主从同步

    在企业级应用中,为了提高数据库系统的稳定性和可用性,经常需要部署MySQL的主从同步架构。本文档将详细介绍如何在Windows环境下安装MySQL多实例,并实现主从同步的具体步骤及注意事项。 #### 一、环境准备 在开始...

    MYSQL5.5主从数据同步

    MySQL主从同步是指在一个或多个MySQL实例之间进行数据复制的过程。其中一个MySQL实例为主服务器(Master),负责接收客户端请求并写入数据;其他MySQL实例为从服务器(Slave),它们通过复制主服务器的数据变化来...

    Mysql主从同步备份

    #### 一、MySQL主从同步的作用与原理 ##### 作用 MySQL主从同步机制主要用于实现以下几种应用场景: 1. **数据分布**:通过将数据复制到多个从服务器,可以在不同地理位置分发数据,提高数据访问速度。 2. **负载...

    Mysql主从部署.docx

    MySQL主从部署是数据库管理中的常见操作,用于实现数据的实时备份和高可用性。以下是一份基于MySQL 5.7.22的详细部署步骤: 1. **环境检查与准备**: 在开始之前,确保系统中没有旧版本的MySQL。通过`rpm -qa | ...

    MySQL 主从同步 、 MySQL 读写分离 、 MySQL 性能调优 、 总结和答疑

    MySQL 主从同步、读写分离、性能调优 在本文中,我们将讨论 MySQL 主从同步、读写分离和性能调优的相关知识点。 MySQL 主从同步 MySQL 主从同步是指将一个 MySQL 服务器的数据复制到另一个 MySQL 服务器上,以便...

    Mysql+Mycat实现数据库主从同步与读写分离.docx

    在实际部署中,MySQL 主从同步的配置需结合具体的业务需求和技术环境进行,例如设置适当的 Binlog 格式、位置和同步方式(异步或半同步)。而Mycat 的配置则涉及更多的细节,如分片策略、路由规则、负载均衡算法等,...

    部署mysql主从同步结构操作指引文档.rar

    部署mysql主从同步结构操作指引及工具软件 1、数据库安装包:mysql-5.7.32-winx64.zip 2、数据库客户端:SQLyog 8.14.rar 3、说明文档:部署mysql主从同步结构操作指引文档.doc

    MySql主从、双主同步文档

    ### MySQL主从、双主同步详解 #### 一、MySQL同步概述 MySQL的主从、双主同步机制是实现数据库高可用性和数据冗余的重要手段之一。通过将一个服务器的数据实时复制到另一个或多个服务器上,可以有效提高系统的稳定...

    MySQL主从同步与读写分离配置图文详解

    ### MySQL主从同步与读写分离配置详解 #### 一、实验目的 在现代的生产环境中,单一的MySQL服务器往往无法满足对数据处理的安全性、高可用性和高并发的需求。因此,采用**主从同步(Master-Slave Replication)**...

    在linux环境下配置Mysql主从同步

    #### 一、MySQL主从同步概述 MySQL的主从复制(Replication)是一种异步复制机制,允许数据从一个MySQL实例(称为Master)复制到另一个或多个MySQL实例(称为Slave)。此过程主要用于提高数据库的可用性和负载均衡...

    amoeba集群文档+Amoeba使用指南pdf+mysql主从同步

    标题中的“amoeba集群文档+Amoeba使用指南pdf+mysql主从同步”是指一系列关于Amoeba中间件和MySQL数据库集群的知识资源,包括Amoeba的集群部署、使用方法以及MySQL的主从同步策略。这些文档将帮助读者理解如何构建高...

    MySQL主从同步原理+部署.docx

    MySQL主从同步是一种常见的数据库高可用性和负载均衡解决方案,它允许数据从主数据库实时复制到一个或多个从数据库。这种架构对于确保数据备份、实现读写分离以及提高系统整体性能至关重要。 1. **主从作用**: - ...

Global site tag (gtag.js) - Google Analytics