百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
L

lhm

> 编程语言
开源

在线 MySQL 架构迁移

1.9K stars0 点赞1 次浏览
访问官网GitHub

工具介绍

在线 MySQL 架构迁移

[!警告] 此仓库不再被积极维护。我们将其保留在这里以用于存档/参考。

直到您的表达达数百万条记录为止。此时,ALTER TABLE 的锁定性质可能会使您的站点停机一小时或更长时间,而关键表则在迁移期间。为了避免这种情况,开发人员开始围绕问题进行设计,引入联表或将数据移至另一层。随着表的不断增长,开发变得越来越不灵活。更糟糕的是,为优化数据访问而添加或更改索引变得同样困难。

在服务器或引擎层面可以做的事情并不多。可以在 ALTER TABLE 中更改默认值,而无需锁定表。InnoDB 插件提供了在线索引创建的功能,如果您使用此引擎,这非常有用,但只解决了一半的问题。在 SoundCloud,我们很久以前就开始遇到迁移问题,在寻找第三方解决方案后,我们决定自行开发。我们将其命名为 Large Hadron Migrator,它是一个用于在线 ActiveRecord 迁移的宝石。

基本思想是在系统运行期间在线执行迁移,而不锁定表。与 [OAK][0] 和 [facebook tool][1] 不同,我们只使用一个副本表和触发器。大型强子是一个基于测试的 Ruby 解决方案,可以轻松地添加到 ActiveRecord 迁移中。它假定有一个自动递增的数字主键,称为 id,遵循 Rails 规范。与 [twitter 解决方案][2] 不同,它不需要有索引的 updated_at 列。

The Large Hadron collider at CERN

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

Ruby

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言