DjangoとMySQLでmigrate時に失敗した時の対応

はじめに

Djangoを使ってMySQLと連携できるように環境作成し始めました。
その際にmigrateで失敗したので残しておきます。

環境

失敗するまでの流れ

この記事を参考に、MySQLと連携する環境を作っていました。
Djangoでmysqlに接続 - Qiita

その後、migrate時にExceptionが発生し、migrateに失敗しました。

python manage.py migrate
・・・略・・・
    raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)
django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3.

対応

mysqlclientのバージョンが古いからか?と思いましたが、一応同じ現象がおきていないかググってみました。
すると、同じ現象で困っているteratailにたどり着きました。
Python - Djangoでmigrateしたいです。|teratail

PyMySQLのissueを見てみると、Django 2.2に対して、pymysqlが対応できていないようです。
Compatibility with Django 2.2 · Issue #790 · PyMySQL/PyMySQL · GitHub

そのため、一旦Django 2.2をアンインストールし、2.1を入れ直しました。 これにより正常にmigrateできるようになりました。