django 1.7 migrate gets error "table already exists"

Atma picture Atma · Sep 19, 2014 · Viewed 92k times · Source

I am trying to apply a migration but am getting the error:

django.db.utils.OperationalError: (1050, "Table 'customers_customer' already exists")

I get this by issuing the following command:

python manage.py migrate

My customer table already exists, so what do I do to let the migration know this, not error out, and run my modification to my model?

I ran this on my local environment with local database with no problem. It is when I pointed my database to production and ran migrate above that I get this error.

Answer

elmonkeylp picture elmonkeylp · Sep 19, 2014

If you have the table created in the database, you can run

python manage.py migrate --fake <appname>

Mark migrations as run without actually running them

Or if you want to avoid some actions in your migration, you can edit the migration file under the app/migrations directory and comment the operations you don't want to do in the migrate execution.

Docs: https://docs.djangoproject.com/en/1.8/topics/migrations/#upgrading-from-south or python manage.py help migrate