Bintrail: MySQL Time-Travel Queries Using Indexed Binlogs

TL;DR · AI 摘要
Bintrail通过索引MySQL二进制日志实现时间旅行查询功能,允许用户查询数据库在过去任意时间点的状态,解决了传统MySQL缺乏历史数据查询能力的问题。
核心要点
- Bintrail利用索引化的binlog实现MySQL时间旅行查询功能
- 该工具允许用户查询数据库在过去任意时间点的数据状态
- 解决了MySQL原生缺乏历史数据查询能力的技术痛点
结构提纲
按章节快速跳转。
思维导图
用一张图看清主题之间的关系。
查看大纲文本(无障碍 / 无 JS 友好)
- Bintrail: MySQL时间旅行查询
- 核心技术
- 索引binlog
- 功能特性
- 时间旅行查询
- 应用价值
- 历史数据访问
金句 / Highlights
值得收藏与分享的关键句。
Bintrail通过索引MySQL二进制日志实现时间旅行查询功能
允许用户查询数据库在过去任意时间点的状态
解决了传统MySQL缺乏历史数据查询能力的问题
Bintrail:使用索引二进制日志实现 MySQL 时间旅行查询 - InfoQ
[BT](https://www.infoq.com/int/bt/ "bt")
InfoQ 软件架构师通讯
每月为您总结作为架构师或有志成为架构师所需了解的重要信息。
输入您的电子邮件地址
选择您的国家 - [x] 我同意 InfoQ.com 按照此隐私声明处理我的数据。
关闭
在线研讨会和问答:更快交付,更多故障:重新思考 AI 时代的交付系统(2026年5月28日)预订席位
关闭
切换导航
促进专业软件开发中知识与创新的传播
英文版
[为 InfoQ 投稿](https://www.infoq.com/write-for-infoq/ "为 InfoQ 投稿")
搜索
解锁完整的 InfoQ 体验
通过登录解锁完整的 InfoQ 体验!关注您喜爱的作者和话题,参与内容互动,并下载专属资源。
或
还没有 InfoQ 账户?
- 关注对您重要的主题和同行接收最新洞察和趋势的即时提醒。
- 快速访问免费学习资源小册子、带文字记录的视频和培训材料。
- 保存文章并随时阅读收藏文章,在您准备好的时候随时阅读。
话题
[开发](https://www.infoq.com/development/ "开发")
- [Java](https://www.infoq.com/java/ "Java")
- [Kotlin](https://www.infoq.com/kotlin/ "Kotlin")
- [.Net](https://www.infoq.com/dotnet/ ".Net")
- [C#](https://www.infoq.com/c_sharp/ "C#")
- [Swift](https://www.infoq.com/swift/ "Swift")
- [Go](https://www.infoq.com/golang/ "Go")
- [Rust](https://www.infoq.com/rust/ "Rust")
- [JavaScript](https://www.infoq.com/javascript/ "JavaScript")
开发精选
Dany Lepage 讨论了将一款热门 VR 游戏移植到七个非 VR 平台的架构之旅。他解释了团队如何解决跨平台进度同步、多样化输入范式以及在 Steam、iOS 和 PlayStation 上保持发布速度的挑战。除了技术层面,他还分享了将沉浸式社交存在感转换到 2D 屏幕时"产品适配"差距的坦率经验。

开发全部内容关注话题
[架构与设计](https://www.infoq.com/architecture-design/ "架构与设计")
- [架构](https://www.infoq.com/architecture/ "架构")
- [企业架构](https://www.infoq.com/enterprise-architecture/ "企业架构")
- [可扩展性/性能](https://www.infoq.com/performance-scalability/ "可扩展性/性能")
- [设计](https://www.infoq.com/design/ "设计")
- [案例研究](https://www.infoq.com/Case_Study/ "案例研究")
- [微服务](https://www.infoq.com/microservices/ "微服务")
- [服务网格](https://www.infoq.com/servicemesh/ "服务网格")
- [模式](https://www.infoq.com/DesignPattern/ "模式")
- [安全](https://www.infoq.com/Security/ "安全")
架构与设计精选
Michael Stiefel 与 Baruch Sadogursky 探讨了智能体 AI 时代的软件架构。LLM 可以发挥作用,尽管是随机的,但能够解释人类模糊性的推理机器。有了适当的严格上下文工件来控制 LLM 的推理,软件规范可以成为真理之源,而代码则成为可丢弃的中间语言。

架构设计全部内容关注话题
[AI 基础设施](https://www.infoq.com/ai-ml-data-eng/ "AI 基础设施")
- [大数据](https://www.infoq.com/bigdata/ "Big Data")
- [机器学习](https://www.infoq.com/machinelearning/ "Machine Learning")
- [NoSQL](https://www.infoq.com/nosql/ "NoSQL")
- [数据库](https://www.infoq.com/database/ "Database")
- [数据分析](https://www.infoq.com/data-analytics/ "Data Analytics")
- [流处理](https://www.infoq.com/streaming/ "Streaming")
特色内容:AI、ML 和数据工程
- #### AI 网关:在分散团队中扩展集中推理
Meryem Arik 讨论了为什么现代工程团队面临"推理混乱"以及 AI 模型网关如何提供关键的控制层。她解释了在赋权分散团队选择最佳模型与维护集中监督以确保安全性、RBAC 和成本控制之间的平衡。探索像 LiteLLM 和 Doubleword 这样的开源解决方案来简化您的 AI 基础设施。

AI-ML-数据工程全部内容关注话题
[文化与方法](https://www.infoq.com/culture-methods/ "Culture & Methods")
- [敏捷](https://www.infoq.com/agile/ "Agile")
- [多元化](https://www.infoq.com/diversity/ "Diversity")
- [领导力](https://www.infoq.com/leadership/ "Leadership")
- [精益/Kanban](https://www.infoq.com/lean/ "Lean/Kanban")
- [个人成长](https://www.infoq.com/personal-growth/ "Personal Growth")
- [Scrum](https://www.infoq.com/scrum/ "Scrum")
- [社会管理](https://www.infoq.com/sociocracy/ "Sociocracy")
- [软件工艺](https://www.infoq.com/software_craftsmanship/ "Software Craftmanship")
- [团队协作](https://www.infoq.com/team-collaboration/ "Team Collaboration")
- [测试](https://www.infoq.com/testing/ "Testing")
- [用户体验](https://www.infoq.com/ux/ "UX")
特色内容:文化与方法
- #### 云原生工程师的产品思维
Stéphane Di Cesare 和 Cat Morris 分享了工程师如何通过产品发现从"成本中心"转变为价值驱动者。他们解释了"双钻"框架以及为什么识别用户问题必须先于构建解决方案。了解如何选择正确的指标,通过影子跟踪建立客户同理心,并利用业务背景最大化您技术工作的影响。

文化方法全部内容关注话题
- [基础设施](https://www.infoq.com/infrastructure/ "Infrastructure")
- [持续交付](https://www.infoq.com/continuous_delivery/ "Continuous Delivery")
- [自动化](https://www.infoq.com/automation/ "Automation")
- [容器](https://www.infoq.com/containers/ "Containers")
- [云](https://www.infoq.com/cloud-computing/ "Cloud")
- [可观察性](https://www.infoq.com/observability/ "Observability")
特色内容:DevOps
- #### A^2 I^2 的讽刺
J. Paul Reed 讨论了"自动化的讽刺"——一个 40 年前的概念现在被 AI 放大了。他解释了高级系统通常如何使人类操作员更加重要,而不是更不重要,同时却降低了干预所需的技能。分享"AI 驱动"事件的真实故事,他分享了过度依赖 AI 如何使恢复时间加倍以及如何保持弹性。

DevOps 全部内容关注话题
[活动](https://events.infoq.com/ "Events")
有用链接
- [关于 InfoQ](https://www.infoq.com/about-infoq "About InfoQ")
- [InfoQ 编辑](https://www.infoq.com/infoq-editors "InfoQ Editors")
- [为 InfoQ 写作](https://www.infoq.com/write-for-infoq "Write for InfoQ")
- [关于 C4Media](https://c4media.com/ "About C4Media")
- [多元化](https://c4media.com/diversity "Diversity")
选择您的语言

[InfoQ 首页](https://www.infoq.com/ "InfoQ 首页")[新闻](https://www.infoq.com/news "新闻")Bintrail: 使用索引二进制日志实现 MySQL 时间旅行查询
[AI、ML 和数据工程](https://www.infoq.com/ai-ml-data-eng/ "AI、ML 和数据工程")
Bintrail: 使用索引二进制日志实现 MySQL 时间旅行查询
2026 年 5 月 21 日 3 分钟阅读
作者
- Renato Losio
关注云专家 | AWS 数据英雄
#### 为 InfoQ 投稿
满足你的好奇心。帮助每月 55 万+ 全球
高级开发人员
保持领先。联系我们
登录以收听本文
正在加载音频
0:00 0:00
正常 1.25x 1.5x
喜欢
Bintrail 是最近推出的一个层,它为 MySQL 带来了特定时间点查询和行历史查找功能,MySQL 是唯一缺少原生时态查询功能的主要关系型数据库。Bintrail 使用 ProxySQL 后面的索引二进制日志,无需修改 MySQL 或应用程序代码,支持查询过去某个时间戳的数据并查看变更历史,主要用于恢复和审计场景。
这种方法通过结合基于 ProxySQL 的查询路由和索引二进制日志,在标准 MySQL 中添加了 AS OF 和 BETWEEN 时间旅行查询。Bintrail 解析 MySQL ROW 格式的二进制日志,使用完整的前后镜像对每个行事件建立索引,并生成用于特定时间点恢复的反向 SQL,而无需原始二进制日志文件。数据库专家 Daniel Guzman-Burgos 解释了他开始这个项目的原因:
上个月我梳理了除 MySQL 外的每个主要 OLTP 数据库都开箱即用地提供了特定时间点查询功能。Oracle 有 AS OF TIMESTAMP。SQL Server 有 FOR SYSTEM_TIME AS OF。MariaDB 提供系统版本化表。PostgreSQL 有三个扩展可以实现这一功能。
/filters:no_upscale()/news/2026/05/bintrail-mysql-timetravel/en/resources/1Captura-de-pantalla-2026-05-06-a-las-1.58.53-p.m-1024x508-1779305185335.png)
_来源:dbtrail 博客_
在 Oracle 和 SQL Server 中,可以直接查询历史状态。在 MySQL 中,恢复或检查过去的数据状态通常成为围绕二进制日志构建的操作任务,而不是原生的时态查询。
在另一篇文章中比较最受欢迎的关系型数据库选项时,作者认为可查询历史与原始日志数据之间的实际差距正是许多恢复和审计事件发生的地方。Guzman-Burgos 补充道:
闪回功能在 Oracle 中已经存在了 25 年。时态表在 SQL Server 中也已存在十年了。CockroachDB 从第一天起就提供了时间旅行功能。PostgreSQL 用户使用扩展是因为这个差距太明显了,无法忽视。MariaDB 从 MySQL 分叉出来并在那里构建了这一功能。Oracle MySQL 没有这样做,不会这样做,也没有动机去做。
_diff 查询返回指定时间范围内的所有行级变更,包括事件类型、GTID 和前后值。虽然 SQL Server、MariaDB 和 Oracle 提供各种形式的历史行查询,但它们通常暴露存储的行版本,并依赖于时态存储或保留设置。相比之下,Bintrail 直接从索引的 MySQL 二进制日志中读取,以重建所选期间内行的完整变更序列。
-- 订单 #42 在任意过去时刻的状态
SELECT * FROM _flashback.orders
AS OF '2026-04-15 09:30:00'
WHERE id = 42;
-- 或者该时刻的整个表(当时存在的每一行)
SELECT * FROM _flashback.orders AS OF '2026-04-15 09:30:00';
-- 时间窗口内订单 #42 的所有变更
SELECT * FROM _diff.orders
BETWEEN '2026-04-15 00:00:00' AND '2026-04-15 23:59:59'
WHERE id = 42;Bintrail 可以自动生成 ProxySQL 路由规则,将诸如 _flashback、_diff 和 _snapshot 这样的历史查询模式定向到其自己的后端,同时保持正常的 MySQL 流量不受影响。该系统独立于 MySQL binlog 保留策略维护自己的索引历史存储,允许历史查询跨越更长的时间段,并可选择性地扩展到存储在 S3 上的归档 Parquet 数据。Guzman-Burgos 写道:
无需 ALTER TABLE 来启用系统版本控制。无需特殊的存储引擎。无需二进制日志重放工具。同样的 MySQL,同样的驱动程序:将连接指向 ProxySQL 而不是真正的 MySQL 端口,其余的一切都能正常工作。
Percona 创始人和开源倡导者 Peter Zaitsev 写道:
Daniel Guzmán Burgos 继续在 MySQL 可恢复性的高效解决方案方面做出令人惊叹的工作。
讨论这个新选项时,Releem 创始人 Roman Agabekov 指出:
完整备份的恢复通常过于沉重、缓慢且风险较大。这在现在更加重要,因为 AI 生成的 SQL、自动化脚本和操作变更比以往更快。更多的自动化提高了速度,同时也增加了对精确恢复的需求。
在当前限制中,Bintrail 仅支持字面时间戳查询、主键查找和有限的全表恢复,而连接和更复杂的过滤必须在 shim 层之外处理。Bintrail 在 GitHub 上 可用,采用 BUSL 许可证,这是一个源码可用许可证。
关于作者

#### Renato Losio
Renato 在云架构师、技术负责人和云服务专家方面拥有丰富的经验。目前,他居住在柏林,远程担任首席云架构师。他的主要兴趣领域包括云服务和关系数据库。他是 InfoQ 的编辑,也是公认的 AWS Data Hero。您可以在 LinkedIn 上与他联系。
显示更多 显示更少
#### 此内容属于 AI、ML 和数据工程 主题
关注主题
##### 相关主题:
关注者:5075
关注主题
关注者:5917
关注主题
关注者:37
关注主题
关注者:31
关注主题
关注者:73
关注主题
关注者:74
关注主题
* #### AI、ML 和数据工程热门内容
- ##### 从零构建多代理系统的经验教训
* #### 相关赞助商
- ##### 为故障而设计:如何保证云中断期间的数据访问
- ##### 基于 AWS 构建的自主生产运维
* #### 相关赞助商

- 2026 年 7 月 9 日,下午 12 点 EDT
##### AI 分析时代的日志重新思考
演讲者:Nicolas Jung - Datadog 日志产品经理
相关内容
2026 年 5 月 10 日
2026 年 5 月 2 日
2026 年 5 月 9 日
- ##### 湖仓巴别塔:处理跨数据库引擎的标识符解析规则
2026 年 4 月 17 日 
2026 年 5 月 17 日
2026 年 4 月 30 日
- 图标##### 赋能您的开发者:开源依赖项风险管理如何释放创新潜力
2026 年 4 月 15 日 
- 图标##### 使用数据和开源软件为企业 AI 应用提供动力
2025 年 12 月 15 日 
2026 年 5 月 21 日
相关赞助商
- #### AI 分析时代的日志重新思考(现场网络研讨会 2026 年 7 月 9 日)- 预留您的座位
长期以来,日志在事件期间一直是一种被动的繁重工作。AI 正在使遥测数据量激增——但也提供了解决方案。了解如何从碎片化日志记录发展到 AI 驱动的平台,实现更快的调查和更智能的支出。
- 赞助商

相关内容
- 图标##### A^2 I^2 的讽刺
2026 年 5 月 21 日 
- ##### 通过使用黄金砖块的平台工程如何实现快速平滑交付
2026 年 5 月 21 日
2026 年 5 月 21 日
2026 年 5 月 21 日
- ##### 待办事项的数学:队列恢复的容量规划
2026 年 5 月 21 日 
2026 年 5 月 20 日
**InfoQ** 通讯
每周二发送的 InfoQ 上周内容摘要。加入超过 250,000 名高级开发者的社区。查看示例
输入您的电子邮件地址
选择您的国家 - [x] 我同意 InfoQ.com 按照此隐私声明处理我的数据。
- ##### [Pip 26.1 发布依赖冷却和实验性锁文件支持以对抗供应链攻击](https://www.infoq.com/news/2026/05/pip-261-dependency-cooldowns/ "Pip 26.1 发布依赖冷却和实验性锁文件支持以对抗供应链攻击")
- ##### [Cloudflare 和 Stripe 允许 AI 代理创建账户、购买域名并部署到生产环境](https://www.infoq.com/news/2026/05/cloudflare-stripe-agent-commerce/ "Cloudflare 和 Stripe 允许 AI 代理创建账户、购买域名并部署到生产环境")
- ##### [Google 推出 Cloud Fraud Defense 作为 reCAPTCHA 的继任者](https://www.infoq.com/news/2026/05/cloud-fraud-defense-recaptcha/ "Google 推出 Cloud Fraud Defense 作为 reCAPTCHA 的继任者")
- ##### [Grab 大规模工程支持多代理系统设计案例研究](https://www.infoq.com/news/2026/05/grab-multi-agent-support-system/ "Grab 大规模工程支持多代理系统设计案例研究")
- ##### [OpenAI 阐述用于大规模低延迟语音 AI 的 WebRTC 架构](https://www.infoq.com/news/2026/05/openai-voice-ai-scale/ "OpenAI 阐述用于大规模低延迟语音 AI 的 WebRTC 架构")
- ##### [Agoda 构建多模态内容系统以连接旅游发现中的图像和评论](https://www.infoq.com/news/2026/05/agoda-multimodal-content-system/ "Agoda 构建多模态内容系统以连接旅游发现中的图像和评论")
- ##### [如何使用黄金砖块进行平台工程以实现快速平滑交付](https://www.infoq.com/news/2026/05/platform-golden-bricks/ "如何使用黄金砖块进行平台工程以实现快速平滑交付")
- ##### [云原生工程师的产品思维](https://www.infoq.com/presentations/product-cloud-native/ "云原生工程师的产品思维")
- ##### [Zoox 加速基于大语言模型的开发者生产力](https://www.infoq.com/presentations/ai-software-development/ "Zoox 加速基于大语言模型的开发者生产力")
- ##### [Bintrail:使用索引二进制日志的 MySQL 时间旅行查询](https://www.infoq.com/news/2026/05/bintrail-mysql-timetravel/ "Bintrail:使用索引二进制日志的 MySQL 时间旅行查询")
- ##### [QCon AI Boston 2026 中认真对待 AI 生产化的六个会议](https://www.infoq.com/news/2026/05/qconai-boston-2026-talks/ "QCon AI Boston 2026 中认真对待 AI 生产化的六个会议")
- ##### [AI 网关:跨分散团队扩展集中推理](https://www.infoq.com/presentations/ai-gateway-scalability/ "AI 网关:跨分散团队扩展集中推理")
- ##### [A^2 I^2 的讽刺](https://www.infoq.com/presentations/automation-incidents-ai/ "A^2 I^2 的讽刺")
- ##### [OpenTofu 1.12:Terraform 从未发布的功能](https://www.infoq.com/news/2026/05/opentofu-release-terraform/ "OpenTofu 1.12:Terraform 从未发布的功能")
- ##### [待办事项的数学:队列恢复的容量规划](https://www.infoq.com/articles/capacity-planning-queue-recovery/ "待办事项的数学:队列恢复的容量规划")
**InfoQ** 通讯
每周二发送的 InfoQ 上周内容摘要。加入超过 250,000 名高级开发者的社区。查看示例
- 快速了解各种创新者和早期采用者技术上发布的内容概览
- 了解您不知道自己不知道的知识
- 及时了解您感兴趣主题的最新信息
输入您的电子邮件地址
选择您的国家 - [x] 我同意 InfoQ.com 按照此隐私声明处理我的数据。
[首页](https://www.infoq.com/ "Home")[创建账户](https://www.infoq.com/reginit.action "Create account")登录[QCon 大会](http://qconferences.com/ "QCon Conferences")活动[为 InfoQ 投稿](https://www.infoq.com/write-for-infoq/ "Write for InfoQ")[InfoQ 编辑](https://www.infoq.com/infoq-editors/ "InfoQ Editors")[关于 InfoQ](https://www.infoq.com/about-infoq/ "About InfoQ")[关于 C4Media](https://c4media.com/ "About C4Media")[媒体包](https://get.infoq.com/infoq-mediakit/ "Media Kit")[InfoQ 开发者营销博客](https://devmarketing.c4media.com/?utm_source=infoq "InfoQ Developer Marketing Blog")[多元化](https://c4media.com/diversity "Diversity")
#### 活动
- ##### QCon AI 波士顿
2026年6月1-2日
- ##### 在线 InfoQ 架构师认证
2026年6月10日
- ##### 在线 InfoQ AI 工程认证
2026年7月25日
- ##### QCon 旧金山
2026年11月16-20日
#### 关注我们
Youtube 23.2万关注者Linkedin 2.6万关注者Instagram 新RSS 1.9万读者X 57.1万关注者Facebook 2.1万点赞Bluesky 新
#### 保持了解
InfoQ 播客工程文化播客软件架构师通讯
一般反馈 [feedback@infoq.com](mailto:feedback@infoq.com) 广告 [sales@infoq.com](mailto:sales@infoq.com) 编辑 [editors@infoq.com](mailto:editors@infoq.com) 市场 [marketing@infoq.com](mailto:marketing@infoq.com)
InfoQ.com 及所有内容版权 © 2006-2026 C4Media Inc.
关闭
[BT](https://www.infoq.com/int/bt/ "bt")