【问题标题】:Run same migrations on multiple databases on rake db:migrate在 rake db:migrate 上的多个数据库上运行相同的迁移
【发布时间】:2013-10-25 21:12:50
【问题描述】:

我们正在使用 rails 应用程序,并且在实时表中有大量数据。因此,我们开始将数据归档到不同的数据库中,并在实时表中拥有最少的所需数据。但我面临的唯一问题是如何处理架构更改。有没有办法在 rake db:migrate 上同时在 live db 和archival db 上运行迁移?

关于如何处理这种情况的任何建议,有必要保持两个数据库的架构同步。

谢谢, GG

【问题讨论】:

标签: mysql ruby-on-rails database performance database-migration


【解决方案1】:
desc "Migrate the database through scripts in db/migrate."
namespace :db do
  task :migrate do
    Rake::Task["db:migrate_db1"].invoke
    Rake::Task["db:migrate_db2"].invoke
  end

  task :migrate_db1 do
    ActiveRecord::Base.establish_connection DB1_CONF
    ActiveRecord::Migrator.migrate("db/migrate/db1/")
  end

  task :migrate_db2 do
    ActiveRecord::Base.establish_connection DB2_CONF
    ActiveRecord::Migrator.migrate("db/migrate/db2/")
  end
end

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-08-27
  • 2017-05-25
  • 2011-10-29
  • 2012-02-05
  • 1970-01-01
  • 1970-01-01
  • 2014-11-15
相关资源
最近更新 更多