Cloud SQL Auth Proxy を使用して Cloud SQL for PostgreSQL に接続する
このページでは、Cloud SQL Auth Proxy を使用して、ローカルテスト環境から Cloud SQL に接続する方法を示します。Cloud SQL Auth Proxy を使用すると、承認済みネットワークや SSL の構成を必要とせずに、安全に Cloud SQL インスタンスへアクセスできます。Cloud SQL Auth Proxy を使用すると、Cloud SQL インスタンスに安全に接続できます。
このページの手順はテスト環境専用です。本番環境では使用しないでください。本番環境に必要な構成の詳細については、本番環境で Cloud SQL Auth Proxy を使用すると Cloud SQL Auth Proxy を使用して接続するをご覧ください。
始める前に
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
必要な Google Cloud APIs を有効にします。
コンソール
Google Cloud コンソールの [API] ページに移動します。
Cloud SQL Admin API を有効にします。gcloud
次のボタンをクリックして Cloud Shell を開きます。これにより、ブラウザから Google Cloud リソースにコマンドラインで直接アクセスできます。Cloud Shell を使用して、このクイックスタートで紹介する
gcloud
コマンドを実行できます。Cloud Shell を使用して、次のように
gcloud services enable
コマンドを実行し、このクイックスタートに必要な API を有効にします。gcloud services enable sqladmin.googleapis.com
このコマンドにより、次の API が有効になります。
- Cloud SQL Admin API
Cloud SQL インスタンスを作成する
このクイックスタートでは、Google Cloud コンソールを使用します。gcloud CLI、cURL、PowerShell を使用するには、インスタンスの作成をご覧ください。
-
Google Cloud コンソールで Cloud SQL の [インスタンス] ページに移動します。
- [インスタンスを作成] をクリックします。
- [PostgreSQL を選択] をクリックします。
- [インスタンス ID] フィールドに「
myinstance
」と入力します。 - [パスワード] フィールドに、
postgres
ユーザーのパスワードを入力します。 [インスタンスを作成] をクリックします。
インスタンスのリストに戻ります。新しいインスタンスをすぐにクリックして詳細を表示できますが、初期化と起動が完了するまで他のオペレーションには使用できません。
Debian、Ubuntu
PSQL クライアントをパッケージ管理システムから次のようにインストールします。
sudo apt-get update sudo apt-get install postgresql-client
CentOS / RHEL
PSQL クライアントをパッケージ管理システムから次のようにインストールします。
sudo yum install postgresql
openSUSE
PSQL クライアントをパッケージ管理システムから次のようにインストールします。
sudo zypper install postgresql
他のプラットフォーム
- ご使用のプラットフォームに対応する PostgreSQL Core Distribution を、PostgreSQL のダウンロード ページからダウンロードします。
Core Distribution には、PSQL クライアントが含まれています。 - ダウンロード ページの指示に沿って、PostgreSQL データベースをインストールします。
Cloud SQL Auth Proxy クライアントをインストールする
ダウンロードする Cloud SQL Auth Proxy バイナリは、使用しているオペレーティング システムと、オペレーティング システムが 32 ビットと 64 ビットのいずれのカーネルを使用しているかによって異なります。新しいハードウェアのほとんどは 64 ビットのカーネルを使用しています。お使いのマシンが 32 ビットと 64 ビットのどちらのカーネルを実行しているかわからない場合は、Linux または macOS で uname -a
コマンドを使用します。Windows の場合は、Windows のドキュメントをご覧ください。
Linux 64 ビット
- Cloud SQL Auth Proxy をダウンロードします。
curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.14.0/cloud-sql-proxy.linux.amd64
- Cloud SQL Auth Proxy を動作可能にします。
chmod +x cloud-sql-proxy
Linux 32 ビット
- Cloud SQL Auth Proxy をダウンロードします。
curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.14.0/cloud-sql-proxy.linux.386
curl
コマンドが見つからない場合は、sudo apt install curl
を実行してダウンロード コマンドを繰り返します。- Cloud SQL Auth Proxy を動作可能にします。
chmod +x cloud-sql-proxy
macOS 64 ビット
- Cloud SQL Auth Proxy をダウンロードします。
curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.14.0/cloud-sql-proxy.darwin.amd64
- Cloud SQL Auth Proxy を動作可能にします。
chmod +x cloud-sql-proxy
Mac M1
- Cloud SQL Auth Proxy をダウンロードします。
curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.14.0/cloud-sql-proxy.darwin.arm64
- Cloud SQL Auth Proxy を動作可能にします。
chmod +x cloud-sql-proxy
Windows 64 ビット
https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.14.0/cloud-sql-proxy.x64.exe を右クリックして [名前を付けてリンク先を保存] を選択し、Cloud SQL Auth Proxy をダウンロードします。ファイル名をcloud-sql-proxy.exe
に変更します。Windows 32 ビット
https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.14.0/cloud-sql-proxy.x86.exe を右クリックして [名前を付けてリンク先を保存] を選択し、Cloud SQL Auth Proxy をダウンロードします。ファイル名をcloud-sql-proxy.exe
に変更します。Cloud SQL Auth Proxy Docker イメージ
Cloud SQL Auth Proxy には、distroless
、alpine
、buster
など、さまざまなコンテナ イメージがあります。デフォルトの Cloud SQL Auth Proxy コンテナ イメージでは、シェルを含まない distroless
を使用します。シェルまたは関連ツールが必要な場合は、alpine
または buster
を基盤とするイメージをダウンロードします。詳細については、Cloud SQL Auth Proxy コンテナ イメージをご覧ください。
次のコマンドを使用して、ローカルマシンに最新のイメージを Docker で pull できます。
docker pull gcr.io/cloud-sql-connectors/cloud-sql-proxy:2.14.0
その他の OS
ここに記載されていないその他のオペレーティング システムの場合は、ソースから Cloud SQL Auth Proxy をコンパイルできます。インスタンス接続名を取得する
-
Google Cloud コンソールで Cloud SQL の [インスタンス] ページに移動します。
- インスタンス名をクリックして [概要] ページを開きます。
- [このインスタンスと接続] セクションで接続名をコピーします。接続名の形式は
projectID:region:instanceID
です。
Cloud SQL Auth Proxy を起動する
専用のターミナルで Cloud SQL Auth Proxy を起動して、その出力をモニタリングできるようにします。INSTANCE_CONNECTION_NAME
を、前のステップでコピーしたインスタンス接続名に置き換えます。
Linux 環境の場合は、次のコマンドを使用して Cloud SQL Auth Proxy を起動します。
./cloud-sql-proxy INSTANCE_CONNECTION_NAME
Windows の PowerShell では、次のコマンドを使用して Cloud SQL Auth Proxy を起動します。
.\cloud-sql-proxy.exe INSTANCE_CONNECTION_NAME
次のようなメッセージが表示されます。
Listening on 127.0.0.1:5432 for INSTANCE_CONNECTION_NAME Ready for new connections
次のコマンドを実行します。DB_NAME は、Cloud SQL データベースの名前に置き換えます。
psql "host=127.0.0.1 port=5432 sslmode=disable dbname=DB_NAME user=postgres"
パスワード入力のプロンプトで、PostgreSQL アカウントのパスワードを入力します。
PostgreSQL のプロンプトが表示されることを確認します。psql クライアントを使用してデータベースに接続しています。
Cloud SQL Auth Proxy を起動したターミナル ウィンドウに戻ります。次のようなメッセージが表示されます。
New connection for myInstance
クリーンアップ
このページで使用したリソースについて、Google Cloud アカウントに課金されないようにするには、次の操作を行います。
-
Google Cloud コンソールで Cloud SQL の [インスタンス] ページに移動します。
myinstance
インスタンスを選択して [インスタンスの詳細] ページを開きます。- ページ上部にあるアイコンバーで、[削除] をクリックします。
- インスタンスの削除ウィンドウでインスタンスの名前を入力し、[削除] をクリックします。
省略可能なクリーンアップ手順
このクイックスタートで有効にした API を使用しない場合は、無効にすることができます。
- このクイックスタートで有効にした API:
- Cloud SQL Admin API
Google Cloud コンソールの [API] ページに移動します。
Cloud SQL Admin API を選択し、[API を無効にする] ボタンをクリックします。
次のステップ
Cloud SQL Auth Proxy の詳細を確認する。
- その他の接続オプションについて確認する。