選択肢が多いと悩むことになりがちです。
PythonからMySQL・MariaDBへ接続する場合も、そのケースかもしれません。
多くのライブラリが用意されていて、悩むことになります
その状況において、安心感を重視するなら、mysql-connector-pythonがおススメとなります。
本記事の内容
- mysql-connector-pythonとは?
- mysql-connector-pythonのシステム要件
- mysql-connector-pythonのインストール
- mysql-connector-pythonの動作確認
それでは、上記に沿って解説していきます。
mysql-connector-pythonのシステム要件
現時点(2021年5月末)でのmysql-connector-pythonの最新バージョンは、8.0.25となります。
この最新バージョンは、2021年5月11日にリリースされています。
サポートOSに関しては、以下を含むクロスプラットフォーム対応となります。
- Windows
- macOS
- Linux
そして、サポート対象となるPythonのバージョンは以下。
- Python 3.6
- Python 3.7
- Python 3.8
- Python 3.9
さすがに、MySQLの公式(Oracle)が開発しているだけはあります。
以下のPythonの公式開発サイクルに準じています。
バージョン | リリース日 | サポート期限 |
3.6 | 2016年12月23日 | 2021年12月 |
3.7 | 2018年6月27日 | 2023年6月 |
3.8 | 2019年10月14日 | 2024年10月 |
3.9 | 2020年10月5日 | 2025年10月 |
上記より、mysql-connector-pythonは基本的にはどんなOSでも動きます。
ただし、Pythonのバージョンが古いのはアウトという感じですね。
以上、mysql-connector-pythonのシステム要件の説明でした。
次は、mysql-connector-pythonをインストールしていきます。
mysql-connector-pythonのインストール
最初に、現状のインストール済みパッケージを確認しておきます。
>pip list Package Version ---------- ------- pip 21.1.2 setuptools 57.0.0
次にするべきことは、pipとsetuptoolsの更新です。
pipコマンドを使う場合、常に以下のコマンドを実行しておきましょう。
python -m pip install --upgrade pip setuptools
では、mysql-connector-pythonインストールです。
mysql-connector-pythonのインストールは、以下のコマンドとなります。
pip install mysql-connector-python
インストールは、すぐに終わります。
では、どんなパッケージがインストールされたのかを確認しましょう。
>pip list Package Version ---------------------- ------- mysql-connector-python 8.0.25 pip 21.1.2 protobuf 3.17.1 setuptools 57.0.0 six 1.16.0
依存するパッケージは、2つだけですね。
そのため、mysql-connector-pythonの導入は比較的容易と言えます。
以上、mysql-connector-pythonのインストールの説明でした。
最後に、mysql-connector-pythonの動作確認を行います。
mysql-connector-pythonの動作確認
シンプルな動作確認用のコードを用意しました。
import mysql.connector # コネクション作成 conn = mysql.connector.connect( host='サーバーのIP', port='3306', user='DBユーザー', password='パスワード', database='データベース名' ) # 接続状況確認 print(conn.is_connected()) # カーソル作成 cur = conn.cursor() # 1件取得 cur.execute("select version()") print(cur.fetchone()) # DB操作終了 cur.close()
上記を実行すると、次の結果が得られます。
もちろん、接続が上手くいった場合です。
True ('10.4.17-MariaDB',)
ソースのコメントを見れば、何を表しているかはわかるでしょう。
この動作確認では、テーブルを用意する必要がありません。
かなりシンプルに動作確認が可能です。
念のために結果を説明しておきます。
「True」と出れば、データベースに正常に接続できています。
そして、そのあとにデータベースのバージョンが表示されます。
mysql-connector-pythonは、MySQLでもMariaDBでも接続可能ということがわかりますね。
以上、mysql-connector-pythonの動作確認の説明でした。