mysql-BLACKHOLE

MySQL的BLACKHOLE存储引擎用于集群架构中,它不存储数据,仅复制binlog到从库。通过创建BLACKHOLE节点,主库的IO压力得以减轻,因为它将binlog复制工作剥离,由BLACKHOLE节点多线程发送给从库,实现了负载均衡。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

mysql BLACKHOLE存储引擎,任何发送到该引擎的数据都会被抛弃,语句执行结果为空。

mysql> CREATE TABLE test(i INT, c CHAR(10)) ENGINE = BLACKHOLE;

Query OK, 0 rows affected (0.03 sec)

mysql> INSERT INTO test VALUES(1,'record one'),(2,'record two');

Query OK, 2 rows affected (0.00 sec) Records: 2 Duplicates: 0 Warnings: 0

mysql> SELECT * FROM test;

Empty set (0.00 sec)

在mysql的大规模集群架构应用中,当出现多台从库都连接到某一主库上进行binlog复制,主库在承担高并发写入压力下,还需要开启多个线程与从库进行通信,产生大量的IO操作,对主库造成过大压力。

为了达到集群架构负载均衡的初衷,可以在主库与从库之间建立一个单独的BLACKHOLE节点,该节点负责1、从主库复制binlog;2、开启多线程把binlog发送给各个从库节点。BLACKHOLE节点从主库复制binlog之后执行,并不存储数据,只保留binglog日志。

mysql的集群架构设计中,采用了流水线模式,把与多个从库通信的工作独立出来,设置一个单独的BLACKHOLE节点专注与向从库复制binlog工作,把复制工作从主库中剥离出来,减轻主库IO压力。

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值