5.1から5.7へのMySQLのアップグレード以来ジャンゴ今日更新テーブルのフィールド、。新しいInnoDBはMYISAMから続けることができるの元外部キーを変更する必要があります。
プロセスは少し刺激的ですが、大丈夫、限りプロセスは、明確に考えて、事前にバックアップを作成するよう、それは大きな問題を欠いています。
MySQLの設定では、ジャンゴ:
DATABASES = { ' デフォルト' { ' ENGINE ':' django.db.backends.mysql ' 、 ' NAME ':' PDB ' 、 ' USER ':' ユーザ' 、 ' PASSWORD ':' XXXX ' 、 ' HOST ':' 1.2.3.4 ' 、 "PORT ':'3306 ' ' OPTIONS ':{ " init_command ":" = INNODB default_storage_engine SET; " } } }
第二に、テーブルのストレージエンジンは今カレー見ます
SELECT TABLE_NAME、TABLE_TYPE、エンジンFROM INFORMATION_SCHEMA.TABLES TABLE_SCHEMA = ' xxxxDB ' ORDER BY TABLE_NAMEのDESC。
第三に、データテーブルの変更はすべてのエンジンのMySQL文を生成します
SELECT CONCAT(' TABLEをALTER '、TABLE_NAME、' ENGINE = InnoDBは; ' ) FROM INFORMATION_SCHEMA.TABLES TABLE_SCHEMA = ' xxxxDBを'。
の実装でのMySQLへの第四に、これらのステートメント
... ALTER TABLE A ENGINE = InnoDBは、 ALTER 表 BのENGINE = InnoDBテーブルと、 ALTER TABLE C ENGINE = InnoDBテーブルと、 ALTER TABLE H ENGINE = InnoDBテーブルと、 ALTER 表 Dエンジン= InnoDBテーブルと、 ALTER TABLE E ENGINE = InnoDBのを。 ...
第五に、そしてショーのエンジンを使用し、InnoDBのにデフォルトエンジンでmy.cnfの中で、あなたはMySQLのデフォルトのストレージエンジンを見ることができます。
ショーエンジン
あなたは上記の操作をしたら六は、makemigrationsは、コマンドジャンゴ、何の疑問を移行します。上記の手順で操作がうまくいかなかった場合は、データベースを復元し、その後に動作することを忘れないでください。