mysql主从数据库的问题:到底谁触发谁

mysql主从数据库的问题:到底谁触发谁,第1张

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

器Binlog Dump线程发送的内容并将该数据拷贝到从服务器数据目录中的本地文件中,即中继

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

2,如1所述,主服务器收到从服务器的同步请求后,开始向从服务器发送二进制日志

3,附件的文档可以参考下

注:你使用java程序同步数据,先不说java的效率,仅仅全部sql都同步到从表再顺序执行就有问题,反复查库,插数据,还有数据不一致的问题,如insert into tab values (now())等等;

个人意见,仅供参考

风马牛不相及,主从数据库出俗讲只是一个数据库拆成几个分别存放(可以不同服务器),也就是不同的数据库存不同的表或者存储过程什么的,你是不是在问分布式数据库呢,分布式数据库是采取就近原则,所有数据库的表都是一致的,内容可能少,查询是先查最近,没有再往别的数据库查

BS是浏览器服务器模式,软件开发者通过这种模式集中精力开发服务器和适配浏览器,可以在不同环境下使用,应用访问广,而且不用特意花时间去开发客户端,对应的是CS模式,也就是客户端服务器模式,不同系统要开发不同的客户端,比较花时间,比如windows客户端,linux客户端,苹果电脑客户端,安卓手机客户端,苹果手机客户端

IP的设置:A主机 IP:10100119;Mask:25525500;B主机 IP:10108112;Mask:25525500

在IP设置完成以后,需要确定两主机的防火墙确实已经关闭。可以使用命令service iptables status查看防火墙状态。如果防火墙状态。

为仍在运行。使用service iptables stop来停用防火墙。如果想启动关闭防火墙,可以使用setup命令来禁用或定制。最终以两台主机可以相互ping通为佳。

32 配置A主(master) B从(slave)模式;321 配置A 为master。

增加一个用户同步使用的帐号:

GRANT FILE ON TO ‘backup’@'10108112' IDENTIFIED BY ‘1234’;

GRANTREPLICATION SLAVE ON TO ‘backup’@'10108112' IDENTIFIED BY ‘1234’。

赋予10108112也就是Slave机器有File权限,只赋予Slave机器有File权限还不行,还要给它REPLICATION SLAVE的权限才可以。

增加一个数据库作为同步数据库:create database test;

创建一个表结构:create table mytest (username varchar(20),password varchar(20));

修改配置文件:修改A的/etc/mycnf文件。

在mycnf配置项中加入下面配置:

server-id = 1 #Server标识

log-bin

binlog-do-db=test #指定需要日志的数据库

重起数据库服务:

service mysqld restart

查看server-id:

show variable like ‘server_id’。

1 在有主键或者唯一键的情况下,Slave 重放 Binlog 并不会去比较检索到的记录的每一列是否和BI相同,因此如果 Slave 和 Master 存在数据不一致,会直接覆盖 Slave 的数据而不会报错。

2 在没有主键或者唯一键的情况下,Hash Scan / Hash Scan Over Index 的执行效率 在理论上分析高于 Table Scan 和Index Scan 。

3 在没有主键或者唯一键的情况下,Slave 选择的二级索引是第一个所有的列都在 BI 中存在的索引,不一定是 Master 执行计划所选择的索引。

主库的主机关机时,数据只能读不能写,并且从库的主机关机后,数据仍然可读可写,这个不好弄,如果你对lua脚本有所了解,修改mysql-proxy 的读写分离脚本或许可以实现。 不过主库关机时不能访问,并且从库关机仍可读可写,这个不需要配读写分离,这本来就是主从复制的基本能力,从库只是备用的而已。从库关闭后再开启,slave IO线程会自动从中断处二进制日志的位置开始复制主机的二进制日志,slave SQL线程会读取并执行这些二进制日志中的SQL。 总之,不需要特别的配置,这是主从复制的基本能力。

数据库主从切换后应用要重新启动是因为切换执行的任务后要重新打开才可运行。数据库主从切换不止是执行一个任务,而是重复执行多个任务,不重新启动新任务无法打开,完不成主从切换,所以要重新启动。数据库砸编辑程序的时候会需要重启一些服务来达到刷新的效果,也有服务会死掉的情况发生,当遇到这种情况时会需要重启数据库。

以上就是关于mysql主从数据库的问题:到底谁触发谁全部的内容,包括:mysql主从数据库的问题:到底谁触发谁、主从式结构的数据库系统与B/S结构有何区别、如何配置两个MySQL数据库之间的主从同步功能等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9307198.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存