首页 > 试题广场 >

MySQL主从同步是如何实现的?

[问答题]
MySQL主从同步是如何实现的?
复制(replication)是MySQL数据库提供的一种高可用高性能的解决方案,一般用来建立大型的应用。总体来说,replication的工作原理分为以下3个步骤: 1. 主服务器(master)把数据更改记录到二进制日志(binlog)中。 2. 从服务器(slave)把主服务器的二进制日志复制到自己的中继日志(relay log)中。 3. 从服务器重做中继日志中的日志,把更改应用到自己的数据库上,以达到数据的最终一致性
发表于 2022-05-05 14:12:05 回复(0)
[复制]1主服务器把数据更改记录放到binlog文件2.从服务器将binlog内容复制放中继日志3从服务器重做中继日志的日志,应用到自己数据库上
发表于 2022-06-17 14:13:14 回复(0)
主服务器将数据的更改记录保存到二进制文件中,从服务器将主服务器中的二进制日志复制到自己的中继日志中,从服务器重做中继日志中的日志将更改应用到自己的数据库上,达成数据的最终统一性。
发表于 2022-06-09 22:18:59 回复(0)
主服务器把数据更改记录到二进制日志(bin log)中,当从服务器连接到主服务器后,主服务器会为从服务器开启一个binnlog dump线程读取binlog日志;并且从服务器会开启两个线程,一个I/O线程,一个SQL线程;I/O线程会去请求主服务器的binnlog dump线程,然后写入relay-log(中继日志)中;;然后SQL线程会监控relay log日志是否有更新,解析文件中的sql语句,在从服务器数据库中逐一执行;
编辑于 2023-05-16 14:01:57 回复(0)
MySQL主从同步主要是通过复制机制来实现的。复制机制是MySQL的一种重要功能,可以让多个数据库之间保持数据的一致性。 当在一个主数据库中执行更新操作时,这些更新会被记录到二进制日志中。然后,从数据库会监控主数据库中的二进制日志,并将其中的变化应用到自己的数据库中,从而实现实时的数据同步。此外,还可以使用一些其他的机制来进一步提高主从同步的速度和可靠性,例如压缩二进制日志、缓存查询结果等。
发表于 2023-11-11 15:42:04 回复(0)
主服务器(master)将数据存放到二进制日志中,从服务器(slave)中的IO线程复制master中日志的内容到自己的中继日志中,然后再由SQL线程读取并执行中继日志的内容完成主从同步。
发表于 2023-01-09 15:18:37 回复(0)
复制(replication)是MySQL数据库提供的一种高可用高性能的解决方案,一般用来建立大型的应用。总体来说,replication的工作原理分为以下3个步骤:1)主服务器(master)把数据更改记录到二进制日志(binlog)中。2)从服务器(slave)把主服务器的二进制日志复制到自己的中继日志(relay log)中。3)从服务器重做中继日志中的日志,把更改应用到自己的数据库上,以达到数据的最终一致性。复制的工作原理并不复杂,其实就是一个完全备份加上二进制日志备份的还原,不同的是这个二进制日志的还原操作基本上实时在进行中。这里特别需要注意的是,复制不是完全实时地进行同步,而是异步实时。这中间存在主从服务器之间的执行延时,如果主服务器的压力很大,则可能导致主从服务器延时较大。
发表于 2022-07-25 13:11:56 回复(0)
MySQL的主从同步 首先我们得开启MySQL的主从同步,添加slave节点 1. 当主库发生数据的更改记录时,会将记录写入binlog中,而binlog的文件格式主要有:statement(直接是sql语句),row(记录的是行数据),mixed(混合模式) 2. 当从节点进行同步告诉主节点要从那里读取,主节点中会产生一个dump线程将所需要的数据推送到从节点 3. 从节点此时会开启一个IO线程将从主节点得到的数据写入relaylog 4. 从节点的sql线程会将relaylog中的数据再次执行 不能保证CP,只能是最终一致性
编辑于 2024-04-03 16:47:16 回复(0)
是MySQL数据库提供的一种高可用高性能的解决方案 主服务器将数据变化记录到二进制日志中 从服务器把主服务器的二进制日志复制到自己的中继日志 从服务器重做中继日志,将变化应用到自己的数据库
编辑于 2024-03-17 11:22:39 回复(0)
1.主服务器把数据的更改记录到二进制日志(binlog)中 2.slave把主服务器的二进制日志复制到自己的中继日志(relay log) 3.slave按照中继日志重做,把master的更改应用到slave上。 复制不是同步实时的,是异步实时的。master的压力很大的时候,则可能导致复制延迟较大。
编辑于 2024-02-22 10:37:17 回复(0)
主服务器对数据的更改记录会记录到二进制文件binlog中,从服务器把主服务器的binlog文件复制到自己的中继日志中。从服务器重做中继日志将更改同步到自己的数据库中,从而使得主从数据同步
发表于 2023-08-14 14:39:59 回复(0)
采用的复制技术实现的,主服务器会将操作记录到binlog中,从服务器会异步的复制binlog到自己的中继日志中,然后从做中继日志中的操作将主服务器中操作应用到从服务器中
发表于 2023-03-15 11:36:08 回复(0)
12
发表于 2023-03-10 16:17:43 回复(0)
主服务器将对数据更改的记录保存到binglog二进制文件中;从服务器每隔一段时间去检测主服务器的binglog日志是否发生改变,如果发生改变就,创建一个io线程去读取主服务器的binglog日志文件,同时主服务器为每个io线程创建一个dump线程,io线程将数据写到从服务的relaylog日志中,从服务器开启一个sql线程,从relaylog日志中读取数据,最后io线程和SQL线程睡眠,等待下一次被唤醒;
发表于 2023-03-08 14:48:44 回复(0)
主要通过bin_log日志来进行同步,一共有三个线程,主库的dump线程和从库的IO线程、sql线程,同步过程为 1.从库连接上主库后,主句会创建一个dump线程,来读取bin_log日志并传输给从库,读取过程中会对bin_log进行上锁。在同步到从库之前会释放锁 2.从库创建一个IO线程用来读取bin_log日志并将数据存到本地得relay_log中 3.从库创建一个sql线程用来解析relay_log,并进行数据同步
发表于 2023-02-10 13:36:45 回复(0)
主从同步是通过复制实现的。主服务器将数据的更改记录保存到二进制文件中,从服务器将主服务器中的二进制日志复制到自己的中继日志中,从服务器重做中继日志中的日志将更改应用到自己的数据库中,达成数据的最终一致性
发表于 2023-02-08 15:26:07 回复(0)
1.主服务器在写入完成后,会将写入的数据二进制日志文件中 2.从服务器会直接从主服务器的日志文件中复制到自己里面 3.从服务器重做中继日志中的日志,并且将数据的更改应用到自己的数据库中,达到数据最终一致
发表于 2023-02-01 10:23:33 回复(0)
使用复制的方式 主要分为为三部分 1 主服务器把数据更改记录保存在二进制日志种 2从数据库把二进制文件复制到自己的中继日志中3从服务器重做中继日志中的日志
编辑于 2023-02-22 16:06:53 回复(0)
binlog
发表于 2022-11-09 16:51:46 回复(0)
主从同步主要就是利用mysql的binlog实现,主节点所有的更新类操作,都记录在binlog中,从节点如果是第一次实现同步,则进行全量同步;如果非第一次同步,则通过psyn实现,把主节点的binlog拉到从节点的中继日志中,进行同步处理,最终达到数据一致性
发表于 2022-10-16 10:26:02 回复(0)