200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > MySQL主从复制的原理及配置方法(比较详细)【MySQL】

MySQL主从复制的原理及配置方法(比较详细)【MySQL】

时间:2022-05-26 13:43:47

相关推荐

MySQL主从复制的原理及配置方法(比较详细)【MySQL】

数据库|mysql教程

服务器,数据库,二进制,记录

数据库-mysql教程

A、复制的原理

MySQL 复制基于主服务器在二进制日志中跟踪所有对数据库的更改(更新、删除等等)。每个从服务器从主服务器接收主服务器已经记录到其二进制日志的保存的更新,以便从服务器可以对其数据拷贝执行相同的更新。

将主服务器的数据拷贝到从服务器的一个途径是使用LOAD DATA FROM MASTER语句。请注意LOAD DATA FROM MASTER目前只在所有表使用MyISAM存储引擎的主服务器上工作。并且,该语句将获得全局读锁定。

MySQL 使用3个线程来执行复制功能,其中1个在主服务器上,另两个在从服务器上。当发出START SLAVE时,从服务器创建一个I/O线程,以连接主服务器并让它发送记录在其二进制日志中的语句。

主服务器创建一个线程将二进制日志中的内容发送到从服务器。该线程可以识别为主服务器上SHOW PROCESSLIST的输出中的Binlog Dump线程。

从服务器I/O线程读取主服务器Binlog Dump线程发送的内容并将该数据拷贝到从服务器数据目录中的本地文件中,即中继日志。

第3个线程是SQL线程,是从服务器创建用于读取中继日志并执行日志中包含的更新。

有多个从服务器的主服务器创建为每个当前连接的从服务器创建一个线程;每个从服务器有自己的I/O和SQL线程。

B、复制线程的状态

1.复制主线程的状态

简单网页聊天室源码下载,vscode写c语言文件,ubuntu安装pxe,tomcat6负载,网页类型爬虫,php不能显示验证码,长安seo优化关键词,网站可重复背景,dicuz论坛模板lzw

Sending binlog event to slave

二进制日志由各种事件组成,一个事件通常为一个更新加一些其它信息。线程已经从二进制日志读取了一个事件并且正将它发送到从服务器。

Finished reading one binlog; switching to next binlog

线程已经读完二进制日志文件并且正打开下一个要发送到从服务器的日志文件。

Has sent all binlog to slave; waiting for binlog to be updated

线程已经从二进制日志读取所有主要的更新并已经发送到了从服务器。线程现在正空闲,等待由主服务器上新的更新导致的出现在二进制日志中的新事件。

Waiting to finalize termination

线程停止时发生的一个很简单的状态。

2.复制从I/O线程状态

图片扫描系统 源码,vscode java导包,ubuntu磁盘类型,tomcat架构详解,sqlite3列插入数据,八爪鱼爬虫要编码吗,apache和php配置,昌都谷歌seo营销公司,买卖宝网站源码下载,动漫flash网页模版,小说类文本阅读的模板lzw

Connecting to master

线程正试图连接主服务器。

Checking master version

建立同主服务器之间的连接后立即临时出现的状态。

Registering slave on master

建立同主服务器之间的连接后立即临时出现的状态。

Requesting binlog dump

建立同主服务器之间的连接后立即临时出现的状态。线程向主服务器发送一条请求,索取从请求的二进制日志文件名和位置开始的二进制日志的内容。

Waiting to reconnect after a failed binlog dump request

如果二进制日志转储请求失败(由于没有连接),线程进入睡眠状态,然后定期尝试重新连接。可以使用

单店铺网店源码,vscode 取消多光标,ubuntu清空界面,怎么连tomcat马,sqlite3更新一条记录,爬虫求助,php mvc有哪些,宝安seo优化找哪家,个人门户网站模板,岗位模板免费下载lzw

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。