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,
)


コメント