Compute Engine から Cloud SQL for SQL Server に接続する

Google Cloud コンソールとクライアント アプリケーションを使用して、SQL Server インスタンスに接続している Linux または Windows ベースの Compute Engine VM インスタンスにサンプルアプリをデプロイする方法を学習します。

すべてのステップを適切なタイミングで完了した場合、通常、このクイックスタートで作成されるリソースにかかる費用は 1 ドル(USD)未満です。

始める前に

  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.
  2. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  3. Google Cloud プロジェクトで課金が有効になっていることを確認します

  4. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  5. Google Cloud プロジェクトで課金が有効になっていることを確認します

  6. Compute Engine VM インスタンスで Cloud SQL サンプルアプリを実行するために必要な Cloud APIs を有効にします。

    コンソール

    [API を有効にする] ボタンをクリックして、このクイックスタートで必要な API を有効にします。

    API を有効にする

    これにより、次の API が有効になります。

    • Cloud SQL Admin API

    gcloud

    gcloud CLIインストールします。これにより、コマンドラインから Google Cloud リソースにアクセスできます。gcloud CLI を使用して、このクイックスタートで紹介する gcloud CLI コマンドを実行します。すべてのコマンドは、ターミナルまたは Powershell ウィンドウで実行するようにフォーマットされています。

    次の gcloud コマンドを実行します。

    gcloud services enable sqladmin.googleapis.com

    このコマンドにより、次の API が有効になります。

    • Cloud SQL Admin API

Cloud SQL の設定

Cloud SQL インスタンスを作成する

データベースの作成

コンソール

  1. Google Cloud コンソールで Cloud SQL の [インスタンス] ページに移動します。

    Cloud SQL の [インスタンス] に移動

  2. [quickstart-instance] を選択します。
  3. [データベース] タブを開きます。
  4. [データベースを作成] をクリックします。
    1. [新しいデータベース] ダイアログで、データベースの名前として「quickstart_db」と入力します。
    2. [作成] をクリックします。

gcloud

gcloud sql databases create コマンドを実行してデータベースを作成します。

gcloud sql databases create quickstart_db --instance=quickstart-instance

Compute Engine サービス アカウントを構成する

Cloud SQL に接続できる Cloud SQL クライアントのロールを持つ Google Cloud サービス アカウントを作成して構成します。サービス アカウントの作成後、サービス アカウントが使用できるようになるまでに 60 秒以上かかる場合があります。

コンソール

サービス アカウントを作成する

  1. Google Cloud コンソールで [サービス アカウントの作成] ページに移動します。
  2. [サービス アカウントの作成] に移動

  3. Google Cloud プロジェクトを選択します。
  4. サービス アカウント名として「quickstart-service-account」と入力します。
  5. (省略可)サービス アカウントの説明を入力します。
  6. [作成して続行] をクリックして、次の手順に進みます。
  7. プロジェクトのサービス アカウントに付与する Cloud SQL クライアントのロールを選択します。
  8. [別のロールを追加] をクリックして、プロジェクトのサービス アカウントに付与するストレージ オブジェクト閲覧者のロールを選択します。
  9. [続行] をクリックします。
  10. [完了] をクリックして、サービス アカウントの作成を完了します。

gcloud

サービス アカウントを作成する

  1. サービス アカウントを作成するには、gcloud iam service-accounts create コマンドを実行します。
  2. gcloud iam service-accounts create quickstart-service-account --description="DESCRIPTION" --display-name="quickstart-service-account"

    次の値を置き換えます。

    • DESCRIPTION: サービスの説明(省略可)
  3. サービス アカウントにプロジェクトの Cloud SQL クライアントのロールとストレージ オブジェクト閲覧者のロールを付与するには、gcloud projects add-iam-policy-binding コマンドを実行します。PROJECT_ID は、実際の Google Cloud プロジェクト ID に置き換えます。
    gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:quickstart-service-account@PROJECT_ID.iam.gserviceaccount.com" --role="roles/cloudsql.client" --role="roles/storage.objectViewer"

Compute Engine VM インスタンスを作成する

Cloud SQL に接続するサンプル ウェブアプリをホストする Compute Engine VM インスタンスを作成します。

Compute Engine VM インスタンスにアクセスする

プログラミング言語の開発環境の設定

任意のプログラミング言語の Compute Engine VM インスタンスの開発環境をセットアップします。

Git をインストールする

オープンソースのバージョン管理システムである Git を Compute Engine VM インスタンスにインストールします。

サンプルアプリのクローンを作成する

