LoginSignup
3
0

More than 1 year has passed since last update.

AWS EC2インスタンス内のDBを ローカル環境のDbeaver上で表示させる方法

Last updated at Posted at 2023-01-03

概要

AWS(EC2 ,RDS CLOUD9) + Ruby on Railsでプロジェクト作成した。
上記プロジェクトで使用しているDB(Mysql)を
Windows(ローカル環境)のDbeaver上でRails プロジェクトのDBを表示させる例を示す

前提条件

具体的に必要な内容 (省略)

・ローカル環境を用意(Windows)
・Dbeaver をWindows内にインストール
・AWS準備
・AWS EC2(Amazon Linux2)を開発環境・本番環境それぞれに作成
・ElasticIPを作成し 各EC2インスタンスに割り当てておく
・開発環境 (統合開発環境として AWS CLOUD9を使用)内でRailsプロジェクト作成
・DB(RDS含む)を準備
・「ローカル環境→開発環境」「ローカル環境→本番環境」「開発環境→本番環境」
 それぞれへssh接続で移動できるための鍵・設定準備

具体的内容

1.開発環境情報

EC2-インスタンス使用 (Amazon Linux)
-インスタンスid: i-〇〇〇〇〇...
-EC2ユーザー名: ec2-user(デフォルトのまま :変更可)
-パブリック IPv4 アドレス:〇〇.〇〇〇.〇〇.〇〇
-Elastic IP: 上記に同じ

統合開発環境 AWS cloud9を使用
DB: sqlite3 (Railsでの標準DB)

2.本番環境情報

EC2-インスタンス使用 (Amazon Linux)
-インスタンスid: i-△△△△...
-EC2ユーザー名: ec2-user(デフォルトのまま :変更可)
-パブリック IPv4 アドレス:△△.△△△.△△.△△
-Elastic IP: 上記に同じ

DB: mysql 使用 (AWS RDS使用)
-mysqlユーザー: root
-mysqlパスワード: □□□□...
-使用データベース(スキーマ)名: ××××...

AWS RDS情報
-DB識別子: rds-mysql-server
-エンドポイント: rds-mysql-server.△△△△△.ap-northeast-1.rds.amazonaws.com
-ポート: 3306(mysqlで使うポート)  

RDS情報.png

3. ssh・鍵関連内容

①ssh接続させるための鍵ファイル(.pem)の作成 (作成時に〇〇.pem.pub ファイルも作成)
②接続先の 「~/.ssh/authorized_keys」 ファイルに作成した鍵ファイル(〇〇.pem.pub)
の内容を貼りつけておく

参考

CLoud9開発環境(amazon Linux)内の/.sshディレクトリに
鍵ファイル(practice-aws.pem)を作成済み
これがあることで開発環境→本番環境にssh接続で入ることができる

(開発環境のcloud9(Amazon Linux)内からEC2インスタンスにssh接続するコマンド)
ssh -i ~/.ssh/practice-aws.pem ec2-user@△△.△△△.△△.△△

開発環境内の鍵ファイル(practice-aws.pem)と同等のファイルをWindows ディレクトリ内にも置いておく

Windows 鍵ファイル置き場.png

※これをすることでローカル環境→本番環境にssh接続で移動できる

DB(本番環境: Mysql RDS)を見るために必要な操作

1-1.Dbeaver上で本番環境のDBを見るDbeaverプロジェクト(mysql使用)を作成(省略)

1-2.接続設定→「一般」タブ内設定

Server Host: rds-mysql-server.△△△△△.ap-northeast-1.rds.amazonaws.com
Database: ××××...
ユーザー名: root
パスワード: □□□□...

dbeaver1.png

1-3.接続設定→「SSH」タブ内設定

Host/IP: △△.△△△.△△.△△
User Name: ec2-user
Authentication Method: Private Key
Private Key: Windowsディレクトリ内に置いた鍵ファイルを指定

dbeaver2.png

DB(開発環境: Sqlite3)を見るために必要な操作

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0