微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何为Clickhouse设置管理员帐户?

如何解决如何为Clickhouse设置管理员帐户?

我正在Windows主机上的docker容器中运行Clickhouse。我试图创建一个帐户使其成为管理员帐户。看来用户没有创建其他帐户的权限。如何解决错误并创建管理员帐户?

docker-compose exec -T dash-clickhouse clickhouse-client --query="CREATE USER 'foo' IDENTIFIED WITH sha256_password BY 'bar'"

给出错误

Received exception from server (version 20.7.2):
Code: 497. DB::Exception: Received from localhost:9000. DB::Exception: default: Not enough privileges. To execute this query it's necessary to have the grant CREATE USER ON *.*.

解决方法

要修复此问题,需要在 users.xml 文件中启用access_management设置:

#  execute an interactive bash shell on the container
docker-compose exec {container_name} bash
# docker exec -it {container_name} bash

# install preferable text editor (i prefer using 'nano')
apt-get update
apt-get install nano

# open file users.xml in the editor
nano /etc/clickhouse-server/users.xml

取消注释默认用户的“ access_management”设置并保存更改:

..
<!-- User can create other users and grant rights to them. -->
<!-- <access_management>1</access_management> -->
..
,
mkdir -p  ~/Documents/docker/click/etc/conf.d

cat ~/Documents/docker/click/etc/conf.d/zxylalalhuayk.xml
<?xml version="1.0" ?>
<yandex>
    <users>
        <default>
     <access_management>1</access_management>
        </default>
    </users>
</yandex>


docker run -d --name test  -v ~/Documents/docker/click/etc/conf.d/:/etc/clickhouse-server/conf.d --ulimit nofile=262144:262144  -p 8123:8123 yandex/clickhouse-server

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。