git clone コマンドを使用して、Compute Engine VM インスタンスにサンプルアプリのクローンを作成します。

Go

Compute Engine VM インスタンスで、新しいターミナルか Powershell ウィンドウを開きます。次のコマンドを実行して Go サンプルアプリのクローンを作成し、サンプルアプリを含むディレクトリに移動します。

  1. サンプルアプリのクローンを作成します。
    git clone https://github.com/GoogleCloudPlatform/golang-samples
  2. サンプルアプリを含むディレクトリに移動します。
    cd golang-samples/cloudsql/sqlserver/database-sql

Java

Compute Engine VM インスタンスで、新しいターミナルか Powershell ウィンドウを開きます。次のコマンドを実行して Java サンプルアプリのクローンを作成し、サンプルアプリを含むディレクトリに移動します。

  1. サンプルアプリのクローンを作成します。
    git clone https://github.com/GoogleCloudPlatform/java-docs-samples
  2. サンプルアプリを含むディレクトリに移動します。
    cd java-docs-samples/cloud-sql/sqlserver/servlet

Node.js

Compute Engine VM インスタンスで、新しいターミナルか Powershell ウィンドウを開きます。次のコマンドを実行して Node.js サンプルアプリのクローンを作成し、サンプルアプリを含むディレクトリに移動します。

  1. サンプルアプリのクローンを作成します。
    git clone https://github.com/GoogleCloudPlatform/nodejs-docs-samples
  2. サンプルアプリを含むディレクトリに移動します。
    cd nodejs-docs-samples/cloud-sql/sqlserver/mssql

Python

Compute Engine VM インスタンスで、新しいターミナルか Powershell ウィンドウを開きます。次のコマンドを実行して Python サンプルアプリのクローンを作成し、サンプルアプリを含むディレクトリに移動します。

  1. サンプルアプリのクローンを作成します。
    git clone https://github.com/GoogleCloudPlatform/python-docs-samples
  2. サンプルアプリを含むディレクトリに移動します。
    cd python-docs-samples/cloud-sql/sql-server/sqlalchemy

Cloud SQL サンプルアプリを構成して実行する

クライアント権限を持つ Cloud SQL インスタンス、データベース、サービス アカウントを使用して、Compute Engine VM インスタンスで実行するサンプル アプリケーションを構成し、Cloud SQL インスタンスに接続できるようになりました。

クリーンアップ

このページで使用したリソースについて、Google Cloud アカウントに課金されないようにするには、次の操作を行います。

Cloud SQL インスタンスを削除する

  1. Google Cloud コンソールで Cloud SQL の [インスタンス] ページに移動します。

    Cloud SQL の [インスタンス] に移動

  2. quickstart-instance インスタンスを選択して [インスタンスの詳細] ページを開きます。
  3. ページ上部にあるアイコンバーで、[削除] をクリックします。
  4. [インスタンスの削除] ダイアログ ボックスで「quickstart-instance」と入力し、[削除] をクリックしてインスタンスを削除します。

Compute Engine VM インスタンスを削除する

  1. Google Cloud コンソールで、[VM インスタンス] ページに移動します。

    [VM インスタンス] に移動

  2. quickstart-vm-instance インスタンスを選択して [インスタンスの詳細] ページを開きます。
  3. ページ上部にあるアイコンバーで、[削除] をクリックします。
  4. [削除] をクリックしてインスタンスを削除します。

省略可能なクリーンアップ手順

Compute Engine default サービス アカウントに割り当てた Cloud SQL クライアントのロールを使用しない場合は、削除できます。

  1. Google Cloud コンソールの [IAM] ページに移動します。

    [IAM] に移動

  2. Compute Engine のデフォルトのサービス アカウントという名前の IAM アカウントの編集アイコン(鉛筆の形)をクリックします。
  3. Cloud SQL クライアントのロールを削除します。
  4. [保存] をクリックします。

このクイックスタートで有効にした API を使用しない場合は、無効にすることができます。

  • このクイックスタートで有効にした API:
    • Cloud SQL Admin API
  1. Google Cloud Console の [API] ページに移動します。

    [API] に移動

  2. 無効にする API を選択し、[API を無効にする] ボタンをクリックします。

次のステップ

必要に応じて、Cloud SQL インスタンスの作成で詳細をご確認ください。

Cloud SQL インスタンスの SQL Server ユーザーデータベースの作成についても確認できます。

料金の詳細については、Cloud SQL for SQL Server の料金をご覧ください。

以下の詳細を確認してください。

また、他の Google Cloud アプリケーションから Cloud SQL インスタンスへの接続についても確認できます。