2011-02-09 15 views
6

Ho appena implementato alcune modifiche al codice e al database in Heroku e vorrei ripristinarlo. Ho il componente aggiuntivo per le versioni ed è stato in grado di ripristinare il codice ma non il database. Non ho eseguito il backup del database, quindi non posso eseguire un ripristino. Ho provato "heroku rake db: rollback" ma non ha fatto nulla. Qualcuno lo sa?Come eseguire il rollback della migrazione del database su Heroku

+0

il tuo db: rollback funziona in locale? – shingara

+0

Basta eseguire il rollback sul computer locale, quindi eseguire un altro heroku rake db: migrate non funziona? – hahuang65

+0

John Beynon è corretto. I rollback non riportano i dati. Solo lo schema del DB è cambiato. – hahuang65

risposta

12

È necessario eseguire heroku rake db:rollback mentre il codice aggiornato con la migrazione .down viene distribuito su Heroku. Successivamente, è possibile eseguire il rollback del codice .

+0

Questo è stato il passaggio mancante, non è stata eseguita alcuna migrazione per il rollback a causa del rollback del codice, grazie! – Bob

0

db: il rollback eseguirà il rollback dell'ultimo file di migrazione che è stato eseguito - sei sicuro che non sia stato eseguito? Se siete in grado di identificare il numero di migrazioni che si desidera eseguire il rollback per la distribuzione si può fare

rake db:rollback STEP=3 

che corre il metodo verso il basso nei vostri ultimi 3 migrazioni - questo è, naturalmente, se avete codificato il giù migrazione per ripristinare esattamente ciò che è stato fatto nella migrazione up :)

Problemi correlati