2010-11-22 15 views
1

Eski bir uygulamadan bir 5k satır MySQL veritabanı yapısına sahibim ve bunu bir Rails db/geçiş dosyası kümesine dönüştürmem gerekiyor.Rails göç dönüşüm MySQL mirası

Bunu yapmak için orada araçlar var mı? Bir şekilde Rails'in eski bir DB'ye bağlanmasını ve şemayı kendisinden çıkarmasını söyleyebilir misiniz?

Teşekkürler.

+0

Eh - basitçe veritabanı (MySQL) bağlanıp ardından tırmık ile bir şema dökümü yapmak olacaktır bundan uzak almak için iyi bir yol gibi görünüyor. – EarlyPoster

+0

Yukarıdaki sorun, Oracle ürünlerinden uzak insanlardan mümkün olduğunca uzak durmaya çalışmamdır. Bu yüzden bir dönüştürücü uygulaması (yazılımı kurmak zorunda kalmadan) hız uğruna ideal olacaktır. – EarlyPoster

cevap

2

Raylar bu kabiliyette yerleşiktir. (Muhtemelen geliştirme ortamı için) database.yml değiştirerek "eski" şemasına

Point sizin raylar uygulaması.

Çalıştır rake db:schema:export. Şimdi Migrations DSL'de db/schema.rb numaralı telefondan uygun bir ruby ​​dosyanız var, bu da bunu agnostik hale getiriyor (bu da satıcıya özgü öğeleri de dışarıda bıraktığını gösteriyor).

Bu makaleyi oku: Migrations – Schema Dumping and You Detaylar için.

1

Eğer veritabanı yapısı ile Modelinizin tüm oluşturursanız, tam olarak zaten gibi kullanabilirsiniz değişiklik olmadan yapabilirsiniz.

Daha fazla ray yapmak için bazı geçişleri yaptıktan sonra.

+0

Shingara, anlıyorum ki hemen kullanabilirim. Ancak mevcut bir veritabanından oluşturulan bir veritabanı şeması daha ideal olacaktır. – EarlyPoster

+0

ActiveRecord'da şema yok, şema veritabanıdır. – shingara

1

Bu, diğer şeylerin yanı sıra DB içe ve size çıkış Raylar göçler izin verir: cevaplar için SQLEditor

+0

Mükemmel görünüyor, maalesef şu anda Gentoo'dayım ve OSX uygulamalarını taklit edemiyorum. – EarlyPoster

1

teşekkür ederiz. @Georges, Gentoo'yu yönetiyorum. @Shingara - tüm modellerimin oluşturulması başlangıçta günler alacaktı.

Sonuçta

maalesef (Bunu yapmanın en hızlı yolu) idi, hızla kurulum MySQL veritabanı sunucusu için. Yapıyı açın. Raylar bir şema dökümü yapar (bir uygulama aracılığıyla). Ardından, yeni veritabanına karar verildiğinde yeni dışa aktarılan veri yapısını kullanın. biri makinenizde herhangi Oracle yazılım yüklemek zorunda kalmadan MySQL yapısı ve veri dökümü dönüştürmek eğer, gerçi -

Bu güzel olması olurdu.