clickhouse的官方文档上面是有create user 和grant授权的,但是命令行下运行都提示无权限。
1,根据官方文档操作报错
testticdc :-] CREATE USER mira HOST IP '127.0.0.1' IDENTIFIED WITH sha256_password BY 'qwerty'; CREATE USER mira IDENTIFIED WITH sha256_hash BY '65E84BE33532FB784C48129675F9EFF3A682B27168C0EA744B2CF58EE02337C5' HOST LOCAL Received exception from server (version 20.8.3): Code: 497. DB::Exception: Received from 127.0.0.1:9000. DB::Exception: default: Not enough privileges. To execute this query it's necessary to have the grant CREATE USER ON *.*. 0 rows in set. Elapsed: 0.002 sec.
这是官方文档上面的demo,跑不通
2,修改users.xml文件
<tanktest>
     <password>123456</password>
     <networks incl="networks" replace="replace">
         <ip>::/0</ip>
     </networks>
     <profile>default</profile>
     <quota>default</quota>
     <allow_databases>
          <database>netjoytest1</database>
     </allow_databases>
     <access_management>1</access_management>
</tanktest>
<testread>
    <password>123456</password>
    <networks incl="networks" replace="replace">
        <ip>::/0</ip>
    </networks>
    <profile>readonly</profile>
    <quota>default</quota>
</testread>
注意:allow_databases允许的数据库,show databases 只能看到允许的库,如果没有表示所有数据库。
scp users.xml 10.0.55.17:/etc/clickhouse-server scp users.xml 10.0.55.16:/etc/clickhouse-server scp users.xml 10.0.10.24:/etc/clickhouse-server ssh 10.0.55.17 "/etc/init.d/clickhouse-server restart" ssh 10.0.55.16 "/etc/init.d/clickhouse-server restart" ssh 10.0.10.24 "/etc/init.d/clickhouse-server restart"
只读账号插入会报错。
testpd :-] insert into tanktest values(1, 'tank', '2021-08-23 14:21:30'); INSERT INTO tanktest VALUES Received exception from server (version 20.8.3): Code: 164. DB::Exception: Received from 127.0.0.1:9000. DB::Exception: testread: Cannot execute query in readonly mode. 0 rows in set. Elapsed: 0.003 sec.
转载请注明
作者:海底苍鹰
地址:http://blog.51yip.com/clickhouse/2523.html