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