PythonでMySQLを操作する - CentOS7/Python2の話
PythonでMySQLを操作したくなった。CentOS7での話。
(目的はTWELITEから送られてくるデータの保存用)
で、以下でインストールしてみた。
# yum install mysql-connector-python
--- 省略 ---
インストール:
mysql-connector-python.noarch 0:1.1.6-1.el7
完了しました!
#
以下、簡単なプログラムを用意した。すでにデータベースとしてTHTを用意してある。
# test.py
import pymysql.cursors
def main():
connection = pymysql.connect(
host='localhost',
user='hit',
password='hit',
db='THT',
charset='utf8',
cursorclass=pymysql.cursors.DictCursor)
connection.close()
if __name__ == "__main__":
main()
で、PythonでDBが操作できるか確認。残念ながら失敗。pymysql.cursorsがimportできない(見つからない)と言ってる。
$ python test.py
Traceback (most recent call last):
File "test.py", line 1, in <module>
import pymysql
ImportError: No module named pymysql
先人の知恵を調べてみるとPyMySQLはpipでインストールするのが良いとの言っている。PythonはPython Package Indexというライブラリーが用意されている。pipはそのライブラリーからインストールするツールということだ。で、pipのインストールから実施。なお、先人の知恵にはEPEL(Extra Packages for Enterprise Linux)を忘れないように!というアドバイスがあり、それに倣った。
$ sudo yum install -y epel-release
$ sudo yum install -y python-pip --enablerepo=epel
$ pip install mysql-connector-python
これでも同じエラーがでる(みつからない)。
で、以下を実行。
$ sudo pip install PyMySQL
これで初めてOKとなった。
ただしOKとなったのはPython2.
$ python test.py
Python3では同じエラーとなった。
$ python3 test.py
ImportError: No module named pymysql
結論:
以下でインストールせよ。ただしPython2でのみ有効。
$ sudo pip install PyMySQL
« mjpg-streamerでUSBカメラをストリーミング配信してみる | トップページ | 回路図エディタ »
「ツールの使い方」カテゴリの記事
- Windows 11で画面をひっくり返す(2023.04.04)
- UISSでの通信 その1(2023.03.23)
- 非Windows11対応PCをWindows11にアップグレードする方法(2023.03.21)
- Windowsデスクトップ上のアプリ画面を全て最小化する方法 - 備忘録(2023.02.24)
- EchoLinkでの接続拒否設定(2023.02.17)
「TWELITE日記」カテゴリの記事
- TKinter afterメソッド:再帰的コールによる自動更新(2021.02.26)
- RaspiとTWELITEの会話の手助け(2021.02.17)
- なかなか会話できないRaspiとTwelite(2021.02.16)
- TWELITE 中継機(2021.01.17)
- TWELITE マルチデバイス構成(2021.01.16)
コメント