Если я запускаю миграцию с Django South, и она дает сбой, повреждена ли моя база данных? - PullRequest
2 голосов
/ 17 марта 2012

Я играю с Django South, и меня впечатлила его мощь, но в процессе некоторых миграций мне удалось сделать то, что вызывает ошибки в середине миграций.Такие вещи, как наличие синтаксической ошибки или исключения во время выполнения в файле миграции данных, решение о том, что я на самом деле не хочу что-то делать, и нажатие ctrl-c во время миграции и преждевременный прерывание и т. Д.

Я используюMySQL как база данных.Нужно ли беспокоиться о целостности моей базы данных, когда что-то не так с Югом?Гарантируют ли транзакции, что все проблемы откатились по ошибке?

1 Ответ

5 голосов
/ 17 марта 2012

База данных должна хорошо откатиться:

http://south.aeracode.org/docs/migrationstructure.html#transactions

В любом случае, вы не можете просто проверить таблицы БД?

Пара замечаний:

  • Вы можете распечатать существующие миграции с помощью

    manage.py migrate --list

    Здесь также показано, какие миграции были применены

  • Вы также можете вручную откатиться к предыдущей миграции, используя

    manage.py migrate0010

    где 10 - последняя безопасная миграция

Надеюсь, это поможет

...