Lightsail(AWS)インスタンス内のDBに、リモート(ローカルPC)からアクセスする

AWS

DBの内容によって、発生状況が変わるケースは多々あるのですが、ローカルにレプリカ的なDBをわざわざ作ったりしてデバッグしていたのですが、手間も増えてきたので、直接アクセスできるようにしました。

自分のIPを確認して、Lightsailからアクセスできるようにする。

確認できるサイト

確認したIPに限定して、LightSailのポート開放。 全部開放するのはセキュリティ上よくない。

デバッグ用のDBアクセスユーザを作成

DBログインして、下記を実行。 

CREATE USER 'debug_user'@'%' IDENTIFIED BY 'your_password';
GRANT ALL ON *.* TO 'debug_user'@'%';

ローカルPCで実行しているPythonコードからアクセス

import pymysql
connection = pymysql.connect(
    host=<アクセスしようとしているインスタンスのIPかホスト名>,
    db=<アクセスしようとしているDB>,
    user=<上記で作成したユーザ(上記例だとdebug_user)>,
    password=<上記で設定したパスワード>,
    port=3306,
    charset='utf8mb4',
    autocommit=True,
)

コメント

タイトルとURLをコピーしました