Ich habe mit meiner Entwicklungsdatenbank mucking und bin bereit, es in die Produktion zu verschieben. Ich habe einige Änderungen außerhalb von Rails vorgenommen, daher habe ich keine Migration für alle meine Änderungen. Ich weiß, dass ich rake db:schema:dump
eine schema.rb-Datei generieren kann, aber kann ich das auf eine bereits aufgefüllte Produktionsdatenbank anwenden, ohne die Daten zu löschen? Ähnliches wie rake db:schema:load
ohne die Daten zu löschen?Rake möglich db: Schema: Laden, ohne die Datenbank zu löschen
Wenn nicht, muss ich nur manuell die Migrationen erstellen, die die Produktions-DB auffangen würden? Wenn ich diese Migrationen mache, werden nicht alle zukünftigen Aufrufe an rake db:migrate
auf der Dev-Box fehlschlagen, weil die Änderung in der Migration bereits in der Dev-DB existiert?
Wie mache ich den Schritt: "Reparieren Sie Ihre lokale dev-Datenbank durch manuelle Zugabe der Zeitstempel zur schema_migrations-Tabelle"? –
Wenn Sie eine Migration hinzufügen, beginnt sie mit einem Zeitstempel wie 'db/migrate/201204131212_create_users.rb'. Diese Zeitstempel sind in der Tabelle 'schema_migrations' gespeichert. Fügen Sie sie einfach mit Ihrem Lieblingswerkzeug in der Datenbank hinzu. – iain
Also, wenn ich den Timestamp der 'schema_migrations' Tabelle hinzufügen und dann' db: migrate' ausführen, wird diese Migration nicht ausgeführt? –