将 MySQL 与 ClickHouse 集成
本页介绍了使用 MySQL
表引擎从 MySQL 表读取数据。
备注
对于 ClickHouse Cloud,您还可以使用 MySQL ClickPipe(目前处于公开测试阶段)轻松将数据从您的 MySQL 表移动到 ClickHouse。
使用 MySQL 表引擎将 ClickHouse 连接到 MySQL
MySQL
表引擎允许您将 ClickHouse 连接到 MySQL。SELECT 和 INSERT 语句可以在 ClickHouse 或 MySQL 表中执行。本文描述了如何使用 MySQL
表引擎的基本方法。
1. 配置 MySQL
- 在 MySQL 中创建一个数据库:
- 创建一个表:
- 插入示例行:
- 创建一个连接 ClickHouse 的用户:
- 根据需要授予权限。(出于演示目的,
mysql_clickhouse
用户被授予管理员权限。)
备注
如果您在 ClickHouse Cloud 中使用此功能,您可能需要允许 ClickHouse Cloud 的 IP 地址访问您的 MySQL 实例。 请查看 ClickHouse Cloud Endpoints API 以获取出站流量的详细信息。
2. 在 ClickHouse 中定义一个表
- 现在让我们创建一个使用
MySQL
表引擎的 ClickHouse 表:
最低参数要求如下:
参数 | 描述 | 示例 |
---|---|---|
host | 主机名或 IP | mysql-host.domain.com |
database | mysql 数据库名称 | db1 |
table | mysql 表名称 | table1 |
user | 用于连接 MySQL 的用户名 | mysql_clickhouse |
password | 用于连接 MySQL 的密码 | Password123! |
备注
查看 MySQL 表引擎 文档页面以获取完整的参数列表。
3. 测试集成
- 在 MySQL 中插入一行示例数据:
- 注意 ClickHouse 表中存在来自 MySQL 表的行,以及您刚刚添加的新行:
您应该会看到 4 行:
- 让我们在 ClickHouse 表中添加一行:
- 注意新行出现在 MySQL 中:
您应该会看到新行:
总结
MySQL
表引擎允许您将 ClickHouse 连接到 MySQL,双向交换数据。有关更多详细信息,请务必查看 MySQL 表引擎 的文档页面。