3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【OCI】 Windows PCからBastion経由でOCI MySQL HeatWaveに接続する手順

3
Last updated at Posted at 2026-05-03

はじめに

OCI(Oracle Cloud Infrastructure)でMySQL HeatWave DBシステムを作成したけれど、「どうやって接続するの?」と迷ったことはありませんか?

MySQL HeatWaveのDBシステムはプライベートサブネット内に配置されるのが基本なので、インターネットから直接接続することはできません。本記事では、OCI Bastionサービス 経由でOCI MySQL HeatWaveに接続する手順を解説します。

構成イメージ

参考情報はこちら
https://speakerdeck.com/oracle4engineer/bastion-overview?slide=5
image.png

前提条件

  • OCIアカウントを持っていること
  • MySQL HeatWave DBシステムが作成済みであること
    (参考手順:その9 - クラウドでMySQL Databaseを使う
  • ローカルPCにMySQL接続用のクライアントツールがあること

クライアントツールの準備

今回は、MySQL Shellを想定した手順とします。
https://dev.mysql.com/downloads/shell/

手順

1. Bastionの作成

OCIコンソールで「アイデンティティとセキュリティ」→「要塞」へ移動し、「要塞の作成」をクリックします。
※OCIコンソールのメニューを日本語化している場合、Bastion=要塞

以下のように設定します。

項目 設定値
要塞名 任意
ターゲット仮想クラウド・ネットワーク MySQL DBシステムと同じVCN
ターゲット・サブネット (クライアントPCから接続できるように)パブリックサブネット
CIDRブロック許可リスト 接続元のグローバルIP(例: xxx.xxx.xxx.xxx/32

CIDRブロックは必ず絞ってください。 0.0.0.0/0 を設定すると、世界中からアクセス可能になり危険です。自分のグローバルIPは https://ifconfig.me などで確認できます。

2. Bastionセッションの作成

作成したBastionの詳細画面で「セッション」タブを開き、「セッションの作成」をクリックします。

項目 設定値
セッション・タイプ SSHポート転送セッション
セッション名 任意
ターゲット・ホストへの接続 IPアドレスにチェック 
IPアドレス OCI MySQLのプライベートIPアドレス ※分からない場合は、この設定画面を下にスクロールするとMySQLの設定画面が表示されています
SSHキー・オプション 「SSHキー・ファイルの選択」など、ご自分の方法で公開鍵を登録。キーがない場合は、「SSHキー・ペアの生成」よりダウンロード

セッションが作成されたら、「」メニューから「SSHコマンドのコピー」でコマンドをコピーしておきます。

3. クライアントPC(Windows)からBastion経由での接続をテスト

コピーしたSSHコマンドの <privateKey> 部分を、登録した公開鍵に対応する秘密鍵のパスに書き換えて、ターミナルで実行します。

ssh -i <秘密鍵のパス> -N -L <ローカルポート>:<MySQLのプライベートIPアドレス>:3306 -p 22 <BastionセッションのOCID>@host.bastion.<region>.oci.oraclecloud.com

例:

ssh -i "C:\SAMPLE\SSH_key\ssh-key-2026.key" -N -L 3306:<MySQLのプライベートIPアドレス>:3306 -p 22 <BastionセッションのOCID>@host.bastion.<region>.oci.oraclecloud.com

ローカルに既にMySQLがインストールされている等の理由で、3306ポートが競合する場合は別のポートに変更します。

ポートフォワーディングに成功した場合、以下のように無言の状態が正常です。
image.png

MySQL Shellの接続確認

SSHトンネル用のPowerShellウィンドウはそのままにしておきます。
もう一つのPowershellを立ち上げ、以下のコマンドで接続します。

mysqlsh -u <管理者ユーザー名> -h localhost -P 3306

ログインに成功
image.png

ハマりどころ1: Bastionサブネットからの3306ポート許可

DBシステム側のサブネットのセキュリティ・リスト(またはNSG)で、
Bastionのサブネットからの3306ポート(TCP)が許可されている必要があります。

ハマりどころ2: セッションの有効期限

Bastionセッションには最大3時間の有効期限があります。切れたら新しいセッションを作り直して、新しいSSHコマンドを取得してください。

まとめ

OCI Bastion経由でMySQL HeatWaveに接続する手順を紹介しました。
MySQL HeatWaveを使い始めるときの参考になれば嬉しいです!

参考リンク

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?