- SSL 实现可能无法完全兼容;也可能存在 TLS SNI 问题。
- 某些工具可能依赖尚未实现的方言特性 (例如 MySQL 特有的函数或设置) 。
在 ClickHouse Cloud 上启用 MySQL 接口
- 创建 ClickHouse Cloud 服务后,点击
Connect按钮。
- 将
Connect with下拉菜单切换为MySQL。
- 切换开关,为该特定服务启用 MySQL 接口。这样会为该服务开放端口
3306,并显示 MySQL 连接界面,其中包含你专属的 MySQL 用户名。密码与该服务默认用户的密码相同。
复制显示的 MySQL 连接字符串。
在 ClickHouse Cloud 中创建多个 MySQL 用户
mysql4<subdomain> 用户,它与 default 用户使用相同的密码。<subdomain> 部分是你的 ClickHouse Cloud 主机名的第一个段。之所以采用这种格式,是为了兼容那些支持安全连接、但在其 TLS 握手中不提供 SNI 信息 的工具;如果用户名中没有额外提示,就无法完成内部路由 (MySQL 控制台客户端就是这类工具之一) 。
因此,我们_强烈建议_在为 MySQL 接口 创建新用户时使用 mysql4<subdomain>_<username> 格式,其中 <subdomain> 用于标识你的 Cloud 服务,<username> 则是你自定义的任意后缀。
例如,如果你需要应用额外设置,可以额外创建一些供 MySQL 接口 使用的用户。
-
可选:创建一个要应用到自定义用户的 settings profile。例如,创建
my_custom_profile,并添加一个额外设置,这样当稍后使用所创建的用户连接时,该设置会默认生效:这里的prefer_column_name_to_alias仅作示例,你也可以使用其他设置。 -
按以下格式创建用户:
mysql4<subdomain>_<username>(见上文) 。密码必须采用 double SHA1 格式。例如:或者,如果你想为该用户使用自定义 profile:其中,my_custom_profile是你之前创建的 profile 名称。 -
授予新用户与目标表或数据库交互所需的权限。例如,如果你只想授予其对
system.query_log的访问权限: - 使用已创建的用户通过 MySQL 接口 连接到你的 ClickHouse Cloud 服务。
在 ClickHouse Cloud 中排查多个 MySQL 用户的相关问题
mysql4<subdomain>_<username> 格式,如上文所述。
在自管理 ClickHouse 上启用 MySQL 接口
config.d/ 文件夹中的一个新 XML 文件中定义该端口:
使用 MySQL 连接到 ClickHouse
mysql 连接到 ClickHouse:
- 不支持预处理语句
- 某些数据类型会以字符串形式发送
KILL QUERY connection_id 语句 (执行时会被替换为 KILL QUERY WHERE query_id = connection_id) 。例如: