MySQL、MariaDB 和 SingleStore

使用这些说明的方言

MySQL、MariaDB 和 SingleStore(以前称为 MemSQL)共用本页中所述的数据库设置要求。

加密网络流量

最佳做法是对 Looker 应用与数据库之间的网络流量进行加密。考虑使用启用安全的数据库访问文档页面上介绍的某个选项。

如果您有兴趣使用 SSL 加密,请参阅此 MySQL 文档页面

用户和安全性

如需创建 Looker 用户并授予所需的访问权限,请按照相应数据库方言和版本对应的部分中的说明操作:

MySQL 8.0.X:

在 MySQL 8.0.X 中,默认身份验证插件为 caching_sha2_password。Looker 使用 mysql_native_password 插件尝试通过 JDBC 驱动程序向 MySQL 数据库进行身份验证。为了使此版本的 MySQL 正常运行,您必须执行以下额外步骤:

  1. 配置 MySQL 数据库以使用 mysql_native_password 插件。您可以通过多种方式执行此操作,具体取决于 MySQL 8 数据库的部署方式以及您对配置的访问权限类型:

    • 使用标志 --default-auth=mysql_native_password 启动流程

    • my.cnf 配置文件中设置相应属性:

    [mysqld]
    default-authentication-plugin=mysql_native_password
    
    • 如果您的数据库实例是通过 AWS RDS 托管的,请通过应用于此数据库实例的 RDS 参数组设置 default_authentication_plugin 参数。
  2. 运行以下命令,将 some_password_here 替换为唯一且安全的密码:

    CREATE USER looker IDENTIFIED WITH mysql_native_password BY 'some_password_here';
    GRANT SELECT ON database_name.* TO 'looker'@'%';
    

MySQL 5.7.X 及更早版本、MariaDB 和 SingleStore:

运行以下命令,将 some_password_here 替换为唯一且安全的密码:

CREATE USER looker;
SET PASSWORD FOR looker = PASSWORD ('some_password_here');
GRANT SELECT ON database_name.* TO 'looker'@'%';

永久性派生表的临时架构设置

这些数据库方言支持创建永久性派生表 (PDT)。此功能非常实用,我们建议您尽可能启用它。

如需启用 PDT,您需要配置临时架构。以下命令展示了如何创建临时数据库并向 looker 用户授予所需权限。

您可以在创建数据库连接时,在临时数据库字段中指定临时数据库的名称。如果您未指定临时数据库名称,Looker 会生成一个名为 looker_tmp 的临时数据库。以下命令使用 looker_tmp,但如果您指定了其他临时数据库名称,请使用您的临时数据库名称,而不是 looker_tmp

CREATE SCHEMA looker_tmp;
GRANT
  SELECT,
  INDEX,
  INSERT,
  UPDATE,
  DELETE,
  CREATE,
  DROP,
  ALTER,
  CREATE TEMPORARY TABLES
ON looker_tmp.* TO 'looker'@'%';

对于 SingleStore,或者如果您的数据库使用基于 GTID 的复制,则必须使用 create_process LookML 参数来使用 PDT,因为 GTID 不支持 CREATE TABLE AS SELECT 语句。

常规派生表的替代设置

如果您不想允许创建永久性派生表,仍然可以使用常规派生表。若要使用常规派生表,您仍需向名为 looker_tmp 的架构添加某些权限。不过,looker_tmp 架构实际上不需要存在于您的数据库中!

GRANT
  SELECT,
  INDEX,
  INSERT,
  DROP,
  CREATE TEMPORARY TABLES
ON looker_tmp.* TO 'looker'@'%';
-- Note that the looker_tmp schema does not need to actually exist,
-- even though these permission grants are still needed

设置 max_allowed_packet 变量

对于 MySQL,请将 MySQL max_allowed_packet 变量设置为最大值 1073741824,以防止出现“SQLException: Packet for query is too large”错误。

创建 Looker 与数据库的连接

完成数据库配置后,您可以从 Looker 连接到该数据库。请按照以下步骤创建从 Looker 到数据库的连接:

  1. 在 Looker 的管理部分中,选择连接,然后点击添加连接
  2. 方言下拉菜单中,选择您的数据库方言名称:MySQLMySQL 8.0.12+MariaDBSingleStoreSingleStore 7+

  3. 填写连接详情。这些设置中的大多数设置对于大多数数据库方言都是通用的。如需了解相关信息,请参阅将 Looker 连接到数据库文档页面。

  4. 如需验证连接是否成功,请点击测试。如需了解问题排查信息,请参阅测试数据库连接文档页面。

  5. 如需保存这些设置,请点击连接

