将 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 表:
最小参数为:
parameter | 描述 | 示例 |
---|---|---|
host | 主机名或 IP | mysql-host.domain.com |
database | mysql 数据库名称 | db1 |
table | mysql 表名称 | table1 |
user | 连接到 mysql 的用户名 | mysql_clickhouse |
password | 连接到 mysql 的密码 | Password123! |
备注
查看 MySQL 表引擎 文档页面以获取完整的参数列表。
3. 测试集成
- 在 MySQL 中插入一条示例行:
- 注意 MySQL 表中现有的行也在 ClickHouse 表中,以及您刚添加的新行:
您应该看到 4 行:
- 让我们向 ClickHouse 表中添加一行:
- 注意新行出现在 MySQL 中:
您应该看到新行:
总结
MySQL
表引擎允许您将 ClickHouse 连接到 MySQL,以便双向交换数据。有关更多详细信息,请务必查看 MySQL 表引擎 的文档页面。