从 Cloud Shell 连接到 Cloud SQL for PostgreSQL

本页介绍了如何使用 Google Cloud 控制台和客户端创建 PostgreSQL 实例并与之连接,以及执行基本的 SQL 操作。如果您及时完成本快速入门中的步骤(包括清理),那么在此期间所创建资源的费用通常不会超过 1 美元。

准备工作

  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. 启用必要的 Google Cloud API。

    控制台

    在 Google Cloud 控制台中,转到 API 页面。

    转到“API”

    启用 Cloud SQL Admin API。

    gcloud

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

    打开 Cloud Shell

    按照以下方式使用 Cloud Shell 运行 gcloud services enable 命令,以启用本快速入门所需的 API。

    gcloud services enable sqladmin.googleapis.com

    此命令会启用以下 API:

    • Cloud SQL Admin API

创建 Cloud SQL 实例

在本快速入门中,您将使用 Google Cloud 控制台。如需使用 gcloud CLI、cURL 或 PowerShell,请参阅创建实例

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

    转到“Cloud SQL 实例”

  2. 点击创建实例
  3. 点击选择 PostgreSQL
  4. 实例 ID 字段中,输入 myinstance
  5. 密码字段中,输入 postgres 用户的密码。
  6. 点击创建实例

    您会返回到实例列表。您可以立即点击新实例以查看详细信息,但该实例只能在初始化并启动之后才可用于其他操作。

    :在此示例中,将使用默认设置(包括公共 IP 地址)创建实例。

连接到您的实例

在本快速入门中,我们将在 Cloud Shell 中使用 psql 客户端来连接到您的实例。Cloud Shell 是一个远程沙盒化环境。

  1. 可选:如果您运行的是 PostgreSQL, 的本地实例,请先停止该实例,然后再连接到 Cloud SQL 实例。否则,您可能会遇到 address already in use 之类的错误。
  2. Google Cloud 控制台中,点击右上角的 Cloud Shell 图标 (Cloud Shell 图标。)。

    Cloud Shell 完成初始化后,系统会显示如下消息:

    Welcome to Cloud Shell! Type "help" to get started.
    Your Cloud Platform project in this session is set to sample-project.
    Use "gcloud config set project [PROJECT_ID]" to change to a different project.
    username@sample-project:~ (sample-project)$
    

  3. 可选:如果您尚未授权 gcloud CLI 使用您的 Google 用户凭据访问 Google Cloud Platform,请使用 gcloud auth login 命令。
  4. 在 Cloud Shell 提示符下,连接到您的 Cloud SQL 实例。使用如下所示的 gcloud sql connect 命令。如果实例名称不同,请替换实例名称。

    gcloud sql connect myinstance --user=postgres
  5. 在对话框中,点击授权,以授权 Cloud Shell 进行 API 调用。

    系统会显示以下消息:

    Allowlisting your IP for incoming connection for 5 minutes...done.
    

    此消息表示 Cloud SQL 实例的公共 IP 地址已获准接收传入连接。显示此消息后,系统会提示您输入密码。

  6. 输入您的 postgres 密码。

    系统会显示 psql 提示符。

创建数据库并上传数据

  1. 在 Cloud SQL 实例上创建 SQL 数据库:
    CREATE DATABASE guestbook;
  2. 输入以下命令并指定密码,以连接到数据库。
    \connect guestbook;
  3. 将示例数据插入数据库:
    CREATE TABLE entries (guestName VARCHAR(255), content VARCHAR(255),
                            entryID SERIAL PRIMARY KEY);
    INSERT INTO entries (guestName, content) values ('first guest', 'I got here!');
    INSERT INTO entries (guestName, content) values ('second guest', 'Me too!');
  4. 检索数据:
    SELECT * FROM entries;
    结果是:
      guestname   |   content   | entryid
    --------------+-------------+---------
     first guest  | I got here! |       1
     second guest | Me too!     |       2
    (2 rows)
    postgres=>
    

清理

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

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

    转到“Cloud SQL 实例”

  2. 选择 myinstance 实例以打开实例详情页面。
  3. 在页面顶部的图标栏中,点击删除
  4. 删除实例窗口中,输入实例的名称,然后点击删除

可选的清理步骤

如果您没有使用在本快速入门中启用的 API,则可以将其停用。

  • 在本快速入门中启用的 API:
    • Cloud SQL Admin API
  1. 在 Google Cloud 控制台中,转到 API 页面。

    转到“API”

  2. 选择 Cloud SQL Admin API,然后点击停用 API 按钮。

后续步骤