功能支持

如需让 Looker 支持某些功能,您的数据库方言也必须支持这些功能。

自 Looker 25.10 起,MySQL 支持以下功能:

功能 是否支持?
支持级别
支持
Looker (Google Cloud Core)
对称聚合
派生表
基于 SQL 的永久性派生表
永久性原生派生表
稳定视图
终止查询
基于 SQL 的透视
时区
SSL
小计
JDBC 其他参数
区分大小写
位置类型
列表类型
百分位
不同值百分位
SQL Runner“显示进程”
SQL Runner“描述表”
SQL Runner 显示索引
SQL Runner 选择 10
SQL Runner 计数
SQL Explain
OAuth 2.0 凭据
上下文注释
连接池
HLL 草图
汇总认知度
增量 PDT
毫秒
微秒
具体化视图
与前一时间段相比的指标
近似计数不同

自 Looker 25.10 起,MySQL 8.0.12 及更高版本支持以下功能:

功能 是否支持?
支持级别
支持
Looker (Google Cloud Core)
对称聚合
派生表
基于 SQL 的永久性派生表
永久性原生派生表
稳定视图
终止查询
基于 SQL 的透视
时区
SSL
小计
JDBC 其他参数
区分大小写
位置类型
列表类型
百分位
不同值百分位
SQL Runner“显示进程”
SQL Runner“描述表”
SQL Runner 显示索引
SQL Runner 选择 10
SQL Runner 计数
SQL Explain
OAuth 2.0 凭据
上下文注释
连接池
HLL 草图
汇总认知度
增量 PDT
毫秒
微秒
具体化视图
与前一时间段相比的指标
近似计数不同

截至 Looker 25.10,MariaDB 支持以下功能:

功能 是否支持?
支持级别
支持
Looker (Google Cloud Core)
对称聚合
派生表
基于 SQL 的永久性派生表
永久性原生派生表
稳定视图
终止查询
基于 SQL 的透视
时区
SSL
小计
JDBC 其他参数
区分大小写
位置类型
列表类型
百分位
不同值百分位
SQL Runner“显示进程”
SQL Runner“描述表”
SQL Runner 显示索引
SQL Runner 选择 10
SQL Runner 计数
SQL Explain
OAuth 2.0 凭据
上下文注释
连接池
HLL 草图
汇总认知度
增量 PDT
毫秒
微秒
具体化视图
与前一时间段相比的指标
近似计数不同

截至 Looker 25.10,SingleStore 支持以下功能:

功能 是否支持?
支持级别
支持
Looker (Google Cloud Core)
对称聚合
派生表
基于 SQL 的永久性派生表
永久性原生派生表
稳定视图
终止查询
基于 SQL 的透视
时区
SSL
小计
JDBC 其他参数
区分大小写
位置类型
列表类型
百分位
不同值百分位
SQL Runner“显示进程”
SQL Runner“描述表”
SQL Runner 显示索引
SQL Runner 选择 10
SQL Runner 计数
SQL Explain
OAuth 2.0 凭据
上下文注释
连接池
HLL 草图
汇总认知度
增量 PDT
毫秒
微秒
具体化视图
与前一时间段相比的指标
近似计数不同

自 Looker 25.10 起,SingleStore 7 及更高版本支持以下功能:

功能 是否支持?
支持级别
支持
Looker (Google Cloud Core)
对称聚合
派生表
基于 SQL 的永久性派生表
永久性原生派生表
稳定视图
终止查询
基于 SQL 的透视
时区
SSL
小计
JDBC 其他参数
区分大小写
位置类型
列表类型
百分位
不同值百分位
SQL Runner“显示进程”
SQL Runner“描述表”
SQL Runner 显示索引
SQL Runner 选择 10
SQL Runner 计数
SQL Explain
OAuth 2.0 凭据
上下文注释
连接池
HLL 草图
汇总认知度
增量 PDT
毫秒
微秒
具体化视图
与前一时间段相比的指标
近似计数不同