您可以使用 Cloud SQL for MySQL 连接器将 Cloud SQL for MySQL 数据库连接到数据洞察。使用数据库表或自定义查询来构建交互式报告和信息中心。然后,您可以与没有直接数据库访问权限的利益相关者或团队成员分享这些洞见。
支持的版本
Cloud SQL for MySQL 连接器已在以下 MySQL 版本上经过测试:
- 5.6
- 5.7
- 8.0
如果您在使用受支持的版本时遇到问题,请在数据洞察社区中告知我们。您还可以在问题跟踪器中添加功能请求并对其进行投票。在问题跟踪器上。
如何连接到 Cloud SQL for MySQL
数据洞察数据源可以连接到单个 Cloud SQL for MySQL 数据库表,也可以连接到您提供的自定义查询。
如需连接到 Cloud SQL for MySQL 数据库,请按以下步骤操作:
- 登录数据洞察。
- 在数据洞察首页上,点击 创建,然后选择 数据源。
- 选择 Cloud SQL for MySQL 连接器。
- 使用其中一个 连接选项配置对数据库的访问权限。
- 点击AUTHENTICATE 。系统会显示该数据库中的表列表。
- 从列表中选择一个表,或输入一个自定义查询。
- 点击连接 。
现在,您可以在报告中将表中的所有列作为字段进行访问。
连接选项
使用主机名或 IP 地址进行连接
在连接面板中,选择基本 。输入连接详细信息:
- 实例连接名称
- 数据库
- 用户名
- 密码
使用 JDBC 网址进行连接
在连接面板中,选择 JDBC 网址 。输入连接详细信息:
- JDBC 网址
示例
jdbc:google:mysql://INSTANCE_CONNECTION_NAME/DATABASE
- 用户名
- 密码
如需使用 IPv6 字面量地址进行连接,请将该地址括在方括号内。例如:
jdbc:google:mysql://[2001:db8:1:1:1:1:1:1]/your_db
自定义查询
选择自定义查询 选项,以提供 SQL 查询,而不是连接到单个表。数据洞察会将此自定义 SQL 用作所生成的每个数据库查询的内部 select 语句。
自定义 SQL 查询只能包含一条语句。例如,以下查询将无法 正常运行,因为它包含多条 SQL 语句:
DECLARE cost_per_tb_in_dollar FLOAT64 DEFAULT 4.2;
SELECT total_bytes_billed / (1024 * 1024))* cost_per_tb_in_dollar)/(1024*1024))) FROM billing-table;
数据洞察中的查询可能会在三到五分钟后超时。如果您的自定义查询超时,请尝试以下方法来解决此问题:
- 简化查询,使其运行速度更快。
- 在数据库中运行查询,并将结果存储在单独的表中。在数据源中连接新表。
备注
请查看以下部分,详细了解如何查找实例连接名称、配置所需权限以及设置网络连接。
查找实例连接名称
实例连接名称用于标识实例 Google Cloud。您可以从 Google Cloud 控制台或使用命令行获取该名称。
使用控制台
- 前往 https://console.cloud.google.com/sql/instances。
- 点击要连接的实例 ID。
- 在左侧的“连接到此实例”部分中,您会找到连接名称。
使用命令行
如需使用 Cloud 命令行界面查找连接名称,请使用以下命令:
gcloud sql instances describe [INSTANCE_NAME] | grep connectionName
权限
您必须至少拥有 Cloud SQL for MySQL 项目中的 cloudsql.client 权限,才能创建连接。如果您没有(或无法获取)此访问权限,可以改用 MySQL 连接器。
网络连接
Cloud SQL for MySQL 连接器支持连接到使用公共 IP 连接和专用 IP 连接的 Cloud SQL for MySQL 实例。
在使用 Cloud SQL for MySQL 连接器之前,您必须为 Cloud SQL for MySQL 实例配置 公共 IP 连接 或 专用 IP 连接。
如需允许数据洞察通过专用连接访问 Cloud SQL 中的数据并对此数据进行查询,请在 Cloud SQL for MySQL 实例设置中选择 Google Cloud 服务的专用路径 选项。
支持的数据类型
数据洞察会将数据库的内置数据类型映射到一组统一的数据类型。如果数据洞察在表或查询中遇到不受支持类型的列,则不会为该列创建字段。防火墙和数据库访问
如需允许数据洞察连接到防火墙后面的数据库并对其进行查询,您需要开放对以下某个 IP 地址的访问权限。 您可能还需要将数据库配置为接受来自这些地址的流量。如需了解具体操作方法,请参阅特定数据库的文档。
IP 地址
以下地址是为数据洞察的全球基础架构预留的:
142.251.74.0/232001:4860:4807::/48(可选,用于支持 IPv6 的平台)
如果您已为数据洞察 Pro 订阅启用数据驻留,请改用以下地址:
142.251.56.0/242001:4860:4815::/48(可选,用于支持 IPv6 的平台)
Cloud SQL for MySQL 连接器的限制
- 数据洞察不支持 MySQL Spatial Data Extensions。
- 使用此连接器时,您每次查询最多可以查询 15 万行。如果超出此限制,数据将被截断。
- 列标题(字段名称)只能使用 ASCII 字符。不支持非 ASCII 字符。
问题排查
如需查看常见错误消息列表以及解决这些错误消息的步骤,请参阅数据洞察问题排查指南。