首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

mysql主从复制过滤

基础概念

MySQL主从复制是一种用于提高数据库性能和可靠性的技术。它允许数据从一个主数据库(Master)复制到一个或多个从数据库(Slave)。主从复制的主要目的是实现读写分离,减轻主数据库的压力。

过滤

在MySQL主从复制中,过滤是指在从数据库上只复制特定的表或特定的数据库,而不是复制所有的数据。这可以通过配置主服务器和从服务器来实现。

类型

  1. 基于数据库的过滤:只复制特定的数据库。
  2. 基于表的过滤:只复制特定的表。

应用场景

  1. 读写分离:主数据库处理写操作,从数据库处理读操作,提高整体性能。
  2. 数据备份:从数据库可以作为备份,防止主数据库数据丢失。
  3. 特定数据的复制:只复制需要的数据,减少网络带宽和存储空间的消耗。

优势

  1. 提高性能:通过读写分离,减轻主数据库的压力。
  2. 数据冗余:从数据库可以作为备份,防止数据丢失。
  3. 灵活性:可以根据需要选择复制特定的表或数据库。

遇到的问题及解决方法

问题:为什么从数据库没有同步主数据库的数据?

原因

  1. 网络问题:主从数据库之间的网络连接不稳定或中断。
  2. 配置错误:主从复制的配置不正确,导致数据无法同步。
  3. 过滤配置错误:过滤配置不正确,导致某些数据没有被复制。

解决方法

  1. 检查网络连接:确保主从数据库之间的网络连接正常。
  2. 检查配置文件:确保主从复制的配置文件(如my.cnf)正确配置。
  3. 检查过滤配置:确保过滤配置正确,例如:
  4. 检查过滤配置:确保过滤配置正确,例如:

问题:为什么某些表没有被复制?

原因

  1. 过滤配置错误:过滤配置不正确,导致某些表没有被复制。
  2. 权限问题:从数据库没有足够的权限访问某些表。

解决方法

  1. 检查过滤配置:确保过滤配置正确,例如:
  2. 检查过滤配置:确保过滤配置正确,例如:
  3. 检查权限:确保从数据库有足够的权限访问这些表,例如:
  4. 检查权限:确保从数据库有足够的权限访问这些表,例如:

示例代码

假设我们有一个主数据库master_db和一个从数据库slave_db,我们只想复制master_db中的table1table2

主数据库配置

代码语言:txt
复制
-- 在主数据库的my.cnf中添加
[mysqld]
server-id = 1
log_bin = /var/log/mysql/mysql-bin.log
binlog_do_db = master_db

从数据库配置

代码语言:txt
复制
-- 在从数据库的my.cnf中添加
[mysqld]
server-id = 2
relay_log = /var/log/mysql/mysql-relay-bin.log
log_bin = /var/log/mysql/mysql-bin.log
binlog_do_db = master_db

过滤配置

代码语言:txt
复制
-- 在主数据库上执行
CHANGE REPLICATION FILTER REPLICATE_DO_TABLE = (master_db.table1, master_db.table2);

参考链接

通过以上配置和检查,可以确保MySQL主从复制中的过滤功能正常工作,只复制需要的数据,提高系统性能和可靠性。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

技术分享 | MySQL 主从复制过滤新增库表过滤方案

1技术背景 如图所示,需要将原有的主从复制过滤的配置再新增几个库做同步,需要考虑一个效率最高的方式。 主从复制过滤 这里效率主要表示时间、空间成本,如何用更少的时间和空间完成配置变化。...2技术方案 方案1:一并备份需要复制过滤的所有库 优点:操作简单,这个方案和常规的备份恢复没有区别,注意备份时只对指定库做备份即可。...从库-新增配置 DB4、DB5 的复制过滤策略 ## 动态配置复制过滤策略 MySQL> CHANGE REPLICATION FILTER REPLICATE_WILD_DO_TABLE = ('db1...表级别复制过滤 文档中只是演示了库级的复制过滤添加,表级别的操作方式基本相同,只是针对不同库下不同表,不能同时备份(mysqldump 不支持)。...本文关键字:#MySQL# #主从复制# #备份恢复# ##

