从 App Engine 柔性环境连接到 Cloud SQL for MySQL

了解如何使用 Google Cloud 控制台和客户端应用在连接到 MySQL 实例的 App Engine 柔性环境中部署示例应用。

假设您及时完成所有步骤,则本快速入门中所创建资源的费用通常不会超过 1 美元 (USD)。

准备工作

  1. 登录您的 Google Cloud 账号。如果您是 Google Cloud 新手,请创建一个账号来评估我们的产品在实际场景中的表现。新客户还可获享 $300 赠金,用于运行、测试和部署工作负载。
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. 确保您的 Google Cloud 项目已启用结算功能

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

    Go to project selector

  5. 确保您的 Google Cloud 项目已启用结算功能

  6. 启用在 App Engine 柔性环境中运行 Cloud SQL 示例应用所需的 Cloud API。

    控制台

    点击下面的按钮启用本快速入门所需的 API。

    启用 API

    这将启用以下 API:

    • Cloud SQL Admin API
    • Compute Engine API
    • Cloud Build API
    • Cloud Logging API

    点击此按钮后,您还会启用 Google App Engine 柔性环境。

    gcloud

    点击以下按钮打开 Cloud Shell,以通过命令行直接在浏览器中访问 Google Cloud 资源。Cloud Shell 可用于运行本快速入门中介绍的 gcloud 命令。

    打开 Cloud Shell

    使用 Cloud Shell 运行以下 gcloud 命令:

    gcloud services enable appengineflex.googleapis.com sqladmin.googleapis.com \
    compute.googleapis.com cloudbuild.googleapis.com logging.googleapis.com

    此命令会启用以下 API:

    • Cloud SQL Admin API
    • Compute Engine API
    • Cloud Build API
    • Cloud Logging API

    运行上述命令还会启用 Google App Engine 柔性环境。

设置 Cloud SQL

创建 Cloud SQL 实例

创建数据库

控制台

  1. 在 Google Cloud 控制台中,转到 Cloud SQL 实例页面。

    转到“Cloud SQL 实例”

  2. 选择 quickstart-instance
  3. 从 SQL 导航菜单中选择数据库
  4. 点击创建数据库
    1. 创建数据库对话框的数据库名称字段中,输入 quickstart-db。保留字符集和排序规则的值。
    2. 点击创建

gcloud

运行 gcloud sql databases create 命令以创建数据库。

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

创建用户

控制台

  1. 在 Google Cloud 控制台中,转到 Cloud SQL 实例页面。

    转到“Cloud SQL 实例”

  2. 选择您创建的 quickstart-instance MySQL 实例。
  3. 从 SQL 导航菜单中选择用户
  4. 点击添加用户账号
  5. 将一个用户账号添加到 quickstart-instance 页面中,添加以下信息:
    1. 用户名字段中,输入 quickstart-user
    2. 密码字段中,指定数据库用户的密码。 记下此密码,以便在本快速入门的后续步骤中使用。
  6. 点击添加

gcloud

在运行以下命令之前,请先进行以下替换:

  1. PASSWORD 替换为您的数据库用户密码。记下此密码,以便在本快速入门的后续步骤中使用。

运行 gcloud sql users create 命令以创建用户。

gcloud sql users create quickstart-user \
--instance=quickstart-instance \
--password=PASSWORD

Cloud SQL 和本地 MySQL 的用户名长度限制一样;MySQL 8.0 为 32 个字符,较低版本为 16 个字符。

将示例应用部署到 App Engine 柔性环境

创建 App Engine 应用

在 Google Cloud 项目中创建 App Engine 应用。这将启用 App Engine 服务,创建默认的 App Engine 应用,并创建一个用于连接到 Cloud SQL 的 App Engine 服务账号。

控制台

  1. 在 Google Cloud 控制台中,进入 App Engine 页面。

    转到 App Engine

  2. 点击创建应用
  3. 选择区域下拉菜单中,选择 us-central
  4. 点击下一步
  5. 开始使用页面下方,滚动到页面底部。
  6. 点击以后再执行此操作链接。

gcloud

  1. 运行以下 gcloud app create 命令以创建 App Engine 应用:
  2. gcloud app create
  3. 当系统提示您选择 App Engine 应用所在的区域时,请输入 us-central 的数字选项。

配置 App Engine 服务账号

配置 App Engine 使用的服务账号,使其具有 Cloud SQL Client 角色。通过将角色分配给服务账号,该账号将有权连接到 Cloud SQL。

控制台

  1. 在 Google Cloud 控制台中,转到 IAM 页面。

    进入 IAM

  2. 对于名为 App Engine 默认服务账号的服务账号,点击铅笔图标。
  3. 点击添加其他角色
  4. 添加名为 Cloud SQL Client角色
  5. 点击保存

gcloud

  1. 运行以下 gcloud 命令以获取项目的服务账号列表:
    gcloud iam service-accounts list
  2. 复制 App Engine 服务账号电子邮件地址
  3. 运行以下命令,将 Cloud SQL Client 角色添加到 App Engine 服务账号
    gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \
      --member="serviceAccount:SERVICE_ACCOUNT_EMAIL" \
      --role="roles/cloudsql.client"

为 Cloud SQL 配置和部署示例应用

现在您已创建了一个 Cloud SQL 实例和数据库,并且配置了 App Engine 服务账号,使其有权连接到 Cloud SQL,接下来,您可以配置和部署示例应用以连接到 Cloud SQL 实例。

清理

为避免因本页中使用的资源导致您的 Google Cloud 账号产生费用,请按照以下步骤操作。

  1. 在 Google Cloud 控制台中,转到 Cloud SQL 实例页面。

    转到“Cloud SQL 实例”

  2. 选择 quickstart-instance 实例以打开实例详情页面。
  3. 在页面顶部的图标栏中,点击删除
  4. 删除实例对话框中,输入 quickstart-instance,然后点击删除以删除该实例。 停用应用会阻止应用运行实例和处理请求。如果应用正在处理请求,则会在停用之前完成请求。

如需停用 App Engine 应用并保留其数据,请执行以下操作:

  1. 在 Google Cloud 控制台中,转到设置页面:

    转到“设置”

  2. 应用设置标签页中,点击停用应用

  3. 应用 ID 字段中,输入要停用的应用的 ID,然后点击停用

可选的清理步骤

如果您未使用分配给 Compute Engine 服务账号的 Cloud SQL client 角色,则可以将其移除。

  1. 在 Google Cloud 控制台中,转到 IAM 页面。

    进入 IAM

  2. 点击名为 Compute Engine 默认服务账号的 IAM 账号对应的修改图标(铅笔图案)。
  3. 删除 Cloud SQL client 角色。
  4. 点击保存

如果您没有使用在本快速入门中启用的 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 实例创建 MySQL 用户数据库

如需详细了解价格,请参阅 Cloud SQL for MySQL 价格

详细了解以下内容:

  • 使用公共 IP 地址配置 Cloud SQL 实例。
  • 使用专用 IP 地址配置 Cloud SQL 实例。

此外,您还可以了解如何从其他 Google Cloud 应用连接到 Cloud SQL 实例: