Cloud SQL コネクタは、Cloud SQL インスタンスへの接続時に暗号化と IAM ベースの承認を提供するライブラリです。Cloud SQL インスタンスへのネットワーク パスがまだ存在しない場合に、ネットワーク パスを提供することはできません。
Cloud SQL インスタンスに接続するその他の方法には、データベース クライアントの使用または Cloud SQL Auth Proxy があります。Cloud SQL インスタンスへの接続に関する詳細については、接続の概要をご覧ください。
このページでは、次の Cloud SQL コネクタについて説明します。
- Cloud SQL Java コネクタ
- Cloud SQL Python コネクタ
始める前に
- Cloud SQL Admin API を有効にします。
- Cloud SQL インスタンスを作成し、デフォルト ユーザーを構成します。
インスタンスの作成の詳細については、インスタンスを作成するをご覧ください。
デフォルト ユーザーの構成については、デフォルト ユーザー アカウントを構成するをご覧ください。
- Cloud SQL インスタンスへの接続に必要なロールと権限を構成します。
設定
Java
Cloud SQL Java コネクタは、Cloud SQL インスタンスへの接続時に IAM ベースの認可と暗号化を提供するライブラリです。Cloud SQL インスタンスへのネットワーク パスがまだ存在しない場合、ネットワーク パスを提供することはできません。
インストール
JDBC と R2DBC のドライバを Cloud SQL Java コネクタで構築して使用する方法については、次のリンク先をご覧ください。
JDBC: JDBC を使用した Postgres への接続。
R2DBC: R2DBC を使用した Postgres への接続。
このライブラリがアプリケーションのコンテキストでどのように使用されるかについては、サンプル アプリケーションをご覧ください。
認証
このライブラリは、アプリケーションのデフォルト認証情報を使用して Cloud SQL サーバーへの接続を認証します。
認証情報をローカルで有効にするには、次の gcloud コマンドを使用します。
gcloud auth application-default login
Intellij との接続
Cloud SQL インスタンスに IntelliJ を接続するためには、ドライバ設定ページの追加のファイルセクションで、ライブラリを依存関係のある jar として追加する必要があります。たとえば、事前にビルドされた fat jar は Cloud SQL Java コネクタのリリースページに表示されます。
Python
Cloud SQL Python コネクタはデータベース ドライバとともに使用できるライブラリです。これにより、十分な権限があるユーザーは IP を手動で許可リストに登録することなく、Cloud SQL データベースに接続できるようになります。SSL 証明書を管理する必要もありません。
現在 PostgreSQL でサポートされているドライバは pg8000 です。
インストール
最新のリリースをインストールする方法については、こちらの手順をご覧ください。
認証
このライブラリは、アプリケーションのデフォルト認証情報を使用して Cloud SQL サーバーへの接続を認証します。
認証情報をローカルで有効にするには、次の gcloud コマンドを使用します。
gcloud auth application-default login
用途
Java
このスニペットをウェブ アプリケーションのコンテキストで表示するには、GitHub の README をご覧ください。
Python
ライブラリの使用方法の詳細については、コネクタの使用方法をご覧ください。GitHub で、接続テストのコード例を確認してください。
トラブルシューティング
ドライバのバージョン
非互換性の問題を回避するため、最新バージョンの Cloud SQL コネクタとデータベース ドライバを使用してください。一部の古いバージョンのドライバはサポートされていません。
接続パス
Cloud SQL コネクタは接続の承認を提供しますが、接続するための新しいパスを提供しません。たとえば、プライベート IP アドレスを使用して Cloud SQL インスタンスに接続するには、アプリケーションがすでに VPC にアクセスできる必要があります。パブリック IP アドレスを使用して Cloud SQL インスタンスに接続するには、アプリケーションが承認済みネットワーク内にある必要があります。
接続の問題をデバッグする
接続の問題については、トラブルシューティングと接続の問題のデバッグのページをご覧ください。
次のステップ
- GitHub の Cloud SQL Java コネクタのホームページを確認する。
- GitHub の Cloud SQL Python コネクタのホームページを確認する。
- Cloud SQL Auth Proxy の詳細を確認する。
- Identity and Access Management(IAM)について確認する。
- サポート用オプションについて学習する。