Cloud Shell から Cloud SQL for PostgreSQL に接続する
このページでは、PostgreSQL インスタンスを作成して接続し、Google Cloud Console とクライアントを使用して基本的な SQL オペレーションを実行する方法を説明します。このクイックスタートで作成されるリソースにかかる費用は、クリーンアップを含む手順を適切なタイミングで完了した場合、通常 1 ドル未満です。
始める前に
- 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.
-
Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。
-
Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。
-
必要な Google Cloud APIs を有効にします。
Console
Google Cloud Console の [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
ユーザーのパスワードを入力します。[作成] をクリックします。
インスタンスのリストに戻ります。新しいインスタンスをすぐにクリックして詳細を表示できますが、初期化と起動が完了するまで他のオペレーションには使用できません。
インスタンスへの接続
このクイックスタートでは、Cloud Shell の psql クライアントを使用してインスタンスに接続します。
- オプション: PostgreSQL のローカル インスタンスを実行している場合は、そのインスタンスを停止した後、Cloud SQL インスタンスに接続します。そうしない場合、
address already in use
などのエラーが発生する可能性があります。 Google Cloud Console で、右上隅の Cloud Shell アイコン(
)をクリックします。
Cloud Shell の初期化が完了すると、次のようなメッセージが表示されます。
Welcome to Cloud Shell! Type "help" to get started. Your Cloud Platform project in this session is set to sample-project. Use "gcloud config set project [PROJECT_ID]" to change to a different project. username@sample-project:~ (sample-project)$
Cloud Shell プロンプトで、Cloud SQL インスタンスに接続します。次のように
gcloud sql connect
コマンドを使用します。インスタンス名が異なる場合は、インスタンス名を置き換えてください。gcloud sql connect myinstance --user=postgres
- メッセージ ボックスで [承認] をクリックして、Cloud Shell に API 呼び出しを承認します。
ご使用の IP を受信接続の許可リストに登録していることを示すメッセージが表示され、その後、パスワードの入力を求めるプロンプトが表示されます。
postgres のパスワードを入力します。
psql
プロンプトが表示されます。
データベースの作成とデータのアップロード
- Cloud SQL インスタンスに SQL データベースを作成します。
CREATE DATABASE guestbook;
- 次のコマンドを入力してパスワードを指定し、データベースに接続します。
\connect guestbook;
- データベースにサンプルデータを挿入します。
CREATE TABLE entries (guestName VARCHAR(255), content VARCHAR(255), entryID SERIAL PRIMARY KEY); INSERT INTO entries (guestName, content) values ('first guest', 'I got here!'); INSERT INTO entries (guestName, content) values ('second guest', 'Me too!');
- データを取得します。
結果は次のとおりです。SELECT * FROM entries;
guestname | content | entryid --------------+-------------+--------- first guest | I got here! | 1 second guest | Me too! | 2 (2 rows) postgres=>
クリーンアップ
このページで使用したリソースについて、Google Cloud アカウントに課金されないようにするには、次の操作を行います。
-
Google Cloud コンソールで Cloud SQL の [インスタンス] ページに移動します。
myinstance
インスタンスを選択して [インスタンスの詳細] ページを開きます。- ページ上部にあるアイコンバーで、[削除] をクリックします。
- インスタンスの削除ウィンドウでインスタンスの名前を入力し、[削除] をクリックします。
省略可能なクリーンアップ手順
このクイックスタートで有効にした API を使用しない場合は、無効にすることができます。
- このクイックスタートで有効にした API:
- Cloud SQL Admin API
Google Cloud Console の [API] ページに移動します。
Cloud SQL Admin API を選択し、[API を無効にする] ボタンをクリックします。
次のステップ
Cloud SQL インスタンスの作成について確認する。
Cloud SQL インスタンスの PostgreSQL ユーザーとデータベースの作成の詳細を確認する。
Cloud SQL の料金情報を確認する。
このクイックスタートでは、Cloud Shell を使用してインスタンスに接続します。Cloud SQL のすべての接続オプションについて学習する。接続方法はネットワーク構成によって異なります。たとえば、Cloud SQL インスタンスの IP アドレスがパブリックかプライベートかによって異なります。パブリック IP アドレスまたはプライベート IP アドレスを使用して Cloud SQL インスタンスを構成する方法を確認する。
他の Google Cloud アプリケーションから Cloud SQL インスタンスに接続する方法を学習する。