你对MySQL BlackHole引擎有多少了解?


概念

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

使用场景

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

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

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

3319acdba500d044d6fd87cb9b2b855.png

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

9e8470a83f4666751d008adc203cbe9.png

ThinkPHP5.0完整版 ThinkPHP5.0完整版

ThinkPHP5.0版本是一个颠覆和重构版本,官方团队历时十月,倾注了大量的时间和精力,采用全新的架构思想,引入了更多的PHP新特性,优化了核心,减少了依赖,实现了真正的惰性加载,支持composer,并针对API开发做了大量的优化,包括路由、日志、异常、模型、数据库、模板引擎和验证等模块都已经重构,不适合原有3.2项目的升级,请慎重考虑商业项目升级,但绝对是新项目的首选(无论是WEB还是API

ThinkPHP5.0完整版 2228 查看详情 ThinkPHP5.0完整版

特别是,可以在伪主库中配置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-sl*e-update  = 1,只有这样,主库中的操作才会同步到BlackHole的binlog中,否则,只有直接针对BlackHole的操作才会记录到binlog。
忽略InnoDB:skip-innodb,当建表语句带有engine=innodb时,将使用默认的BlackHole引擎。
需要提醒的是,当采用这种架构时,数据同步多了中间一层,需要进一步考虑延迟问题。

推荐学习:《mysql视频教程》

以上就是你对MySQL BlackHole引擎有多少了解?的详细内容,更多请关注其它相关文章!


# 重构  # 天津网站推广及优化  # 成都视频seo排名  # 广安seo外包  # 黑帽seo快照劫持  # 桥头网站建设制作  # 利川市网站建设  # 教师网站建设情况  # 营销运营推广服务  # 岳阳seo优化网络  # 广汉网站建设费用  # mysql  # 空集  # 不保存  # 都将  # 你对  # 有多少  # 才会  # 就像  # 库中  # 镜像  # 数据库 


相关栏目: 【 Google疑问12 】 【 Facebook疑问10 】 【 优化推广96088 】 【 技术知识133117 】 【 IDC资讯59369 】 【 网络运营7196 】 【 IT资讯61894


相关推荐: mysql导入sql文件能分批导入吗_mysql分批次导入大sql文件的实用技巧  poki官网最新入口 poki小游戏大全入口  无人机考证官网 中国民航无人机考证官网登录入口  word邮件合并怎么插入个性化图片_Word邮件合并插入个性化图片方法  使用Google服务账号实现Google Drive API无缝集成与文件访问  126手机126邮箱登录_126邮箱手机登录入口官网  阿里云共享相册入口在哪  批改网网页版登录 批改网电脑版学生登录入口  天堂漫画网页版在线阅读 天堂漫画手机版入口  PHP utf8_encode 字符编码转换疑难解析与最佳实践  《荔枝fm》导出文件教程  如何在解析前预检查XML文件的完整性? 比如检查文件大小或特定结束标签  B站怎么开|直播| B站|直播|申请需要什么条件【新手必看】  六级准考证号怎么查_四六级准考证查询入口官网  Sublime Text怎么关闭自动完成_Sublime禁用Auto Complete设置  WooCommerce 新客户订单自动添加管理员备注教程  mysql如何管理数据库账户_mysql数据库账户管理技巧  鸣潮历史学家灯塔位置一览  解决Pandas DataFrame高度碎片化警告:高效创建多列的策略  魔法祈幻界兑换码礼包大全  RxJS中如何高效地在一个函数内处理和合并多个数据集合  TikTok收藏夹无法删除视频如何解决 TikTok收藏管理优化方法  学习通网页版课程打不开_课程无法访问时的解决方法  向往的生活小游戏启动处_向往的生活小游戏立即启动  GBA模拟器手柄按键设置  邮编号码查询app有哪些_邮编号码查询推荐app及使用体验  j*a中ArrayBlockingQueue的使用  QQ邮箱PC端登录页面_QQ邮箱网页版登录界面  Python实时数据流中高效查找最大最小值  《雷电模拟器》截图方法介绍  圆通快递包裹轨迹查询 圆通速递快件实时位置跟踪  MySQL多重JOIN技巧:高效关联同一表获取多角色信息  漫蛙manwa官网浏览入口_漫蛙漫画网页版访问链接  感染了幽门螺杆菌一定会导致胃癌吗?蚂蚁庄园今日答案最新11.30  如何在CSS中清除浮动解决背景颜色不包裹内容问题_clear after技巧  如何通过settings.json个性化您的VS Code体验  Golang如何使用log记录日志信息_Golang log日志记录方法总结  CSS动画如何实现图标旋转并放大_transform rotate scale @keyframes实现  《跳跳舞蹈》循环播放方法  《东方财富》条件单关闭方法  《友玩*》创建群聊方法  秋风萧瑟洪波涌起中的萧瑟指的是什么  iPhone 15 Pro如何查看存储空间占用_iPhone 15 Pro存储空间查看教程  163邮箱网页版入口 163邮箱在线使用  晨报|开发商暗示《空洞骑士:丝之歌》DLC开发中 《合金装备4》有望重制  泰拉瑞亚网页版在线登录入口 泰拉瑞亚官方正版入口  win11怎么启用或禁用休眠 Win11 powercfg命令管理休眠文件【技巧】  Python类装饰器动态修改方法时的类型提示:Mypy插件实现精确静态分析  《书耽》更换手机号方法  解决J*aScript动态图片上传中ID重复问题:在同一页面显示多张独立图片 

 2021-09-11

了解您产品搜索量及市场趋势,制定营销计划

同行竞争及网站分析保障您的广告效果

点击免费数据支持

提交您的需求,1小时内享受我们的专业解答。

运城市盐湖区信雨科技有限公司


运城市盐湖区信雨科技有限公司

运城市盐湖区信雨科技有限公司是一家深耕海外推广领域十年的专业服务商,作为谷歌推广与Facebook广告全球合作伙伴,聚焦外贸企业出海痛点,以数字化营销为核心,提供一站式海外营销解决方案。公司凭借十年行业沉淀与平台官方资源加持,打破传统外贸获客壁垒,助力企业高效开拓全球市场,成为中小企业出海的可靠合作伙伴。

 8156699

 13765294890

 8156699@qq.com

Notice

We and selected third parties use cookies or similar technologies for technical purposes and, with your consent, for other purposes as specified in the cookie policy.
You can consent to the use of such technologies by closing this notice, by interacting with any link or button outside of this notice or by continuing to browse otherwise.