概要
Pythonプログラムからdatasetを使って、MySQLに接続する。
datasetとは
環境
- Ubuntu 16.04
- Python3.5
- virtualenv環境を想定
- MySQLはDockerコンテナとして稼働
手順
datasetをインストール
sudo apt-get install libmysqlclient-dev
pip install mysqlclient
pip install dataset
MySQL関連
# rootユーザでログイン
mysql -h 127.0.0.1 -uroot -pmysql
# IPアドレスは環境に合わせて
mysql> create user 'user1'@'172.17.0.1' IDENTIFIED BY 'password';
mysql> create database user1;
mysql> grant all on user1.* to 'user1'@'172.17.0.1';
# 作成したユーザでログイン
mysql -h 127.0.0.1 -uuser1 -ppassword
# テーブル作成
mysql> use user1;
mysql> create table foo (id int, name varchar(10));
mysql> insert into foo values(1, "a");
Query OK, 1 row affected (0.03 sec)
mysql> insert into foo values(2, "b");
Query OK, 1 row affected (0.07 sec)
mysql> insert into foo values(3, "c");
Query OK, 1 row affected (0.02 sec)
プログラム
import dataset
db = dataset.connect('mysql://user1:password@127.0.0.1/user1')
table = db['foo']
values = table.all()
for val in values:
print(val['id'], val['name'])