Python MySQL/MarriaDBに接続する

  • ---

    LINEで送る
  • -

    ブックマーク
  • -

    pocket
  • -

    rss
python image
イラストACの画像をもとに加工しています。

CentOSに標準インストールされているPython2.7にmysql-connector-pythonパッケージをインストールして、MySQL/MarriaDBに接続します。

Python3系でも使えます。

DBに接続を行うコネクターのインストール環境です。

OSCentOS 7.4.1708
pythonVer2.7。OS標準インストール。
DBMySQL, MariaDB

pipコマンドを使ってインストール

pythonのパッケージ管理であるpipコマンドを使用してインストールします。

pip install mysql-connector

失敗しました。こんなエラーです。

running install

Not Installing MySQL C Extension

running build

# Python architecture: 64-bit
# Python ARCH_64BIT: True
Unable to find Protobuf include directory.

' ----------------------------------------


Command "/usr/bin/python2 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-eUfgeL/mysql-connector/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-HBetzs-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-eUfgeL/mysql-connector/

pipコマンドのインストールでエラコード=1が返されています。

そこでMySQLのサイトを見たところ、手動インストールができるようなので、インストール方法を手動に変えました。

手動インストール

yum install mysql-connector-python

インストール確認

pipコマンドで確認します。

pip list
backports.ssl-match-hostname (3.4.0.2)
certifi (2017.4.17)
chardet (3.0.4)
configobj (4.7.2)
decorator (3.4.0)
idna (2.5)
iniparse (0.4)
kitchen (1.1.1)
mysql-connector-python (1.1.6)

...

今度はうまくいきました。

ぼく
エンジニア
でも、なんでpipではダメだったんだろう?

原因を突き止めたいところですが、目的がちがうのでスルーします。

動作確認

python -c 'import mysql.connector'

このコマンドは、mysql-connector-pythonパッケージをインポートしています。ふだんはソースコードに書くものです。

インポートできれば(エラーが発生しなければ)、パッケージが正常にインストールされています。

正常なら、標準出力になにも表示されません。

最近ITカテゴリでよく読まれている記事です。
blog image

ドメイン取得の意味が分からない人へ。王道の方法を紹介します。

ドメインの登録業者を選ぶのに悩む必要はないです。サイトを簡単に早く公開するには全くいらないことで、むしろ邪魔です。『お名前.com』というサービスは必ず耳にします。そのお名前.comのメリットとデメリットと一緒に、ドメインの意味が分からない人が一番失敗しないドメインの取得方法を紹介します。

tadtadya.com

_

SNSでも記事を配信しています。
コメントを残す

*

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

top
この記事を気に入ったらぜひシェアも!!