仕事でwindowsマシンに HeidiSQL を使って Amazon RDS の MySQL データベースに SSH 経由で接続する環境を構築したのだけど嵌ったので同じようなことで躓いている方への参考と自分用のメモにログを残しておこうと思う。
この記事では『AWS RDS MySQL データベースに HeidiSQL で SSH 接続するやり方』の方法だけについて書いているので、AWS上にEC2やRDSの構築が済んでて SSH 接続が可能な状態を前提としてすすめていきます。
HeidiSQL とは
HeidiSQL は無料で使えるデータベース接続ソフトです。windowsマシンを使う場合この HeidiSQL はつかやすいのでおすすめでもある。
主な利用用途としてはサーバー上のデータベースに接続して新しくデータベースの構築やユーザー、テーブルの作成やデータの登録、更新、削除といった一通りの操作をGUIですることができます。SQL文がわからなくても使えるので便利です。※SQL文も実行可能です。
HeidiSQL の良い所は操作しやすい UI につきると思います。
以下のリンクからインストーラをダウンロードして、インストールしましょう。
HeidiSQL の設定

これが HeidiSQL のインストールが終わって起動後の画面。左下の新規ボタンをクリックして接続したいデータベース情報を入れていきます。
設定
RDSに接続する際の設定タブの内容は以下を参照。
ネットワーク種別 | MySQL(SSH tunnel)を選択 |
---|---|
ホスト名 / IP | Amazon RDS の Endpoint を指定 |
ユーザー | データベースのユーザー名 |
パスワード | データベースのパスワード |
ポート | データベースのポート番号(3306) |
指定する必要がなければデータベースとコメント欄は入力しないでOKです。
SSH トンネル
EC2 に接続するために SSH 情報を入力しましょう。僕は SSH トンネルの設定で躓いた。難しく考えすぎてputtyであちゃこちゃやって接続できね〜となった。
普段使い慣れていないマシンとツールだったのでと言い訳をしておこう。指示通りやればなんのことはなく簡単だった。(笑)
plink.exe | plink.exe をダウンロードというリンクを押してダウンロードすればOK!ダウンロードが出来たらファイルと虫眼鏡のアイコンをクリックしてパスを指定。 |
---|---|
SSHホスト + ポート | EC2 の SSH ホストとポート番号を指定します。 |
ユーザー名 | EC2 に接続する時のユーザー名を入力。 |
パスワード | SSH のパスワードが設定されている場合は入力。 |
plink.exe のタイムアウト時間 | デフォルトの設定だとタイムアウトするので30にする。 |
秘密鍵ファイル | SSH の鍵ファイルを指定します。ec2 からダウンロードする。 pem 形式だと失敗します。ここも躓いた点。 pem を ppk 形式にPuTTYgenというツールを使って変換して秘密鍵ファイルのあるパスを設定。 |
ローカルポート | こちらはデフォルトの値でOK。 |
上記の設定ができたら完了。
あとは開くのボタンをクリックすればデータベースへ接続できます。
自分にあった HeidiSQL の設定方法の情報がなく一苦労したけどなんてことはなく簡単。
ポイントは以下の3つです。
- pem を ppk に変換すること
- 設定タブのホスト名/IP に Amazon RDS の Endpoint を指定
- plink.exe をダウンロードしてファイルのパスを指定する
会社のスタッフに環境を構築しないといけないのだけどパソコンがwindowsで良いツールがないかなと思われていた方や Amazon RDS for MySQL のデータベースに HeidiSQL で SSH 接続するやり方がわからない方は参考にしてみてください。