Amazon ec2とRDSをつなぐ
ec2にMySQLを入れたのですが、開発の過程で外部にデータベースだけ解放したいと思っていたので、RDSを使ってみることにしました。
pythonファイルと、MySQLをつなぐために、mysql-connector-pythonを使いました。
1) mysql-connector-pythonを入れる
$ mkdir lib
$ cd lib
$ git clone https://github.com/mysql/mysql-connector-python.git
$ python setup.py build
$ python setup.py install
2) ちゃんと動くか確認する
$ python -c "import mysql.connector" //一行だけでそのまま実行できる
3) pythonファイル
import mysql.connector
if __name__ == '__main__':
connect = mysql.connector.connect(user='ユーザー名', password='パスワード',host='ホスト名', database='DB名', charset='utf8')
cursor = connect.cursor()d = ''
e = ''
f = ''
statment = 'insert into results (a,b,c) values(%s,%s,%s)'
# insert
cursor.execute(statment, (d,e,f))
connect.commit()
ちなみに、RDSのアクセス権限がわからなかったので、ひとまずダウンロードして共有しましたw
1) アマゾンRDSのデータベースをダウンロード
$ mysqldump -u ユーザー名 -h エンドポイント -p DB名 テーブル名 > results.sql
2) EC2サーバーからローカルにファイルをダウンロードする
~/Desktop/aws-comment $ scp -i ~/.ssh/秘密鍵.pem ユーザー名@IPアドレス:ファイルの場所 保存したいディレクトリ