2021年12月17日金曜日

Android端末&UserLAnd上のUbuntu20.04にpipenvをインストールして、python仮想環境からローカルのMariaDBにアクセスする

Android端末&UserLAnd上のUbuntu20.04にpipenvをインストールして、python仮想環境からローカルのMariaDBにアクセスするには、以下の手順を実行します。

実行手順

1. MariaDBのインストール
以下のページを参考に、MariaDBをインストールします。
Android端末&UserLAnd上のUbuntu20.04にMariaDBをインストールする

2. テスト用DBとユーザの作成
以下のコマンドを実行して、testユーザとtestデータベースを作成します。
mysql -uroot -proot -e "CREATE DATABASE test DEFAULT CHARACTER SET utf8mb4;"

mysql -uroot -proot -e "CREATE USER test@localhost IDENTIFIED BY 'test';"
※パスワードは適宜変更してください。

mysql -uroot -proot -e "GRANT ALL PRIVILEGES ON test.* TO 'test'@'localhost';"

mysql -uroot -proot -e "FLUSH PRIVILEGES;"

3. pipenvのインストール
sudo apt-get update

sudo apt-get -y install python3-pip python3-distutils python3-dev 

sudo pip3 install --upgrade setuptools

sudo pip3 install pipenv

echo "export PIPENV_VENV_IN_PROJECT=true" >> ~/.bashrc

source ~/.bashrc

4. PyMySQLをインストールしたpython仮想環境の作成
以下のコマンドを実行してpython3とPyMySQLモジュールのインストールされた環境を作成します。
mkdir -p ~/pythonmariadb

cd ~/pythonmariadb

pipenv --python 3

pipenv install PyMySQL

pipenv shell

5. ソースコードの作成と実行
以下のようなPyMySQLを使用してMariaDBに接続し、バージョン情報を取得するプログラムを作成し、実行します。
test.py
import pymysql.cursors

conn = pymysql.connect(host='localhost', user='test', password='test', db='test', cursorclass=pymysql.cursors.DictCursor)

with conn.cursor() as cur:
    sql = "SELECT version()"
    cur.execute(sql)
    result = cur.fetchall()
    print(result)

conn.close()

・実行コマンド
python test.py
[{'version()': '10.3.32-MariaDB-0ubuntu0.20.04.1'}]

動作環境

Xperia Ace2

0 件のコメント:

コメントを投稿