各位大佬,请教一下: 我的Clickhouse集群,使用default用户创建了另外一个用户test,当我修改default用户密码时候,test用户受到影响,无法访问原可以访问的数据库表。这个要怎么解决?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
问题描述: 您在ClickHouse集群中使用default
用户创建了新用户test
,当您更改default
用户的密码后,发现test
用户无法访问原本可以访问的数据库表。
可能原因:
test
用户的权限是通过default
用户间接授予的,并且依赖于default
用户的特定属性(如密码作为认证的一部分),那么修改default
用户的密码可能影响了这种继承关系。解决方案:
test
用户直接分配所需的数据库和表的访问权限,确保其权限不依赖于default
用户的配置。这样即使修改了default
用户的密码或属性,也不会影响到test
用户的权限。
default
或其他管理员账户)执行以下SQL命令为test
用户分配权限:
GRANT [ON {cluster}] {privilege} [,...] ON {database}.{table|view|dictionary|all} TO {user|role} [,...] [WITH GRANT OPTION]
其中,替换方括号内的内容以匹配您的实际需求。例如,若要给test
用户分配对所有数据库的所有权限,可以执行:
GRANT ALL ON *.* TO test;
注意事项:
通过上述步骤,您可以为test
用户独立设置权限,解决因修改default
用户密码导致的访问问题。您可以复制页面截图提供更多信息,我可以进一步帮您分析问题原因。
阿里云EMR是云原生开源大数据平台,为客户提供简单易集成的Hadoop、Hive、Spark、Flink、Presto、ClickHouse、StarRocks、Delta、Hudi等开源大数据计算和存储引擎,计算资源可以根据业务的需要调整。EMR可以部署在阿里云公有云的ECS和ACK平台。