У меня есть проект django с существующим БД, который я действительно хотел бы избежать сброса или прерывания. Я пытаюсь установить South, но при запуске первоначальной миграции python manage.py migrate example
появляется следующая ошибка:
Running migrations for example:
- Migrating forwards to 0001_initial.
> example:0001_initial
! Error found during real run of migration! Aborting.
! Since you have a database that does not support running
! schema-altering statements in transactions, we have had
! to leave it in an interim state between migrations.
! You *might* be able to recover with: = DROP TABLE `example_page` CASCADE; []
= DROP TABLE `example_likebydate` CASCADE; []
= DROP TABLE `example_followbydate` CASCADE; []
! The South developers regret this has happened, and would
! like to gently persuade you to consider a slightly
! easier-to-deal-with DBMS.
! NOTE: The error which caused the migration to fail is further up.
Traceback (most recent call last):
...
File "/usr/local/lib/python2.7/site-packages/MySQLdb/connections.py", line 36, in defaulterrorhandler
raise errorclass, errorvalue
_mysql_exceptions.OperationalError: (1050, "Table 'example_page' already exists")
Таким образом, очевидным решением является запуск заданного SQL, но я не знаю, что это будет делать, и не хочу запускать его, если он отбросит таблицу и потеряет мои данные.
Какие у меня есть варианты, чтобы эта миграция на юг работала без потери данных?