4

После выполнения некоторых исследований, кажется, что Rails имеет явную, элегантную поддержку нескольких соединений DB: http://www.rubynaut.net/articles/2008/05/31/how-to-access-multiple-database-in-rails.htmlНесколько БД из одного приложения Rails: что такое современное состояние?

Однако рельсы, казалось бы, имеет несуществующую поддержку для поддержки этого в миграции: http://www.jamesinman.co.uk/2011/10/serving-one-rails-application-with-multiple-databases/

Так несколько проектов есть подойти, чтобы заполнить пробелы. пример: http://kovyrin.github.com/db-charmer/

Я что-то упустил? Странно, что подключение к нескольким базам данных легко и элегантно, но для их миграции требуется взломать.

+0

Хммм, никогда не приходило мне в голову. У меня есть приложения с рельсами с локальной базой данных, что они запускают миграцию и другие подключения к базам данных, которые являются устаревшими или управляются другим приложением, что мне никогда не понадобится выполнять миграции. Выполнение миграции между двумя или несколькими базами данных похоже на наличие нескольких локальных баз данных, и я не понимаю, зачем вам это нужно, а не одной базы данных со всеми вашими локальными данными. Но это только я. Я никогда не рассматривал это как вопрос. –

+0

Чтобы сегментировать данные для масштабируемости. –

+0

Несомненно, я просто объяснял свой опыт, который может пролить свет на то, почему было трудно найти предоставленное решение. :) –

ответ

1

Ах, это очень просто на самом деле :-D

В Rails 3:

class CreateAPIRequestLogs < ActiveRecord::Migration 
    def connection 
    SpecialClassWithAlternativeDB.connection 
    end 

    def change 
    # ... your migration code ... 
    end 
end 

Однако, похоже, откаты не работают должным образом.

Кроме того, версия схемы по-прежнему хранится в первичной базе данных.

 Смежные вопросы

  • Нет связанных вопросов^_^