如何为ClickHouse用户赋予数据库级别的Select权限
操作步骤
- 登录到MRS集群装有ClickHouse客户端的节点,执行如下命令:
    
    
su - omm
source {客户端安装目录}/bigdata_env
kinit 组件用户(普通集群无需执行kinit命令)
clickhouse client --host clickhouse实例节点IP --port 9000 -m --user clickhouse –password 'clickhouse用户密码'
 
     查看ClickHouse用户密码:
登录FusionInsight Manager界面,选择“集群 > 服务 > ClickHouse > 实例”,单击任意ClickHouseServer角色名称。进入ClickHouseServer“概览”页面,单击“配置文件”中的users.xml文件,查看ClickHouse用户密码。
 - 创建指定数据库只读权限角色,有如下两种方案:
    
    
方案一:
- 创建指定数据库只读权限角色(以default数据库为例,下同):
      
create role ck_role on cluster default_cluster;
GRANT SELECT ON default.* TO ck_role on cluster default_cluster;
 - 创建普通用户
      
CREATE USER user_01 on cluster default_cluster IDENTIFIED WITH PLAINTEXT_PASSWORD BY 'password';
 - 将只读权限角色赋予普通用户
 - 查看用户权限
      
      
select * from system.grants where role_name = 'ck_role';
 
方案二:
创建指定数据库只读权限用户:
 - 创建指定数据库只读权限角色(以default数据库为例,下同):