從 Cloud Run 連線至 SQL Server 適用的 Cloud SQL

瞭解如何使用 Google Cloud 控制台和用戶端應用程式,在 Cloud Run 上部署連結至 SQL Server 執行個體的範例應用程式。

假設您及時完成所有步驟,這項快速入門導覽課程建立的資源通常不到一美元。

事前準備

  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. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure 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.

    Go to project selector

  5. Make sure that billing is enabled for your Google Cloud project.

  6. 啟用在 Cloud Run 上執行 Cloud SQL 範例應用程式所需的 Cloud API。

    控制台

    按一下「Enable APIs」(啟用 API),啟用本快速入門所需的 API。

    啟用 API

    這會啟用下列 API:

    • Compute Engine API
    • Cloud SQL Admin API
    • Cloud Run API
    • Container Registry API
    • Cloud Build API
    • Service Networking API

    gcloud

    按一下下列按鈕開啟 Cloud Shell,直接在瀏覽器中使用指令列存取 Google Cloud 資源。您可以使用 Cloud Shell 執行本快速入門導覽課程中的 gcloud 指令。

    開啟 Cloud Shell

    使用 Cloud Shell 執行下列 gcloud 指令:

    gcloud services enable compute.googleapis.com sqladmin.googleapis.com run.googleapis.com \
    containerregistry.googleapis.com cloudbuild.googleapis.com servicenetworking.googleapis.com

    這個指令會啟用下列 API:

    • Compute Engine API
    • Cloud SQL Admin API
    • Cloud Run API
    • Container Registry API
    • Cloud Build API
    • Service Networking API

設定 Cloud SQL

建立 Cloud SQL 執行個體

建立資料庫

控制台

  1. 前往 Google Cloud 控制台的「Cloud SQL Instances」頁面。

    前往 Cloud SQL 執行個體

  2. 選取「quickstart-instance」。
  3. 在 SQL 導覽選單中,選取「資料庫」
  4. 按一下 [Create database] (建立資料庫)。
    1. 在「New database」(新增資料庫) 對話方塊的「Database name」(資料庫名稱) 欄位中,輸入 quickstart-db
    2. 點選「建立」

gcloud

執行 gcloud sql databases create 指令來建立資料庫。

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

將範例應用程式部署至 Cloud Run

設定 Cloud Run 服務帳戶

設定 Cloud Run 使用的服務帳戶,使其具備「Cloud SQL 用戶端」角色,並擁有連線至 Cloud SQL 的權限。

控制台

  1. 前往 Google Cloud 控制台的「IAM」頁面。

    前往「IAM」頁面

  2. 針對名為「Compute Engine 預設服務帳戶」的服務帳戶,按一下鉛筆圖示。
  3. 按一下「新增其他角色」
  4. 新增名為「Cloud SQL Client」的角色
  5. 按一下 [儲存]

gcloud

  1. 執行下列 gcloud 指令,取得專案的服務帳戶清單:
    gcloud iam service-accounts list
  2. 複製 Compute Engine 服務帳戶電子郵件地址
  3. 執行下列指令,將「Cloud SQL Client」(Cloud SQL 用戶端) 角色新增至 Compute Engine 服務帳戶
    gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \
      --member="serviceAccount:SERVICE_ACCOUNT_EMAIL" \
      --role="roles/cloudsql.client"

設定 Cloud SQL 範例應用程式

有了 Cloud SQL 執行個體、資料庫和具備用戶端權限的服務帳戶,您現在可以設定範例應用程式,連線至 Cloud SQL 執行個體。

部署範例應用程式

將範例部署至 Cloud Run 的步驟,取決於您指派給 Cloud SQL 執行個體的 IP 位址類型。

圖片連結方法會因設定的環境變數而異。

  • 如要使用 TCP 連線,請設定 INSTANCE_HOST 環境變數的值。這個連線方法會採用以環境變數形式設定的憑證和通訊埠
  • 如要使用 Unix Socket 連線,請設定 INSTANCE_UNIX_SOCKET 環境變數的值。

    請勿設定 INSTANCE_HOST 環境變數的值。

    Java 本身不支援 Unix Socket。如果應用程式是以 Java 編寫,則必須使用 Cloud SQL Java 連接器。

  • 如要使用其中一個 Cloud SQL 語言連接器連線,請設定 INSTANCE_CONNECTION_NAME 環境變數的值。

    請勿為下列環境變數設定值:

    • INSTANCE_HOST
    • INSTANCE_UNIX_SOCKET
    • DB_PORT
    • DB_ROOT_CERT
    • DB_CERT
    • DB_KEY
    由於連接器已使用 Cloud SQL 驗證 Proxy 伺服器提供安全連線,因此不會使用這些值, 該伺服器會在通訊埠 3307 上建立與 Cloud SQL 的連線。

清除所用資源

如要避免系統向您的 Google Cloud 帳戶收取本頁所用資源的費用,請按照下列步驟操作。

  1. 前往 Google Cloud 控制台的「Cloud SQL Instances」頁面。

    前往 Cloud SQL 執行個體

  2. 選取 quickstart-instance 執行個體,開啟「Instance details」(執行個體詳細資料) 頁面。
  3. 在頁面頂端的圖示列中,按一下 [刪除]
  4. 在「Delete instance」(刪除執行個體) 對話方塊中輸入 quickstart-instance,然後按一下「Delete」(刪除) 刪除執行個體。
  5. 前往 Google Cloud 控制台的「Cloud Run」頁面。

    前往 Cloud Run

  6. 選取「quickstart-service」服務名稱旁的核取方塊。
  7. 按一下 Cloud Run 頁面頂端的「刪除」

選用清除步驟

如果您未使用指派給 Compute Engine 服務帳戶的 Cloud SQL 用戶端角色,可以移除該角色。

  1. 前往 Google Cloud 控制台的「IAM」頁面。

    前往「IAM」頁面

  2. 按一下名為「Compute Engine default service account」的 IAM 帳戶編輯圖示 (看起來像鉛筆)。
  3. 刪除 Cloud SQL 用戶端角色。
  4. 按一下 [儲存]

如果您未使用本快速入門導覽課程啟用的 API,可以停用這些 API。

  • 本快速入門導覽課程中啟用的 API:
    • Compute Engine API
    • Cloud SQL Admin API
    • Cloud Run API
    • Container Registry API
    • Cloud Build API
  1. 前往 Google Cloud 控制台的「API」頁面。

    前往 API 頁面

  2. 選取要停用的 API,然後按一下「停用 API」按鈕。

後續步驟

您可以根據需求,進一步瞭解如何建立 Cloud SQL 執行個體

您也可以瞭解如何建立 Cloud SQL 執行個體的 SQL Server 使用者資料庫

如要進一步瞭解定價,請參閱 SQL Server 適用的 Cloud SQL 定價

請點選下列連結瞭解更多資訊:

  • 使用公開 IP 位址設定 Cloud SQL 執行個體。
  • 為 Cloud SQL 執行個體設定私人 IP 位址。

此外,您也可以瞭解如何從其他 Google Cloud 應用程式連線至 Cloud SQL 執行個體: