从 App Engine 柔性环境连接到 Cloud SQL for PostgreSQL
了解如何使用 Google Cloud 控制台和客户端应用在连接到 PostgreSQL 实例的 App Engine 柔性环境中部署示例应用。
假设您及时完成所有步骤,则本快速入门中所创建资源的费用通常不会超过 1 美元 (USD)。
准备工作
- 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.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
启用在 App Engine 柔性环境中运行 Cloud SQL 示例应用所需的 Cloud 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 运行以下
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 实例
创建数据库
控制台
-
在 Google Cloud 控制台中,转到 Cloud SQL 实例页面。
- 选择
quickstart-instance
。 - 从 SQL 导航菜单中选择数据库。
- 点击创建数据库。
- 在新建数据库对话框的数据库名称字段中,输入
quickstart-db
。 - 点击创建。
gcloud
运行 gcloud
sql databases create
命令以创建数据库。
gcloud sql databases create quickstart-db --instance=quickstart-instance
创建用户
控制台
-
在 Google Cloud 控制台中,转到 Cloud SQL 实例页面。
- 选择您创建的 quickstart-instance PostgreSQL 实例。
- 从 SQL 导航菜单中选择用户。
- 点击添加用户账号。
- 在将一个用户账号添加到 quickstart-instance 页面中,添加以下信息:
- 在用户名字段中,输入
quickstart-user
。 - 在密码字段中,指定数据库用户的密码。 记下此密码,以便在本快速入门的后续步骤中使用。
- 在用户名字段中,输入
- 点击添加。
gcloud
在运行以下命令之前,请先进行以下替换:
- 将 PASSWORD 替换为您的数据库用户密码。记下此密码,以便在本快速入门的后续步骤中使用。
运行 gcloud sql users create
命令以创建用户。
gcloud sql users create quickstart-user \ --instance=quickstart-instance \ --password=PASSWORD
Cloud SQL 和本地 PostgreSQL 的用户名长度限制一样。
将示例应用部署到 App Engine 柔性环境
创建 App Engine 应用
控制台
-
在 Google Cloud 控制台中,进入 App Engine 页面。
- 点击创建应用。
- 从选择区域下拉菜单中,选择 us-central。
- 点击下一步。
- 在开始使用页面下方,滚动到页面底部。
- 点击以后再执行此操作链接。
gcloud
-
运行以下
gcloud app create
命令以创建 App Engine 应用: - 当系统提示您选择 App Engine 应用所在的区域时,请输入 us-central 的数字选项。
gcloud app create
配置 App Engine 服务账号
控制台
-
在 Google Cloud 控制台中,转到 IAM 页面。
- 对于名为 App Engine 默认服务账号的服务账号,点击铅笔图标。
- 点击添加其他角色。
- 添加名为 Cloud SQL Client 的角色。
- 点击保存。
gcloud
-
运行以下
gcloud
命令以获取项目的服务账号列表:gcloud iam service-accounts list
- 复制 App Engine 服务账号的电子邮件地址。
- 运行以下命令,将 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 账号产生费用,请按照以下步骤操作。
-
在 Google Cloud 控制台中,转到 Cloud SQL 实例页面。
- 选择
quickstart-instance
实例以打开实例详情页面。 - 在页面顶部的图标栏中,点击删除。
- 在删除实例对话框中,输入
quickstart-instance
,然后点击删除以删除该实例。 停用应用会阻止应用运行实例和处理请求。如果应用正在处理请求,则会在停用之前完成请求。
如需停用 App Engine 应用并保留其数据,请执行以下操作:
在 Google Cloud 控制台中,转到设置页面:
在应用设置标签页中,点击停用应用。
在应用 ID 字段中,输入要停用的应用的 ID,然后点击停用。
可选的清理步骤
如果您未使用分配给 Compute Engine 服务账号的 Cloud SQL client 角色,则可以将其移除。
-
在 Google Cloud 控制台中,转到 IAM 页面。
- 点击名为 Compute Engine 默认服务账号的 IAM 账号对应的修改图标(铅笔图案)。
- 删除 Cloud SQL client 角色。
- 点击保存。
如果您没有使用在本快速入门中启用的 API,则可以将其停用。
- 在本快速入门中启用的 API:
- Compute Engine API
- Cloud SQL Admin API
- Cloud Run API
- Container Registry API
- Cloud Build API
在 Google Cloud 控制台中,转到 API 页面。
选择您要停用的任何 API,然后点击停用 API 按钮。
后续步骤
您可以根据自己的需求详细了解如何创建 Cloud SQL 实例。您还可以了解如何为 Cloud SQL 实例创建 PostgreSQL 用户和数据库。
如需详细了解价格,请参阅 Cloud SQL for PostgreSQL 价格。
详细了解以下内容:
此外,您还可以了解如何从其他 Google Cloud 应用连接到 Cloud SQL 实例: