Сейчас проект на SQLite. Задача: переехать на MySQL.
Что я сделал:
1. Установил MySQL
sudo apt-get isntall mysql-server
2. Дампнул инфу
python manage.py dumpdata --natural > datadump.json
(без --natural выдавало
django.db.utils.IntegrityError: Problem installing fixture 'datadump.json': Could not load contenttypes.ContentType(pk=20): (1062, "Duplicate entry 'payments-invitebonus' for key 'django_content_type_app_label_45f3b1d93ec8c61c_uniq'")
)
3. Сменил в settings.py настройки на MySQL
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'ppdb',
'USER': 'dbu',
'PASSWORD': 'dbp',
'HOST': 'localhost', # Or an IP Address that your DB is hosted on
'PORT': '3306',
},
}
4. Создал базу: create database ppdb charset utf8;
5. Попробовал загрузить данные в свежую базу:
python manage.py loaddata datadump.json;
В итоге я получил
django.db.utils.ProgrammingError: Problem installing fixture 'datadump.json': Could not load auth.User(pk=1): (1146, "Table 'ppdb.auth_user_user_permissions' doesn't exist")
Где я ошибся?