使用自动化流程创建数据流

本页面介绍了如何使用自动设置流程创建数据流。

自动数据流设置简化了将数据从 Google Cloud 受管数据库移至 BigQuery 的过程,从而减少了需要执行的步骤数量。借助此流程,您可以直接从 Cloud SQL 实例的概览页面创建数据流。Datastream 会自动保护数据流与来源数据库之间的 VPC 连接,并创建数据库配置和数据流连接资源。

准备工作

  1. 启用 Datastream、Network Connectivity 和 Compute Engine API。
  2. 确保您拥有创建和管理 Datastream 资源所需的 Identity and Access Management (IAM) 权限。如需了解详情,请参阅以下部分 。
  3. 创建并配置来源 Cloud SQL 数据库以进行复制。如需了解详情,请参阅 配置来源
  4. 确保您的来源数据库配置为使用 专用服务访问通道
  5. 对于 Cloud SQL for PostgreSQL 实例:我们建议您在创建数据流之前为实例启用逻辑复制。如果您未启用逻辑复制,Datastream 会为您启用,这会重启您的来源实例。

  6. 对于 Cloud SQL for MySQL 实例:为 Cloud SQL for MySQL 实例启用时间点恢复,并确保您的数据库版本为 8.0.14 或 更高版本。使用自动数据流设置时,Datastream 仅支持在 Standard 备份层中启用时间点恢复。

  7. 对于 Cloud SQL for SQL Server 实例:确保 Datastream 支持您的实例使用的 SQL Server 版本

所需权限

如需使用自动数据流创建流程,您需要以下 Identity and Access Management (IAM) 角色或权限:

  • serviceusage.services.enablecompute.networkAdmin,用于启用所需的 API 并执行网络配置任务。
  • cloudsql.admin,用于实例配置任务。
  • datastream.admin ,用于 Datastream 代表您执行的管理任务。

Cloud SQL for PostgreSQL 所需的其他权限

  • 对于 Cloud SQL for PostgreSQL 实例,您的数据库管理员用户还需要您要复制的架构的 GRANT 权限。连接到来源数据库并运行以下命令:

    GRANT cloudsqlsuperuser TO "USER_NAME";
    ALTER ROLE "USER_NAME" CREATEROLE;
    GRANT SELECT on ALL TABLES IN SCHEMA "SCHEMA_NAME" to "USER_NAME" WITH GRANT OPTION;
    ALTER DEFAULT PRIVILEGES
    IN SCHEMA "SCHEMA_NAME"
    GRANT SELECT ON TABLES TO "USER_NAME" WITH GRANT OPTION;
  • 只有在自动流程期间由您提供账号详细信息以进行身份验证的用户创建的表,才会自动添加到数据流中。如果将来的表是由其他用户创建的,则该用户必须明确授予 Datastream 读取者用户对该表的 SELECT 权限。

创建并启动数据流

如需创建并启动数据流,请执行以下步骤:

控制台

开始使用

  1. 前往来源 Cloud SQL 数据库实例概览页面。

    转到“Cloud SQL 实例”

  2. 将数据流式传输到 BigQuery 中 部分,点击创建数据流

  3. 开始使用 页面上,在数据流名称 字段中提供数据流的名称。系统会自动填充唯一标识符。

  4. 提供实例用户账号详细信息 部分,选择身份验证方法:

    • IAM 数据库身份验证:如果您的用户已分配 Identity and Access Management (IAM) 主账号身份,则此选项可用。如需了解详情,请参阅 IAM 主账号。 如果您选择此选项,则必须手动向用户授予 cloudsqlsuperuser 角色和 CREATEROLE 权限:

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

      转到“Cloud SQL 实例”

      1. 选择您的 Cloud SQL 实例。
      2. 在导航菜单中,点击 Cloud SQL Studio 并登录。
      3. 探索器 窗格中,为您的用户运行以下查询:
    GRANT cloudsqlsuperuser TO "USER_NAME";
    ALTER ROLE "USER_NAME" CREATEROLE;
    • 内置数据库身份验证:提供具有 cloudsqlsuperuser 角色的用户的用户名和 密码。 如果您选择此选项,请确保用户对他们要复制的表具有 GRANT 权限。
  5. 查看其他数据流详细信息,例如区域、加密和标签。展开其他数据流详细信息 部分以应用更改(如果需要)。

  6. 点击继续

配置来源

  1. 配置数据流来源 页面上,选择要从中复制数据的数据库。
  2. 要包含的对象 列表默认选择所有可用对象。列表中的对象是您拥有流式传输所需权限的对象。如需更改所选对象,请修改列表中的选择。
  3. 查看高级数据流配置,例如回填模式和并发回填连接数上限。展开高级数据流配置 部分以应用更改(如果需要)。
  4. 点击继续

配置目标位置

  1. 配置目标位置 页面上,根据需要调整 BigQuery 目标位置设置。如需了解详情,请参阅 配置有关数据流的目标位置的信息

创建并启动数据流

  1. 点击创建并稍后启动 以创建数据流并在 Datastream 中稍后启动,或点击启动 以立即创建并启动数据流。

  2. 您会收到有关系统自动为您执行的任务的通知:

    • Datastream 会创建所需的 Virtual Private Cloud 资源,例如内部 IP 地址范围、子网和网络连接。
    • Datastream 会为 CDC 配置表、设置复制槽、为数据库中的所有表设置发布内容,并创建专用 Datastream 用户。
    • Datastream 会创建专用连接配置以及来源和目标连接配置文件。
  3. 确认您要创建或创建并启动在线播放。

监控数据流

您可以在 控制台 Google Cloud 中的来源实例概览页面中监控基本数据流详细信息。该页面会显示数据流状态、数据流名称、目标 BigQuery 数据集和目标项目标识符等信息。

您还可以从概览页面执行启动、停止或暂停数据流等操作。如需了解更精细的监控信息,请点击数据流名称以导航到 Datastream。

删除数据流

删除使用自动流程创建的数据流时,某些资源(例如 PostgreSQL 复制槽)会自动删除。但是,您需要手动删除以下资源:

  • 发布内容。发布内容是使用数据库管理员用户创建的,只能由其所有者(因此默认情况下是创建者)删除。
  • Datastream 读取者用户。
  • Datastream 来源和目标连接配置文件
  • 专用连接资源。
  • 在自动流程期间创建的所有网络资源,例如子网和网络连接。

后续步骤