使用这些说明的方言
以下方言共享本页所述的数据库设置要求:
- PostgreSQL
- Google Cloud SQL for PostgreSQL
- Microsoft Azure PostgreSQL
- AlloyDB for PostgreSQL
- Amazon Aurora PostgreSQL
- Amazon RDS for PostgreSQL
对于 Google Cloud SQL for PostgreSQL,Looker (Google Cloud Core) 提供应用默认凭据 (ADC) 作为一种身份验证方法。如需了解详情,请参阅 Looker (Google Cloud Core) 文档。
对于 AlloyDB for PostgreSQL、Amazon RDS for PostgreSQL 和 Amazon Aurora PostgreSQL,Looker 提供集成支持。如需为这些方言创建连接,请在新建连接页面上的方言下拉菜单中选择 PostgreSQL 9.5+。
如需了解 Heroku 上的 PostgreSQL,请参阅 Heroku 文档。
加密网络流量
最佳做法是对 Looker 应用与数据库之间的网络流量进行加密。考虑使用启用安全的数据库访问文档页面上介绍的某个选项。
如果您有兴趣使用 SSL 加密,请参阅 PostgreSQL 文档。
用户和安全性
为了对数据库执行操作,Looker 需要在您的数据库中拥有一个用户账号。
如果您使用的是 Looker (Google Cloud Core) 实例,并且想要使用 ADC,请使用您添加到 Cloud SQL 数据库的模拟服务账号用户名。服务账号用户名将采用 service-<project number>@gcp-sa-looker.iam.gserviceaccount.com
格式。如果您的服务账号用户名以 .gserviceaccount.com
结尾,请移除用户名的 .gserviceaccount.com
部分。截断后,用户名将显示为 service-<project number>@gcp-sa-looker.iam
。
如需配置供 Looker 使用的数据库用户,请在数据库中执行以下步骤:
创建数据库用户和密码。
CREATE USER USERNAME WITH ENCRYPTED PASSWORD 'PASSWORD';
向数据库用户授予权限,以便 Looker 能够对您的数据库执行操作:
GRANT CONNECT ON DATABASE DATABASE_NAME to USERNAME; \c DATABASE_NAME GRANT SELECT ON ALL SEQUENCES IN SCHEMA public TO USERNAME; GRANT SELECT ON ALL TABLES IN SCHEMA public TO USERNAME;
如果您使用的是
public
以外的架构,请运行以下命令,向 Looker 授予使用权限:GRANT USAGE ON SCHEMA SCHEMA_NAME TO USERNAME;
为确保您将来添加到公共架构中的表也可供 Looker 用户使用,请运行以下命令:
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON tables TO USERNAME; ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON sequences TO USERNAME;
根据您的设置,可能需要更改上述命令。如果其他用户或角色正在创建 Looker 用户日后需要权限的表,您必须指定一个目标角色或用户,以便将 Looker 用户的权限授予应用到该角色或用户:
ALTER DEFAULT PRIVILEGES FOR USER ANOTHER_USERNAME IN SCHEMA SCHEMA_NAME GRANT SELECT ON tables TO USERNAME;
ALTER DEFAULT PRIVILEGES FOR ROLE TARGET_ROLE IN SCHEMA SCHEMA_NAME GRANT SELECT ON sequences TO USERNAME;
例如,如果 web_app
用户创建了表,而您希望 looker
用户能够使用这些表,则必须运行 GRANT
语句,以向 looker
用户授予对 web_app
用户创建的表的权限。在这种情况下,目标角色或用户是 web_app
用户,这意味着您要更改 web_app
创建的表的权限,以便 looker
用户可以拥有读取这些表的权限。示例如下:
ALTER DEFAULT PRIVILEGES FOR USER web_app IN SCHEMA public GRANT SELECT ON tables TO looker;
如需了解详情,请访问 PostgreSQL 网站上的 ALTER DEFAULT PRIVILEGES
。
临时架构设置
自托管的 Postgres
创建 Looker 用户拥有的架构:
CREATE SCHEMA SCHEMA_NAME AUTHORIZATION USERNAME;
Amazon RDS 上的 PostgreSQL
创建临时架构:
CREATE SCHEMA SCHEMA_NAME;
将临时架构的所有权更改为 Looker 用户:
ALTER SCHEMA SCHEMA_NAME OWNER TO USERNAME;
设置 search_path
在将 Looker 连接到数据库之前,您应设置适当的 search_path
,以便 Looker SQL Runner 可以使用该权限从数据库中检索某些元数据:
ALTER USER USERNAME SET search_path TO '$user',SCHEMA_NAME,SCHEMA_NAME_2,SCHEMA_NAME_3
^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^
include a comma-separated list of
all schemas you'll use with Looker
创建 Looker 与数据库的连接
请按照以下步骤创建从 Looker 到数据库的连接:
- 在 Looker 的管理部分中,选择连接,然后点击添加连接。
从方言下拉菜单中,选择数据库方言名称。对于 AlloyDB for PostgreSQL 方言,请选择 PostgreSQL 9.5+。
填写连接详情。这些设置中的大多数设置对于大多数数据库方言都是通用的。如需了解相关信息,请参阅将 Looker 连接到数据库文档页面。
如需验证连接是否成功,请点击测试。如需了解问题排查信息,请参阅测试数据库连接文档页面。
如需保存这些设置,请点击连接。
功能支持
如需让 Looker 支持某些功能,您的数据库方言也必须支持这些功能。
自 Looker 25.10 起,PostgreSQL 9.5 及更高版本支持以下功能:
功能 | 是否支持? |
---|---|
支持级别 | 支持 |
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,Google Cloud PostgreSQL 支持以下功能:
功能 | 是否支持? |
---|---|
支持级别 | 支持 |
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,Microsoft Azure PostgreSQL 支持以下功能:
功能 | 是否支持? |
---|---|
支持级别 | 支持 |
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 | 是 |
毫秒 | 是 |
微秒 | 是 |
具体化视图 | 否 |
与前一时间段相比的指标 | 否 |
近似计数不同 | 否 |