1. 概览
在此 Codelab 中,我们将演示一种简单易行的方法来设置 Cloud SQL 并将应用连接到该服务。这是一个快速的 L100 级学习,旨在升级开发者体验,以便将高级 AI 应用集成到 Cloud SQL 提供的复杂数据功能中。
构建内容
一个简单的 Web 应用。
在此过程中,您将:
- 通过一键安装创建 Cloud SQL for PostgreSQL 实例
- 创建示例应用以连接到此实例并设置数据
要求
2. 准备工作
创建项目
- 在 Google Cloud Console 的项目选择器页面上,选择或创建一个 Google Cloud 项目。
- 确保您的 Cloud 项目已启用结算功能。了解如何检查项目是否已启用结算功能。
- 您将使用 Cloud Shell,它是在 Google Cloud 中运行的命令行环境。点击 Google Cloud 控制台顶部的“激活 Cloud Shell”。

- 连接到 Cloud Shell 后,您可以使用以下命令检查自己是否已通过身份验证,以及项目是否已设置为您的项目 ID:
gcloud auth list
- 在 Cloud Shell 中运行以下命令,以确认 gcloud 命令了解您的项目。
gcloud config list project
- 如果项目未设置,请使用以下命令进行设置:
gcloud config set project <YOUR_PROJECT_ID>
- 启用必需的 API:点击链接并启用 API。
或者,您也可以使用 gcloud 命令来完成此操作。如需了解 gcloud 命令和用法,请参阅文档。
3. 数据库设置
在本实验中,我们将使用 Cloud SQL for PostgreSQL 作为测试数据的数据库。
接下来,我们创建一个 Cloud SQL 实例,用于加载测试数据集。
- 点击相应按钮,或将以下链接复制到已登录 Google Cloud 控制台用户的浏览器中。
- 完成此步骤后,代码库将克隆到本地 Cloud Shell 编辑器,您将能够从项目文件夹中运行以下命令(请务必确保您位于项目目录中):
sh run.sh
- 现在,使用界面(点击终端中的链接或点击终端中的“在网页上预览”链接)。
- 输入项目 ID 和实例名称等详细信息,即可开始使用。
- 在日志滚动时,您可以去喝杯咖啡,然后点击此处了解其幕后运作方式。
4. 创建用于测试连接的示例应用
在 Cloud Shell 终端中,依次运行以下命令:
git clone https://github.com/flazer99/verify-easy-cloud-sql-connection
cd verify-easy-cloud-sql-connection
对 verify_connection.py 文件进行更改,以适应您刚刚在上一部分中配置的 Cloud SQL 设置:
# Replace this with the Private IP of your Cloud SQL Instance
DB_HOST = <<>>
DB_PORT = "5432"
DB_NAME = "postgres"
DB_USER = "postgres"
# Replace this with your actual Cloud SQL password
DB_PASS = <<>>
5. 部署到 Cloud Run
在 Cloud Shell 终端中,确保您位于项目文件夹中。
确认您位于项目文件夹中后,运行以下命令:
gcloud run deploy verify-cloudsql \
--source . \
--region=us-central1 \
--network=easy-cloudsql-vpc \
--subnet=easy-cloudsql-subnet \
--vpc-egress=all-traffic \
--allow-unauthenticated
部署完成后,您应该会收到一个已部署的 Cloud Run 端点,如下所示:
https://verify-cloudsql-**********-uc.a.run.app/
6. 演示
如需确认它是否正常运行,您可以在浏览器或日志浏览器中查看结果。
您可以在 Google Cloud 控制台中前往 Cloud SQL,然后打开新创建的实例。在左侧的导航窗格中点击 Cloud SQL Studio,然后使用您的凭据进行连接。
在工作室中,刷新左侧窗格中的数据库对象,您应该会看到新创建的表:

您可以快速查询该表,以验证插入操作是否成功完成:

7. 清理
完成此试用实验室后,请务必删除 Cloud SQL 实例。
它应清理集群及其实例。
8. 总结
开始使用 Cloud SQL 快速轻松地设置数据!