Cloud9にデフォで入っているPython2.7を使います。(事情あってあえて3を使いません)
MySQLもデフォで入っているやつを使います
まずはインストール
$ sudo pip3 install virtualenv
$ sudo pip install flask
$ sudo pip install flask-sqlalchemy
$ sudo pip install flask-wtf
$ sudo apt-get update
$ sudo apt-get install python-msqldb
$ sudo easy_install mysql-python
https://gist.github.com/gothedistance/ab3f16ac7f9fff73738b53c7e7a5d1e5
https://community.c9.io/t/python-mysqldb-import/10284
http://yuizho.hatenablog.com/entry/2013/06/26/012044
MySQL-CTLでMySQLに接続
起動
$ mysql-ctl start
ログイン
$ mysql-ctl cli
ストップ
$ mysql-ctl stop
文字コード回り
Python(2.7)はこれが一番面倒でした。Python3はデフォでutf8なのでこの作業は必要ありません
DBデフォルト文字コード確認
$ show variables like 'character%';
DBデフォルト文字コード変更
$ alter database DB名 default character set utf8;
$ set character_set_server = utf8;
http://interu.hatenablog.com/entry/2013/11/19/120322
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1438139079
テーブルに対して文字コード変更
$ alter table テーブル名 default character set utf8;
全てのpythonファイルに文字コード指定
pythonファイルの冒頭に追加
#!/usr/bin/env python
# -- coding: utf-8 --
http://uxmilk.jp/8851
http://osksn2.hep.sci.osaka-u.ac.jp/~taku/osx/python/encoding.html
全てのpythonファイルで文字列を扱う際は頭にuをつける
DB URI設定
pythonファイル冒頭でimport osした後
servername : os.getenv('IP')
password:''(空パスワード)
username: os.getenv('C9_USER')
dbport:3306
database: つくったDB名
http://kzky.hatenablog.com/entry/2015/07/05/Flask-SQLAlchemy
https://community.c9.io/t/setting-up-mysql/1718
http://stackoverflow.com/questions/33790932/cloud9-connecting-a-mysql-database-to-python