千家信息网

MySQL BlackHole引擎的概念和使用场景

发表于:2025-01-21 作者:千家信息网编辑
千家信息网最后更新 2025年01月21日,本篇内容介绍了"MySQL BlackHole引擎的概念和使用场景"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能
千家信息网最后更新 2025年01月21日MySQL BlackHole引擎的概念和使用场景

本篇内容介绍了"MySQL BlackHole引擎的概念和使用场景"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

概念

像MyISAM、InnoDB,BlackHole是另一种MySQL引擎,从字面意思来看,
其表现就像一个黑洞,只进不出,进来就消失。换句话说,任何往其中写的数据都将丢失,有点像Linux的/dev/null
比如一个表test的引擎是BlackHole,任何对这个表的insert都将丢失,
对它的select永远返回空集,对应的数据目录下只有一个test.frm文件,且没有其他文件与之关联。

使用场景

一个并不保存任何数据的引擎,到底有什么意义?
关键在于,虽然其不保存数据,但对数据库的操作仍旧记录在binlog日志中。
这就带来一个好处,可以将其作为主从复制的中介,将原来从主库中同步的操作变为从作为中介的BlackHole引擎数据库中同步。

1.作为伪主库分担主库负担

众所周知,当从库比较多的时候,所有从库都从主库load数据将加重主库的负担。但如果是从BlackHole的伪主库中同步就可以减轻主库的负担。原有主从架构大概就像下面这样:

现在,BlackHole伪主库作为中介,变成这样:

特别是,可以在伪主库中配置replicate-do和replicate-ignore规则,过滤不需要同步的表。

2.作为binlog日志收集器

其不保存实际数据,只记录binlog的特性,使得该引擎可用于binlog日志收集,便于数据库分析。
相关知识:binlog日志的format有三种:row,statement,mixed。
row的方式记录每一行被改变的记录,也就说,update将记录所有符合条件被修改的行,alter table更惨,相当于重建整个表,记录所有行的改变。所以这种格式下日志容易过大;
statement的方式只记录改变数据的SQL,没有row方式的问题,但其会记录该SQL执行的上下文信息,有个不好的地方是,该上下文信息在另一端重现的时候,容易因为较复杂的信息负责出错。
mixed的方式综合row和statement的方式。

配置

在伪库中,需要如下配置:
配置默认类型为BlackHole,可以用
default_table_type = BLACKHOLE
或是
default-storage-engine = BLACKHOLE
打开binlog:log-bin = ms-mysql-bin
特别要配置:log-slave-update = 1,只有这样,主库中的操作才会同步到BlackHole的binlog中,否则,只有直接针对BlackHole的操作才会记录到binlog。
忽略InnoDB:skip-innodb,当建表语句带有engine=innodb时,将使用默认的BlackHole引擎。
需要提醒的是,当采用这种架构时,数据同步多了中间一层,需要进一步考虑延迟问题。

"MySQL BlackHole引擎的概念和使用场景"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

数据 引擎 方式 日志 同步 配置 场景 概念 中介 信息 只有 数据库 知识 上下 上下文 主从 内容 实际 文件 时候 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 海南常用软件开发要多少钱 网络安全赋能 主题 太平人寿网络安全事件应急预案 ufax2刷打印服务器 大数据引发数据库架构变革图片 西安警示教育基地软件开发 浙江医院数显钟服务器 软件开发做项目什么条件 程序员最喜欢用什么软件开发程序 dns服务器没有响应要禁用什么 长沙市网络安全吗 河南特色软件开发特征 上海唐赢互联网科技有限公司 2018数据库最新面试 idc服务器运维管理系统设备 安微仠成互联网科技有限公司 上海蓉基软件开发网 西城区网络营销软件开发职责 传奇4交易所是所有服务器吗 南宁冠智软件开发公司 bat 网络安全 数据库设计与开发 网盘 成了网络安全黑名单会有什么后果 植物大战僵尸全明星还有服务器吗 用数据库软件选择多大内存笔记本 上海品牌网络技术收费 数据库管理员的标杆人物 网络技术 双刃剑 杭州应用软件开发定制 微软数据库怎么读写
0