11110

mysql主从复制周期_Mysql主从复制

Mysql主从复制 背景: Mysql可以实现主从复制,在学习了Mysql主从复制后,将一些如何主从复制过程记录下来,供以后复习使用。...准备: 在做Mysql的主从复制前需要做一些准备工作: 1、同步时间 做主从的服务器的时间需要同步,不然会出问题。...主从复制: 步骤1、安装Mysql服务 yum install mysql-server mysql 如果是Centos7版本:yum install mariadb-server mariadb (7...的所有者和所属组为mysql;命令:chown mysql.mysql /app/bin_log 2)启动服务并添加主从复制需要的帐号 CentOS6:service mysqld start CentOS7...步骤4、测试 1)在主数据库服务器创建一个数据库 2)在从mysql从服务器查看是否生成创建的数据库 到此mysql的主从复制已完成。

4.2K10
  • MySQL主从复制

    主从是MySQL最基本的数据冗余与高可用方案,本文重点介绍一下如何搭建,以及如何只同步部分库或表 搭建主从复制 配置Master 配置my.cnf 修改mysql配置文件,不同的系统my.cnf路径不同...(CentOS中位于/etc/my.cnf) [mysqld] ## 设置server_id,一般设置为IP,注意要唯一 server_id=100 ## 复制过滤:也就是指定哪个数据库不用同步(mysql...ON *.* TO 'slave'@'%'; 配置Slave 配置my.cnf [mysqld] ## 设置server_id,一般设置为IP,注意要唯一 server_id=101 ## 复制过滤...表明开启成功 其他命令 stop slave; #关闭主从 reset slave all; #完全取消主从 同步部分库和部分表 在Master的my.cnf库中指定哪些库会发送到Slave ## 复制过滤...可以,不过从库也需要开启二进制日志,如 ## 开启二进制日志功能,以备Slave作为其它Slave的Master时使用 log-bin=mysql-slave1-bin 参考 MySQL 主从复制搭建

    1.7K21

    MySql主从复制

    主从集群 在MySql的生产环境中,由于单台MySql不能满足高可用性需求,一般通过主从复制(Master-Slave)方式同步数据,再通过读写分离(MySql-Proxy)来提升数据库并发负载能力。...,以便下一次备份从备份点开始 MySql主从复制需要三个线程: master的binlog dump thread slave的IO thread slave的Sql thread binlog dump...DRC中间件 很多DRC中间件,也就是跨数据中心或跨机房数据同步服务,多采用主从复制方式实现的。...,过滤,存储数据增量变化,同时内存中缓冲部分数据 DRC Client链接到DRC Server端,进行数据增量消费 ?...主从延迟 通过主从复制原理,我们知道了Master和Slave之间一定时间内会存在数据不一致情况,也就是主从延迟。

    2.2K30

    Mysql主从复制

    一、mysql主从同步原理 Mysql主从复制也可以称为Mysql主从同步,它是构建数据库高可用集群架构的基础。...Mysql支持单向,双向,链式级联,异步复制,复制过程中一台服务器充当主库(master),而一个或者多个服务器充当从库(slave) 1.1、主从复制功能 主从复制原理:master服务器上工作线程I...1.2、复制中的参数详解 log-bin:搭建主从复制,必须开启二进制日志 server-id:mysql在同一组主从结构中的唯一标识 sever-uuid:存放在数据目录中的auto.cnf中 read....000004', MASTER_LOG_POS=3034; # 开启主从 start salve # 查看主从复制状态 show slave status\G 三、mysql主从复制 (gtid)...var/lib/mysql/mysql.sock —error-numbers=1062 --user=root --password='bc.123456'

    1.3K20

    Mysql主从复制

    什么是Mysql主从复制 主从复制是指一台服务器充当主数据库服务器,另一台或多台服务器充当从数据库服务器,主服务器中的数据自动复制到从服务器之中。对于多级复制,数据库服务器即可充当主机,也可充当从机。...MySQL主从复制的基础是主服务器对数据库修改记录二进制日志,从服务器通过主服务器的二进制日志自动执行更新。...Mysq主从复制的类型 基于语句的复制: 主服务器上面执行的语句在从服务器上面再执行一遍,在MySQL-3.23版本以后支持。...在MySQL主从复制架构中,读操作可以在所有的服务器上面进行,而写操作只能在主服务器上面进行。...主从复制架构虽然给读操作提供了扩展,可如果写操作也比较多的话(多台从服务器还要从主服务器上面同步数据),单主模型的复制中主服务器势必会成为性能瓶颈。 Mysql主从复制的工作原理 ?

    1.3K41

    mysql主从复制

    mysql主从复制 MySQL主从复制是一种常见的数据库架构,用于实现数据的备份、负载均衡和故障恢复等功能。...主从复制概述 主从复制是指将一个MySQL数据库服务器(主服务器)的数据复制到另一个MySQL数据库服务器(从服务器)的过程。...主从复制原理 MySQL主从复制的原理基于二进制日志(Binary Log)和复制线程(Replication Thread)。...示例代码:MySQL主从复制的配置 下面是一个简单的MySQL主从复制配置示例: -- 在主服务器上设置二进制日志 # 主服务器配置文件 my.cnf [mysqld] log-bin=mysql-bin...示例代码:MySQL主从复制的应用 假设我们有一个电子商务网站,我们可以使用MySQL主从复制来实现负载均衡和灾难恢复。

    11510

    MySQL主从复制

    我们就以互联网最常用的MySQL数据库为例,一起探索SQL的奥秘。本文主要讲解MySQL主从复制原理和搭建过程。...MySQL主备的应用场景 1.sql语句需要锁表,导致暂时不能使用读服务,使用主从复制,让主库负责写,从库负责读,通过读从库保证业务的正常运作。...MySQL主从复制原理 binlog: binary log,主库中保存所有更新事件日志的二进制文件。 主从复制的基础是主库记录数据库的所有变更记录到binlog。...mysql主从复制是一个异步的复制过程,主库发送更新事件到从库,从库读取更新记录,并执行更新记录,使得从库的内容与主库保持一致。 每一个主从复制都有三个线程。...构建主从复制 1.在Master(192.168.0.207) 主MySQL上创建一个mysnc用户 用户名:mysync 密码:mysync [root@cdh2 ~]# systemctl restart

    1.5K43

    Mysql主从复制

    主从复制要求 MySQL 主从复制对主机和 MySQL 的要求 (1)主从服务器操作系统版本和位数必须一致; (2)主节点(Master)和从节点(Slave)数据库版本必须一致; (3)主节点(Master...增加以下配置项: [mysqld] server-id = 102 ## server-id,设置为 IP 地址的最后一段 binlog-do-db = zdb ## 复制过滤...:需要备份的数据库,输出 binlog binlog-ignore-db = mysql ## 复制过滤:不需要备份的数据库,不输出(mysql 库一般不同步) log-bin = mysql01-bin...## MySQL 默认采用基于语句的复制,效率比较高。一旦发现没法精确复制时,会自动选择基于行的复制。...如果遇到同步出错,可在 Slave 上重置主从复制设置,步骤如下: 重置主从复制设置 stop slave; reset slave; 重新设置主从复制参数 change master to master_host

    1.2K50

    MySQL主从复制

    MySQL主从复制 MySQL有四种同步方式: 异步复制(Async Replication) 同步复制(sync Replication) 半同步复制(Async Replication) 增强半同步复制...MySQL复制默认是异步复制,异步复制提供了最佳性能。...MySQL 5.5版本之后引入了半同步复制功能,主从服务器必须安装半同步复制插件,才能开启该复制功能。...MySQL增强半同步原理 如上图,增强半同步事务提交需要等待从库ACK消息,但未开启增强半同步时从库接收到binlog后不会向主库返回ACK信息,只有开启后才会在接收到binlog后向主库返回ACK信息...解决方案: 日后开启增强半同步需注意顺序,先开启从库后开启主库 参考资料 https://dev.mysql.com/doc/refman/5.7/en/faqs-replication.html https

    23530

    MySQL 主从复制

    MySQL 主从复制 环境准备: win10 MySQL 5.5 (主机) Linux CentOS7 MySQL 5.7 (从机) ==主从复制原理图:== 20201224155619.png MySQL...一主一从常见配置 在开始之前需要注意一下几点: MySQL 版本一致且后台正常服务运行(博客开头以提及) 主从配置在[mysql]结点下,都是小写 主机修改 my.ini 配置文件(win10) ​ my.ini...配置文件在 MySQL 的安装目录下,一般默认在 C:\Program Files\MySQL目录下。...=mysql_01 设置 logbin 格式 binlog_format=STATEMENT(默认) ==参考示例图:== image.png mysql 主从复制起始时,从机不继承主机数据 从机修改...(后面会需要用到)执行完此步骤后不要再操作主服务器 MySQL,防止主服务器状态值变化。

    63320

    MySQL主从复制

    配置MySQL主从复制,先来讲讲一些理论。 MySQL复制功能提供分担读负载。 基于二进制日志的复制是异步的,那么复制有什么好处?...说到日志,MySQL的服务层日志有二进制日志,慢查询日志,通用日志。而存储引擎的日志有innodb的重做日志(Redo log),回滚日志(Undo log)。...二进制日志记录了所有对MySQL数据库的修改事件,包括了增删查改事件和对表结构进行修改的事件。 二进制日志格式,可以设置基于段的格式,比如binlog_format=statement。...环境配置如下: 1.master(192.168.10.21) MySQL 5.7.17 2.slave(192.168.10.6) MySQL 5.7.17 给master创建sync用户并分配所需权限...="sync", -> master_log_file="mysql-bin.000002", -> master_log_pos=154\g Query OK, 0 rows affected

    1.3K20

    mysql主从复制

    mysql主从复制 mysql主从复制 主从复制的形式 一主一从 主主复制 一主多从—扩展系统读取的性能,因为读是在从库读取的 多主一从—5.7开始支持 联级复制— 用途和条件 用途 实时灾备,用于故障切换...读写分离,提供查询服务 备份,避免影响业务 必要条件 主库开启binlog日志(设置log-bin参数) 主从server-id不同 从库服务器能连通主库 主从复制的原理 主要涉及三个线程:binlog...主从复制集群 创建主从配置文件 由于我这里使用docker搭建,所以需要把配置文件和数据文件映射到宿主机,让容器运行时挂载数据 所以在本地合适的地方创建目录,并添加配置文件 ├── master │  .../docker/data/cluster/mysql/master/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6 --character-set-server.../mysql/slave/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6 --character-set-server=utf8mb4

    97710

    mysql 主从复制

    如果是A-->B-->C这样的复制模式,B的配置文件中要加上 log_slave_updates=1 Mysql主从复制 1.1Mysql主从复制原理 Mysql的复制是一个异步复制的过程,从一个主(master...打开mysql的二进制日志可以通过在启动mysql server的过程中使用“-log-bin”参数选项,或者在my.cnf配置文件中的msyqld参数组([mysqld]标识后的参数部分)增加“log-bin...1.3Mysql主从复制实现过程 环境介绍: 服务器名 IP地址 数据库版本 Data目录 Master 192.168.2.98 Mysql-5.5.24 /servyou/app/mysql/data.../ Slave 192.168.2.133 Mysql-5.5.24 /servyou/app/mysql/data/ 1.4Master端设置 1)   修改my.cnf配置文件; [mysqld]...)  启动备服务器的slave线程 mysql> start slave; 4)  验证 mysql> show slave status\G; ?

    1.1K50

    扫码

    添加站长 进交流群

    领取专属 10元无门槛券

    手把手带您无忧上云

    扫码加入开发者社群

    相关资讯

    热门标签

    活动推荐

      运营活动

      活动名称
      广告关闭
      领券