SSH を使用してデータベースに接続する
このトピックでは、SSH トンネルと移動ホスト (移動サーバーまたは要塞ホストとも呼ばれます) を介して、分離されたネットワークで実行されているデータベースに接続する方法の例を示します。
IntelliJ IDEA で SSH を使用する方法の詳細については、SSH と SSL のトピックを参照してください。
クラウドデータベース
次の例を考えてみましょう。MySQL データベースはクラウド上でリモート実行されており、接続は中継ホストを介して確立する必要があります。暗号化された秘密鍵ファイルを使用して認証する必要があります。データソースを作成し、データベースへのテスト接続を実行するには、以下の手順を実行します。
データベースツールウィンドウで、ツールバーの
新規をクリックし、 に移動します。
SSH/SSL タブをクリックし、SSH トンネルの使用チェックボックスを選択します。
SSH 構成を追加するをクリックします。
SSH 構成ダイアログで、次の操作を実行して新しい構成を追加します。
追加ボタンをクリックしてください。
ホストおよびポートフィールドで、移動ホストの接続詳細を指定します。例:
my-jump-host.amazonaws.com、22ユーザー名フィールドにユーザー名を入力します。
このチュートリアルでは、暗号化された秘密鍵ファイルと公開鍵ファイルを使用して認証を行います。認証タイプリストからキーペアを選択してください。
秘密鍵ファイルを提供するには、秘密鍵ファイルフィールドで
参照をクリックし、ファイルを選択します。
パスフレーズフィールドにパスフレーズを指定します。
接続のテストをクリックして、移動ホストへのテスト接続を実行します。

SSH 構成ダイアログで、OK をクリックして新しい SSH 構成設定を確認します。
データソースおよびドライバーダイアログの一般タブで、データベース接続の詳細を指定します。
ホストおよびポートフィールドで、データベースサーバーのアドレスとポート番号を指定します。例:
mysql-ssh.my-account.my-region.amazonaws.comおよび3306認証ドロップダウンから、ユーザーパスワードを選択します。
ユーザーフィールドとパスワードフィールドにユーザー資格情報を入力します。
データベースフィールドに、接続先のデータベース名を入力します。この例では、
testdbです。URL フィールドでは、IntelliJ IDEA は他の接続設定の値を使用して JDBC URL を自動的に生成します。
特定の追加設定を含む JDBC URL を使用する必要がある場合は、それを URL フィールドに貼り付けます。
例:
jdbc:mysql://my-endpoint.amazonaws.com:3306/testdb
接続詳細領域の下部にある接続のテストリンクをクリックして、データベースへのテスト接続を開始します。

OK をクリックして、データソースを作成します。
![MySQL [Cloud, SSH] データソースの接続設定 Connection settings of the MySQL [Cloud, SSH] data source](https://resources.jetbrains.com/help/img/idea/2025.3/db_ssh_connection_example_data_source_cloud.png)
Docker コンテナー内のデータベース
この例では、PostgreSQL データベースは Docker コンテナーで実行されており、直接アクセスできません。接続は、別の Docker コンテナーで実行されている移動ホストを介して確立する必要があります。暗号化された秘密鍵ファイルを使用して認証する必要があります。データソースを作成し、データベースへのテスト接続を実行するには、以下の手順を実行してください。
データベースツールウィンドウで、ツールバーの
新規をクリックし、 に移動します。
SSH/SSL タブをクリックし、SSH トンネルの使用チェックボックスを選択します。
SSH 構成を追加するをクリックします。
SSH 構成ダイアログで、次の操作を実行して新しい構成を追加します。
追加ボタンをクリックしてください。
ホストおよびポートフィールドで、Docker コンテナーで実行されている移動ホストの接続詳細を指定します。例:
localhostおよび2222ユーザー名フィールドにユーザー名を入力します。
このチュートリアルでは、暗号化された秘密鍵ファイルと公開鍵ファイルを使用して認証を行います。認証タイプリストからキーペアを選択してください。
秘密鍵ファイルを提供するには、秘密鍵ファイルフィールドで
参照をクリックし、ファイルを選択します。
パスフレーズフィールドにパスフレーズを指定します。
接続のテストをクリックして、移動ホストへのテスト接続を実行します。

SSH 構成ダイアログで、OK をクリックして新しい SSH 構成設定を確認します。
データソースおよびドライバーダイアログの一般タブで、データベース接続の詳細を指定します。
ホストおよびポートフィールドで、データベースサーバーのアドレスとポート番号を指定します。例:
172.19.0.3および5432認証ドロップダウンから、ユーザーパスワードを選択します。
ユーザーフィールドとパスワードフィールドにユーザー資格情報を入力します。
データベースフィールドに、接続先のデータベース名を入力します。この例では、
guestです。URL フィールドでは、IntelliJ IDEA は他の接続設定の値を使用して JDBC URL を自動的に生成します。
特定の追加設定を含む JDBC URL を使用する必要がある場合は、それを URL フィールドに貼り付けます。
例:
jdbc:postgresql://172.19.0.3:5432/guest
接続詳細領域の下部にある接続のテストリンクをクリックして、データベースへのテスト接続を開始します。

OK をクリックして、データソースを作成します。
![MySQL [Cloud, SSH] データソースの接続設定 Connection settings of the MySQL [Cloud, SSH] data source](https://resources.jetbrains.com/help/img/idea/2025.3/db_ssh_connection_example_data_source_docker.png)
関連ページ:
SSH と SSL の構成
データベースへの接続をより安全にするために、一部のサービスでは SSH または SSL の使用が必要です。SSL:次の手順では、ほとんどのデータベースに適した SSL 構成について説明します。一部のデータベースでは、接続を成功させるために別のアプローチを使用する必要があります。DataGrip の資料で Cassandra および Heroku Postgres の構成例を見ることができます。SSL を使用してデータベースに接続する次のいずれかの方法でデータソースのプロパティを開きます。データベースツー...
JDBC ドライバー
JDBC (Java Database Connectivity) ドライバーを使用すると、IDE はデータベースに接続してクエリを実行できます。IntelliJ IDEA には、インストールパッケージのサイズを小さくし、各 IDE バージョンに合わせてドライバーバージョンを最新に保つために、バンドルドライバーは含まれていません。IDE 内および手動で JDBC ドライバーをダウンロードできます。データソースおよびドライバーダイアログ () でデータベース接続用の新しいデータソースを作成すると、...