FE 配置 - 用户管理、查询引擎和导入导出
FE 参数分为动态参数和静态参数。
-
动态参数可通过 SQL 命令进行在线配置和调整,方便快捷。需要注意通过 SQL 命令所做的动态设置在重启 FE 后会失效。如果想让设置长期生效,建议同时修改 fe.conf 文件。
-
静态参数必须在 FE 配置文件 fe.conf 中进行配置和调整。调整完成后,需要重启 FE 使变更生效。
参数是否为动态参数可通过 ADMIN SHOW CONFIG 返回结果中的 IsMutable 列查看。TRUE 表示动态参数。
静态和动态参数均可通过 fe.conf 文件进行修改。
查看 FE 配置项
FE 启动后,您可以在 MySQL 客户端运行 ADMIN SHOW FRONTEND CONFIG 命令查看参数配置。如果要查询特定参数的配置,请运行以下命令:
ADMIN SHOW FRONTEND CONFIG [LIKE "pattern"];
有关返回字段的详细说明,请参阅 ADMIN SHOW CONFIG。
备注
您必须具有管理员权限才能运行集群管理相关命令。
配置 FE 参数
配置 FE 动态参数
您可以使用 ADMIN SET FRONTEND CONFIG 命令配置或修改 FE 动态参数。
ADMIN SET FRONTEND CONFIG ("key" = "value");
备注
动态设置的配置项,在 FE 重启之后会恢复成 fe.conf 文件中的配置或者默认值。如果需要让配置长期生效,建议设置完之后同时修改 fe.conf 文件,防止重启后修改失效。
配置 FE 静态参数
备注
FE 静态参数不支持在线修改,您需要在 fe.conf 中修改并重启 FE 以使修改生效。
当前主题包含以下类型的 FE 配置:
用户、角色和权限
authorization_enable_query_profile_access_check
- 默认值: false
- 类型: Boolean
- 单位: -
- 是否可变: Yes
- 描述: 是否限制缓存的 Query Profile 的读取权限。设置为
true时,SHOW PROFILELIST、ANALYZE PROFILE、get_query_profile函数、/api/profile和/api/query/progressHTTP 接口,以及/query和/query_profileWeb 页面只向执行该查询的用户,或拥有 SYSTEM 级 OPERATE 权限的用户返回 Profile;未记录用户的 Profile(例如 EXPORT 作业和 Stream Load 导入)只有拥有 OPERATE 权限的用户才能读取。/api/query_detail和/api/v2/query_detail接口仍会列出所有查询,但按同样的规则省略profile字段,以及由该 Profile 渲染而来的explain字段。若同时开启authorization_enable_admin_user_protection,root执行的查询的 Profile 仅root自己可以读取。设置为false(默认值)时,任何已登录用户都可以读取所有 Profile,与此前版本的行为一致。每个 FE 只对自身持有的 Profile 执行此检查。若要在整个集群范围内限制访问,请在所有 FE 升级到支持该配置项的版本后,在每个 FE 的fe.conf中设置该项。开启前还需注意两点影响:一是/api/query/progress不再接受匿名请求,因为权限判断需要调用方身份,原先匿名轮询该接口的程序会收到401;二是如果query_id对应的 Profile 未缓存在当前会话连接的 FE 上,get_query_profile()需要 OPERATE 权限——跨 FE 获取 Profile 的 RPC 不携带调用方身份,无法在对端完成鉴权,因此开启该检查期间,跨 FE 获取 Profile 仅限拥有 OPERATE 权限的用户。 - 引入版本: v4.1
enable_task_info_mask_credential
- 默认值: true
- 类型: Boolean
- 单位: -
- 是否可变: Yes
- 描述: 当为 true 时,StarRocks 会在将凭据从任务 SQL 定义返回到
information_schema.tasks和information_schema.task_runs之前,通过对 DEFINITION 列应用 SqlCredentialRedactor.redact 来屏蔽凭据。在information_schema.task_runs中,无论定义是来自任务运行状态还是在为空时来自任务定义查找,都应用相同的屏蔽。当为 false 时,返回原始任务定义(可能会暴露凭据)。屏蔽是 CPU/字符串处理工作,当任务或task_runs数量很大时可能非常耗时;仅当您需要未屏蔽的定义并接受安全风险时才禁用。 - 引入版本: v3.5.6
privilege_max_role_depth
- 默认值: 16
- 类型: Int
- 单位:
- 是否可变: Yes
- 描述: 角色的最大角色深度(继承级别)。
- 引入版本: v3.0.0
privilege_max_total_roles_per_user
- 默认值: 64
- 类型: Int
- 单位:
- 是否可变: Yes
- 描述: 用户可以拥有的最大角色数量。
- 引入版本: v3.0.0