Looker Studio
Looker Studio 可以通过 MySQL 接口使用官方 Google MySQL 数据源连接到 ClickHouse。
ClickHouse Cloud 设置
- 在创建您的 ClickHouse Cloud 服务后,在
连接您的应用
屏幕上,从下拉菜单中选择 MySQL。

- 切换开关以启用该特定服务的 MySQL 接口。这将为该服务暴露端口
3306
并提示您显示包含您独特 MySQL 用户名的 MySQL 连接屏幕。

或者,为了为现有服务启用 MySQL 接口:
- 确保您的服务处于
运行中
状态,然后点击您想要启用 MySQL 接口的服务。从左侧菜单中选择 “连接”:

- 从
以连接
下拉菜单中选择 MySQL。

- 切换开关以启用该特定服务的 MySQL 接口。这将为该服务暴露端口
3306
并提示您显示包含您独特 MySQL 用户名的 MySQL 连接屏幕。

在 ClickHouse Cloud 中创建多个 MySQL 用户
默认情况下,有一个内置的 mysql4<subdomain>
用户,使用与 default
用户相同的密码。<subdomain>
部分是您的 ClickHouse Cloud 主机名的第一个段。这种格式是必要的,以便与实现安全连接但不在其 TLS 握手中提供 SNI 信息 的工具一起使用,这使得在没有用户名中的额外提示的情况下进行内部路由变得不可能(MySQL 控制台客户端就是其中一种工具)。
因此,我们 强烈建议 在创建打算用于 MySQL 接口的新用户时遵循 mysql4<subdomain>_<username>
格式,其中 <subdomain>
是用于识别您的 Cloud 服务的提示,而 <username>
是您选择的任意后缀。
对于 ClickHouse Cloud 主机名如 foobar.us-east1.aws.clickhouse.cloud
,<subdomain>
部分等于 foobar
,而自定义 MySQL 用户名可以是 mysql4foobar_team1
。
您可以创建额外的用户以供 MySQL 接口使用,例如,如果您需要应用额外设置。
- 可选 - 创建一个 设置配置文件,以便应用于您自定义的用户。例如,
my_custom_profile
,其中包含将默认为我们稍后连接时应用的额外设置:
prefer_column_name_to_alias
仅作为示例,您可以在其中使用其他设置。
2. 使用以下格式 创建用户:mysql4<subdomain>_<username>
(见上文)。密码必须为双 SHA1 格式。例如:
或者,如果您希望为该用户使用自定义配置文件:
其中 my_custom_profile
是您之前创建的配置文件的名称。
3. 授予 新用户与所需表或数据库交互所需的权限。例如,如果您只想授予对 system.query_log
的访问权限:
- 使用创建的用户通过 MySQL 接口连接到您的 ClickHouse Cloud 服务。
在 ClickHouse Cloud 中的多个 MySQL 用户故障排除
如果您创建了一个新的 MySQL 用户,并且在通过 MySQL CLI 客户端连接时看到以下错误:
在这种情况下,确保用户名遵循 mysql4<subdomain>_<username>
格式,如上所述(见上文)。
局域网 ClickHouse 服务器设置
请参考 官方文档 了解如何设置启用 MySQL 接口的 ClickHouse 服务器。
除了在服务器的 config.xml
中添加条目
外,还 要求 使用 Double SHA1 密码加密 为将使用 MySQL 接口的用户。
从 shell 中生成使用 Double SHA1 加密的随机密码:
输出应如下所示:
第一行是生成的密码,第二行是我们可以用来配置 ClickHouse 的哈希值。
以下是使用生成的哈希值的 mysql_user
的示例配置:
/etc/clickhouse-server/users.d/mysql_user.xml
将 password_double_sha1_hex
条目替换为您自己的生成的 Double SHA1 哈希。
此外,建议使用 use_mysql_types_in_show_columns
在 SHOW [FULL] COLUMNS
查询结果中显示原生 MySQL 类型,而不是 ClickHouse 类型,这样可以让 BI 工具在使用 MySQL 连接器时正确地探查数据库模式。
例如:
/etc/clickhouse-server/users.d/mysql_user.xml
或者将其分配给不同的配置文件,而不是默认的配置文件。
如果您有可用的 mysql
二进制文件,您可以从命令行测试连接。
使用上面的示例用户名 (mysql_user
) 和密码 (LZOQYnqQN4L/T6L0
),命令行应为:
最后,配置 Clickhouse 服务器以监听所需的 IP 地址。 例如,在 config.xml
中,取消注释以下内容以监听所有地址:
将 Looker Studio 连接到 ClickHouse
首先,使用您的 Google 账号登录 https://lookerstudio.google.com 并创建一个新的数据源:

搜索由 Google 提供的官方 MySQL 连接器(名称为 MySQL):

指定您的连接详细信息。请注意,MySQL 接口端口默认为 9004,并且根据您的服务器配置可能会有所不同。

现在,您有两种方式从 ClickHouse 获取数据。首先,您可以使用表浏览器功能:

或者,您可以指定一个自定义查询来获取数据:

最后,您应该能看到扫描的表结构,并根据需要调整数据类型。

现在,您可以继续探索数据或创建新报告!
在 ClickHouse Cloud 中使用 Looker Studio
在使用 ClickHouse Cloud 时,您需要首先启用 MySQL 接口。您可以在连接对话框的 "MySQL" 选项卡中做到这一点。

在 Looker Studio 界面中,选择“启用 SSL”选项。ClickHouse Cloud 的 SSL 证书由 Let's Encrypt 签名。您可以在 这里 下载此根证书。

其余步骤与上述前一部分列出的步骤相同。