mysql - 在大表上运行 ALTER 迁移的建议

标签 mysql ruby-on-rails activerecord database-migration rails-migrations

我们需要向足够大 (2 GB) 的表中添加一组列。运行仅添加 1 列 (add_column) 的迁移需要 690 秒。现在添加 6 列将锁定表将近 1 小时,这是不可取的。

关于如何优雅地完成这项工作有什么建议吗? [从 MySQL 切换到 Postgres 或任何其他平台不是一种选择。]

最佳答案

SoundCloud 开发了一个名为大型强子迁移器 (LHM) 的 gem,它通过使用复制表简化了这些类型的迁移。

希望对您有所帮助。

关于mysql - 在大表上运行 ALTER 迁移的建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21879639/

相关文章:

MYSQL错误: More than one primary key,重复错误

ruby-on-rails - Elasticsearch::Transport::Transport::Errors::BadRequest [400] 创建索引时

postgresql - ActiveRecord find_or_initialize_by 竞争条件

ActiveRecord:使用类方法覆盖属性编写器

mysql - 将字段从 T1 字段 A 复制到 T2 字段 A where(if or when) T1 field B = T2 field B (mysql)

servlet程序抛出java.lang.nullpointer异常

ruby-on-rails - 使用 Rails 的新 recaptcha 的工作示例?

ruby-on-rails - 将 Rails Form Helpers 与序列化的自定义类一起使用

MySQL 错误 : Illegal mix of collations for operation 'UNION'

ruby-on-rails - pry 控制台中是否有类似 grep 的功能?