跳到主要内容
跳到主要内容

将 MySQL 与 ClickHouse 集成

此页面涵盖使用 MySQL 表引擎从 MySQL 表中读取数据。

备注

对于 ClickHouse Cloud,您还可以使用 MySQL ClickPipe(目前处于私有预览中)以轻松将数据从 MySQL 表移动到 ClickHouse。

使用 MySQL 表引擎将 ClickHouse 连接到 MySQL

MySQL 表引擎允许您将 ClickHouse 连接到 MySQL。SELECTINSERT 语句可以在 ClickHouse 或 MySQL 表中执行。本文描述了如何使用 MySQL 表引擎的基本方法。

1. 配置 MySQL

  1. 在 MySQL 中创建一个数据库:
  1. 创建一个表:
  1. 插入示例行:
  1. 创建一个用户以从 ClickHouse 连接:
  1. 根据需要授予权限。(为了演示,mysql_clickhouse 用户被授予管理员权限。)
备注

如果您在 ClickHouse Cloud 中使用此功能,您可能需要允许 ClickHouse Cloud IP 地址访问您的 MySQL 实例。 请查看 ClickHouse Cloud Endpoints API 以获取出站流量的详细信息。

2. 在 ClickHouse 中定义表

  1. 现在让我们创建一个使用 MySQL 表引擎的 ClickHouse 表:

最小参数为:

parameter描述示例
host主机名或 IPmysql-host.domain.com
databasemysql 数据库名称db1
tablemysql 表名称table1
user连接到 mysql 的用户名mysql_clickhouse
password连接到 mysql 的密码Password123!
备注

查看 MySQL 表引擎 文档页面以获取完整的参数列表。

3. 测试集成

  1. 在 MySQL 中插入一条示例行:
  1. 注意 MySQL 表中现有的行也在 ClickHouse 表中,以及您刚添加的新行:

您应该看到 4 行:

  1. 让我们向 ClickHouse 表中添加一行:
  1. 注意新行出现在 MySQL 中:

您应该看到新行:

总结

MySQL 表引擎允许您将 ClickHouse 连接到 MySQL,以便双向交换数据。有关更多详细信息,请务必查看 MySQL 表引擎 的文档页面。