SSH を使用してデータベースに接続する
このトピックでは、SSH トンネルと移動ホスト (移動サーバーまたは要塞ホストとも呼ばれます) を介して、分離されたネットワークで実行されているデータベースに接続する方法の例を示します。
PyCharm で 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認証 ドロップダウンから、 User & Password を選択します。
ユーザー フィールドと パスワード フィールドにユーザー資格情報を入力します。
データベース フィールドに、接続先のデータベース名を入力します。 この例では、
testdbです。URL フィールドで、PyCharm は他の接続設定の値を使って JDBC URL を自動生成します。
特定の追加設定を含む JDBC URL を使用する必要がある場合は、それを URL フィールドに貼り付けます。
例:
jdbc:mysql://my-endpoint.amazonaws.com:3306/testdb
接続詳細領域の下部にある 接続のテスト リンクをクリックして、データベースへのテスト接続を開始します。

OK をクリックして、データソースを作成します。
![MySQL[Cloud、SSH]データソースの接続設定 MySQL[Cloud、SSH]データソースの接続設定](https://resources.jetbrains.com/help/img/idea/2026.1/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および5432For file-based databases, specify the path to the database file in the corresponding field.認証 ドロップダウンから、 User & Password を選択します。
ユーザー フィールドと パスワード フィールドにユーザー資格情報を入力します。
データベース フィールドに、接続先のデータベース名を入力します。 この例では、
guestです。URL フィールドで、PyCharm は他の接続設定の値を使って JDBC URL を自動生成します。
特定の追加設定を含む JDBC URL を使用する必要がある場合は、それを URL フィールドに貼り付けます。
例:
jdbc:postgresql://172.19.0.3:5432/guest
接続詳細領域の下部にある 接続のテスト リンクをクリックして、データベースへのテスト接続を開始します。

OK をクリックして、データソースを作成します。
![MySQL[Cloud、SSH]データソースの接続設定 MySQL[Cloud、SSH]データソースの接続設定](https://resources.jetbrains.com/help/img/idea/2026.1/db_ssh_connection_example_data_source_docker.png)