路由到数据库

更新时间:
复制为 MD 格式

您可以通过事件规则过滤事件,将事件路由到云数据库RDS MySQL版或自建MySQL数据库。本文以自定义事件为例介绍将事件路由到数据库的前提条件、操作步骤和结果验证。

前提条件

  • 开通事件总线EventBridge服务。更多信息,请参见开通事件总线EventBridge并授权

  • 如果是将事件路由到云数据库RDS MySQL版,请确保您已完成以下操作:

    • 创建RDS MySQL实例

    • 创建数据库和账号

    • 创建数据库表。常见的SQL语句,请参见常用语句

    • 已根据网络连接方式完成相应的网络配置。

      • 使用公网连接:需将事件总线EventBridge的公网IP地址添加至RDS实例白名单。具体操作如下:

        1. 访问RDS控制台,在左侧导航栏中单击实例列表,然后单击目标RDS实例。在左侧导航栏中单击数据库连接,单击外网地址旁的设置白名单

        2. 单击添加白名单分组,将以下事件总线EventBridge公网IP地址全部添加至白名单分组中:39.105.55.188,39.105.110.43,47.95.35.213,47.95.33.100,39.106.255.198,47.93.177.159,47.95.32.154,39.107.99.72

        3. 单击确定

        说明

        若未正确设置白名单,事件路由到数据库时可能会提示Communications link failure

      • 使用专有网络VPC连接:需确保安全组和交换机配置满足以下要求:

        • 安全组与RDS实例处于同一地域、同一专有网络VPC。

        • 安全组的入方向规则未限制访问,即允许事件总线EventBridge通过内网访问RDS实例。

        说明

        使用专有网络VPC连接时,在事件规则的目标配置中请使用RDS实例的内网地址

    说明

    请确保您是阿里云数据库RDS MySQL版实例所有者,即创建者。

  • 如果是将事件路由到自建MySQL数据库,请确保您的自建数据库与事件总线EventBridge网络互通。

步骤一:添加自定义事件源

  1. 登录事件总线EventBridge控制台,在左侧导航栏,单击事件总线
  2. 在顶部菜单栏,选择地域,在事件总线页面,单击目标自定义事件总线名称。
  3. 在左侧导航栏,单击事件源,然后单击添加事件源
  4. 添加自定义事件源面板,输入名称描述事件提供方选择自定义应用,然后单击确认

步骤二:创建事件规则

重要

目标服务和事件规则必须处于同一地域。

  1. 登录事件总线EventBridge控制台
  2. 在左侧导航栏,单击事件总线
  3. 在顶部菜单栏,选择地域。
  4. 事件总线页面,单击目标总线名称。
  5. 在左侧导航栏,单击事件规则
  6. 事件规则页面,单击创建规则

  7. 创建规则页面,完成以下操作。

    1. 配置基本信息配置向导,在名称文本框输入规则名称,在描述文本框输入规则的描述,然后单击下一步

    2. 配置事件模式配置向导,事件源类型选择自定义事件源事件源选择步骤一添加的自定义事件源,在事件模式内容代码框输入事件模式,然后单击下一步

      如需了解更多信息,请参见事件模式

    3. 配置事件目标配置向导,选择服务类型数据库,配置以下参数,然后单击创建

      说明

      1个事件规则最多可以添加5个目标。

      类别

      参数

      描述

      数据库配置

      实例ID

      选择作为事件目标云数据库RDS的实例ID。仅当数据库配置选择为RDS For MySql时,需配置此参数。

      数据库地址

      输入作为事件目标自建数据库的地址,由数据库所在主机的IP地址或域名和端口号组成。端口号为3306。仅当数据库配置选择为自建MySql时,需配置此参数。

      数据库名称

      作为事件目标的数据库的名称。

      • 如果数据库配置选择为RDS For MySql,则在下拉列表中选择数据库名称。

      • 如果数据库配置选择为自建MySql,则输入数据库名称。

      数据库账号

      输入作为事件目标的数据库账号。

      数据库密码

      输入作为事件目标的数据库账号的密码。

      并发配置(数据库连接池)

      最大数据库连接访问数。默认为10。

      网络配置

      公网

      使用公网路由事件内容至数据库。仅当数据库配置选择为自建MySql时,支持使用公网。

      专有网络VPC

      路由事件内容使用的专有网络信息。

      • 专有网络VPC:路由事件使用的专有网络VPC名称。

      • 交换机:路由事件使用的交换机。

      • 安全组:选择路由事件使用的专有网络所在的安全组。

      入库配置

      快速配置

      写入数据库表快速配置。仅支持简单操作。

      • 表名:输入数据库中已建立的数据表名。路由的事件内容将写入该表中。

      • 操作方式:事件内容在数据库表,根据DML语句将事件内容写入数据库表的方式。支持以下三种方式:

        • INSERT:将事件内容插入数据库表。

        • UPDATA:根据输入的键值更新数据库表中对应的内容。

        • DELETE:根据输入的键值删除数据库表中对应的内容。

      • 事件总线EventBridge将事件内容路由至数据库表的键值。

        • :数据库表的一个字段。您可以输入常量或部分事件中的变量。

        • :数据库表的一个字段和处理SQL中指定的内容的一个字段,该字段作为输入数据表字段(键)的值。您可以输入常量或部分事件中的变量。不超过1024个字符。

        您可以根据需要添加键值:在键值输入框下方,单击 添加

        说明

        快速配置本质是将配置生成SQL语句,实际执行会以SQL语句为准。

      自定义SQL

      写入数据库表的SQL语句。

      • 变量:定义需执行的SQL语句的变量。

      • SQL语句:输入需执行操作的SQL语句。不超过10240个字符。

      详细信息,请参见事件内容转换

步骤三:发布事件

  1. 登录事件总线EventBridge控制台,在左侧导航栏,单击事件总线
  2. 在顶部菜单栏,选择地域。
  3. 事件总线页面,找到目标总线,在其右侧操作列单击发布事件

    说明

    仅自定义事件总线支持通过控制台发布事件。

  4. 发布事件至自定义事件总线面板,自定义事件源下拉列表选择已创建的自定义事件源,在事件体代码框输入事件内容,然后单击确认

    事件包含的参数规范,请参见事件概述

结果验证

您可以在数据库查看发送的事件内容。本结果以事件目标为云数据库RDS,向事件目标中插入id值为123为例,验证事件内容发送情况。

  1. 访问RDS实例列表,在顶部菜单栏,选择地域,然后单击目标实例ID。

  2. 在实例基本信息页面的右上角,单击登录数据库

  3. 登录实例对话框,填写数据库账号名和密码,然后单击登录

  4. 在数据库表中查看表数据。

    ebToMysql

    您可以在目标数据库表中查看到插入的内容。