FlaskアプリからMySQLに接続できなくなった

これまで、データベースにSQLite3を使ってFlaskアプリを開発してたんですが、データ件数が増えるとSELECT文の実行だけでもかなりパフォーマンスが落ちるので、さすがに本番環境では使うことができません。

また、開発環境においても、本番環境並みのデータ件数を揃えて実行すると、開発効率が落ちます。

というわけで、FlaskからMySQLにアクセスする方法を模索しました。

その方法は、後日別の記事に書くことにして、重大な問題が発生しました。

なんと、昨日までちゃんとMySQLに接続できていたのに、接続できなくなっているのです。

Flaskアプリを実行すると、以下のようなエラーが表示されます。

〜省略〜
raise RuntimeError("'cryptography' package is required for sha256_password or caching_sha2_password auth methods") 
RuntimeError: 'cryptography' package is required for sha256_password or caching_sha2_password auth methods
〜省略〜

「cryptographyパッケージがない」と言われていますが、そもそも昨日動いていた時は、そんなパッケージがない状態で動いていました。

とりあえず、以下のコマンドでcryptographyパッケージをインストール。

$ pip install cryptography

そして、Flaskアプリを再起動したところ、今度はちゃんと動きました。

なんか気持ち悪いけど、まあいいでしょう。
(´・ω・`)