ローカル コンピュータから Cloud SQL for SQL Server に接続する

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

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

始める前に

  1. Google Cloud アカウントにログインします。 Google Cloudを初めて使用する場合は、 アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  5. Verify that billing is enabled for your Google Cloud project.

  6. このクイックスタートを完了するために必要な権限があることを確認します
  7. ローカル コンピュータで Cloud SQL サンプルアプリを実行するために必要な Cloud APIs を有効にします。

    コンソール

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

    API を有効にする

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

    • Cloud SQL Admin API
    • IAM API

    gcloud

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

    ターミナルを開いて、次の gcloud コマンドを実行します。

    gcloud services enable sqladmin.googleapis.com iam.googleapis.com

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

    • Cloud SQL Admin API
    • IAM API

必要なロール

ローカル コンピュータから Cloud SQL を設定するために必要な権限を取得するには、作成して接続するプロジェクトに対する次の IAM ロールを付与するよう管理者に依頼してください。

  • インスタンス、データベース、ユーザーの作成または削除: Cloud SQL 管理者ロール(roles/cloudsql.admin)。
  • IAM サービス アカウントを作成または削除する: IAM サービス アカウント管理者ロール(roles/iam.serviceAccountAdmin)。
  • IAM ポリシー バインディングを追加または削除する: プロジェクト IAM 管理者ロール(roles/resourcemanager.projectIamAdmin)。
  • サービス アカウント キーの作成、管理、ローテーション: サービス アカウント キー管理者(roles/iam.serviceAccountKeyAdmin)。

ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。

必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。

Cloud SQL の設定

Cloud SQL インスタンスを作成する手順は次のとおりです。

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

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

  2. [SQL Server] タブを選択し、[サンドボックス] ボックスの [サンドボックス インスタンスを作成] をクリックします。または、[インスタンスを作成] をクリックして、次の操作を行います。
    1. [SQL Server を選択] をクリックします。
    2. [Enterprise] エディションを選択します。
    3. [サンドボックス] プリセットを選択します。
  3. Compute API を有効にするように求められたら、[API を有効にする] ボタンをクリックします。
  4. [インスタンスの情報] セクションで、[インスタンス ID] に「quickstart-instance」と入力します。
  5. SQL Server ユーザーのパスワードを入力します。後で必要になるため、このパスワードをメモしておきます。
  6. [リージョンとゾーンの可用性の選択] セクションで、[シングルゾーン] オプションを選択します。
  7. [インスタンスを作成] をクリックします。

データベースの作成

コンソール

  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

サービス アカウントを設定する

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

コンソール

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

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

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

サービス アカウント キー ファイルを作成してダウンロードする

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

  3. プロジェクトを選択します。
  4. キーを作成する quickstart-service-account サービス アカウントのメールアドレスをクリックします。
  5. [キー] タブをクリックします。
  6. [鍵を追加] プルダウン メニューをクリックして、[新しい鍵を作成] を選択します。
  7. 鍵のタイプとして [JSON] を選択し、[作成] をクリックします。

[作成] をクリックすると、サービス アカウント キーファイルがダウンロードされます。鍵ファイルをダウンロードした後、再度ダウンロードすることはできません。

鍵ファイルは、サービス アカウントとしての認証で使用できるため、安全な場所に保管してください。このファイルは任意の場所に移動できます。名前の変更も可能です。

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"

サービス アカウント キー ファイルを作成してダウンロードする

ローカル コンピュータから作成したサービス アカウントを使用するには、サンプル アプリケーションをサービス アカウントとして認証するためのサービス アカウント キー ファイルが必要です。サービス アカウント キー ファイルを作成してダウンロードするには、gcloud iam service-accounts keys create コマンドを実行します。

gcloud iam service-accounts keys create KEY_FILE --iam-account=quickstart-service-account@PROJECT_ID.iam.gserviceaccount.com

次の値を置き換えます。

  • KEY_FILE: 秘密鍵の新しい出力ファイルのパス(例: ~/sa-private-key.json)。
  • PROJECT_ID: Google Cloud プロジェクト ID。

これで、サービス アカウント キーファイルがローカル コンピュータにダウンロードされます。鍵ファイルをダウンロードした後、再度ダウンロードすることはできません。

鍵ファイルを使うと、誰でもサービス アカウントとしての認証に使用できるため、安全な場所に保管してください。このファイルは任意の場所に移動できます。名前の変更も可能です。

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

ローカル コンピュータに、選択したプログラミング言語の開発環境を設定します。

Go

Go のサンプルアプリを実行する開発環境を設定するには、次の手順を行います。

  1. Go 開発環境の設定ガイドに移動します。
  2. Go のインストール セクションの手順を完了します。

Java

Java のサンプルアプリを実行する開発環境を設定するには、次の手順を行います。

  1. Java 開発環境の設定ガイドに移動します。
  2. JDK(Java Development Kit)をインストールするセクションの手順を完了します。
  3. ビルド自動化ツールをインストールするの手順を完了して、Apache Maven を設定します。

Node.js

Node.js サンプルアプリを実行するように開発環境を設定するには、次の手順を行います。

  1. Node.js 開発環境の設定ガイドに移動します。
  2. Node.js と npm のインストールの手順を完了します。

Python

Python のサンプルアプリを実行する開発環境を設定するには、次の手順を行います。

  1. Python 開発環境の設定ガイドに移動します。
  2. Python のインストールの手順を完了します。

Git のインストール

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

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

git clone コマンドを使用して、ローカル コンピュータにサンプルアプリのクローンを作成します。

Go

次のコマンドを実行して、Go サンプルアプリのクローンをローカル コンピュータに作成し、サンプルアプリを含むディレクトリに移動します。

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

Java

次のコマンドを実行して、Java サンプルアプリのクローンをローカル コンピュータに作成し、サンプルアプリを含むディレクトリに移動します。

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

Node.js

次のコマンドを実行して、Node.js サンプルアプリのクローンをローカル コンピュータに作成し、サンプルアプリを含むディレクトリに移動します。

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

Python

次のコマンドを実行して、Python サンプルアプリのクローンをローカル コンピュータに作成し、サンプルアプリを含むディレクトリに移動します。

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

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

サンプルアプリを構成して実行します。

クリーンアップ

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

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

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

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

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

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

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

    [IAM] に移動

  2. quickstart-service-account という IAM アカウントの編集アイコン(鉛筆のような形)をクリックします。
  3. Cloud SQL クライアントのロールを削除します。
  4. [保存] をクリックします。

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

  • このクイックスタートで有効にした API:
    • Cloud SQL Admin API
    • Identity and Access Management API
  1. Google Cloud コンソールで、[API] ページに移動します。

    [API] に移動

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

次のステップ

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

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

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

以下の詳細を確認する

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