mysql数据库主从同步,master和slave上的mysql必须版本一样吗,如果不一样会有什么结果?

如题所述

版本一致,是官方推荐的方式;slave至少要和master的版本前两个号相同,可高于master;
版本不一致,可能出现的问题就是同步的不稳定(兼容性的老问题),因为会在某些函数处理、日志读取、日志的解析重演等上发生异常,导致同步报错而需手工处理。追问

如果master是高版本5.5,slave是低版本5.1的,这样会有问题吗?

追答

之前用过的 5.1 的同步有不稳定的现象,而且比master版本低,不推荐这样搭配。建议升级slave吧。

追问

master上配置的要复制的数据库和要忽略的数据库的意思是什么,如果我有10个数据库,配置了一个要复制的,一个忽略的,剩下的8个是复制呢还是不复制呢?

追答

0 master 上的过滤配置参数为以下,会影响各数据库的操作是否写入二进制日志。(不推荐在master上设置此过滤,原则上所有数据库都要写入二进制日志)
binlog_do_db=dbname
binlog_ignore_db=dbname

1 slave 上的过滤配置较多,有 database 级的,有 table 级的。分三种情况
1.1 只有库级配置,没有表级配置
严格按照复制的do或不复制的ignore,采取是否执行复制。(比如,没配置的那8个,如没有表级配置,则不复制)
1.2 只有表级配置,没有库级配置
这个参看下边1.3的逻辑
1.3 库级配置和表级配置混合

判断原则如下:
--先判断数据库级,再判断表级。

--库级顺序:--replicate-do-db --replicate-ignore-db

--replicate-do-db符合就进入表级配置的判断,不符合进入--replicate-ignore-db判断,符合了就不复制了,不符合就进入表级(比如,没配置的那8个,如有表级配置,则会进入表级进行判断)

--表级顺序:--replicate-do-table, --replicate-ignore-table, --replicate-wild-do-table, --replicate-wild-ignore-table, 依次按这个顺序判断。
先判断--replicate-do-table:
符合则复制,不符合或没有配置--replicate-do-table就进入--replicate-ignore-table;
符合了则不复制,不符合或没有配置--replicate-ignore-table就进入--replicate-wild-do-table;
符合了就复制,不符合或没有配置--replicate-wild-do-table进入--replicate-wild-ignore-table;
符合了就不复制,不符合或没有配置--replicate-wild-ignore-table的时候情况特殊点,要判断是否有 --replicate-do-table 配置,如果有则不复制,没有则进行复制;

2 其他:
slave的过滤配置可快速理解为,库级配置明确的数据库会立即决定是否复制,未明确配置库级的数据则看是否配置了表级配置,如没有表级配置则复制,有表级配置则判断之;
另外,过滤配置还受到master的日志格式的影响。

温馨提示:内容为网友见解,仅供参考
无其他回答

mysql主主同步,从库不同步应该怎么解决
由于各种原因,mysql主从架构经常会出现数据不一致的情况出现,大致归结为如下几类1:备库写数据2:执行non-deterministic query3:回滚掺杂事务表和非事务表的事务4:binlog或者relay log数据损坏数据不同步给应用带来的危害是致命的,当出现主从数据不一致的情况,常见的应对方法是先把从库下线,然后找个半夜...

公司数据库使用MYSQL master\/slave主从同步,由于数据量比较大,经常发现...
1、同步一般都是实时的,可以及时同步,如果数据量大可能是插入速度上不去,mysql主从是通过写sql语句实现的,大数据的会延迟很严重 2、延迟的数据会同步过去

谈谈mysql(2)——主从模式下的同步方式及半同步、MGR的部署方式
MySQL主从模式下的同步方式及MGR部署详解MySQL默认采用异步复制模式,涉及三个线程,可能导致主从延迟和数据一致性问题。为减少延迟,建议主备库硬件性能相近,优先在性能较好的备库上安装。半同步复制在MySQL5.5中引入,通过在master执行commit前,slave写入relaylog并反馈确认,确保数据一致性,但牺牲了主库...

MySQL间的三台数据库同步3个mysql之间同步
模式一:数据库主从同步模式 在这种模式下,开启主从复制,指定一台数据库为主数据库,其他的两台数据库均为从数据库。主从复制过程中,主数据库将自身的数据同步至从数据库,从数据库一般是用于读取操作。主从复制的数据同步是单向的,即主数据库的数据会同步至从数据库,而从数据库的数据更改不会影响...

为什么mysql主从复制,从刚开始能复制一会就不行了
1. 在有主键或者唯一键的情况下,Slave 重放 Binlog 并不会去比较检索到的记录的每一列是否和BI相同,因此如果 Slave 和 Master 存在数据不一致,会直接覆盖 Slave 的数据而不会报错。2. 在没有主键或者唯一键的情况下,Hash Scan \/ Hash Scan Over Index 的执行效率 在理论上分析高于 Table Scan...

两台MYSQL数据库同步,遇到数据库的名字不一样,同步不了,该怎么...
回答:额,你这个要用主从来实现了,可以看看mysql cluster,不需要加触发器的

MySQL库数据同步如何实现不同库之间的数据同步mysql不同库同步数据
1. 基于MySQL内置功能的同步方式 MySQL数据库内置了复制(repliacation)模块,可以实现Master-Slave、Master-Master等方式的数据同步。使用这种方式需要配置多个MySQL实例,Master负责写入,Slave或其他Master负责同步数据。复制模块有以下优点:(1) 数据延迟低,同步速度快。(2) 高可靠性,出现异常时能自动切换...

MySQL主从备份数据镜像同步mysql中主从备份
一、MySQL主从备份 MySQL主从备份是通过建立主数据库和从数据库之间的关系,实现自动备份和恢复的技术。主数据库负责写数据,从数据库负责读数据,从而实现备份和负载均衡的效果。步骤如下:1、在主数据库(Master)创建一个名为syncuser的账户,并授权slave服务器(Slave)可以使用该账户同步主服务器数据。

如何处理MySQL数据不同步的情况mysql不同步的现象
但是,在使用MySQL过程中,由于网络、硬件、软件等因素的影响,有时会出现数据同步不及时或者不一致的情况。为了保证数据一致性和可靠性,必须及时处理MySQL数据不同步的情况。一、检查数据库配置 当MySQL数据发生不同步的情况时,首先要检查数据库配置是否正确。数据库配置包括服务器配置、网络配置、用户权限...

MySQL在从库修改数据会影响主从同步吗
从库修改后,比如插入个id=5,那么当主再插入个id=5时,并且id是primary key,这不就出错了么。所以还得看你在从库插入的是否相关的东东,你也可以在从库建立一个新的数据库,里面放些和主从不相关的测试表,并且在里面操作数据,这些没有关系,不会产生什么影响,如果就是简单的主从结构的话。

相似回答