IoTDB 入门教程④——数据库用户管理和用户权限管理

ops/2024/9/23 14:33:31/

文章目录

  • 一、前文
  • 二、修改ROOT密码
  • 三、用户登录
  • 四、查看用户列表
  • 五、创建用户
  • 六、删除用户
  • 七、修改用户
  • 八、查看指定用户的权限范围
  • 九、添加指定用户的权限范围
  • 十、删除指定用户的权限范围
  • 十一、参考

一、前文

IoTDB入门教程——导读

本文主要讲述数据库用户管理和用户权限管理

数据库的第一个账号(用户)毫无疑问是rootroot账号(用户)拥有所有权限。
对于root账号(用户)我们只需要做好密码管理功能。

一个数据库可能被多个应用使用,那么就需要分配不同的账号(用户)给不同的应用。
不同应用可读写的数据权限范围也不一样,所以需要按需授权和撤销授权。
当某个应用下线不再使用时,该应用对应的数据库账号(用户)也需要及时删除。

二、修改ROOT密码

  • 安装初始化后的 IoTDB 中有一个默认用户:root,默认密码为 root
  • 该用户为管理员用户,固定拥有所有权限,无法被赋予、撤销权限,也无法被删除,数据库内仅有一个管理员用户。
  • 所以,安装完IoTDB的第一步就是修改ROOT密码

ALTER USER SET PASSWORD ‘password’;

[root@iZ2ze30dygwd6yh7gu6lskZ apache-iotdb-1.3.1-all-bin]# bash sbin/start-cli.sh -h 127.0.0.1 -p 6667 -u root -pw root
---------------------
Starting IoTDB Cli
---------------------_____       _________  ______   ______    
|_   _|     |  _   _  ||_   _ `.|_   _ \   | |   .--.|_/ | | \_|  | | `. \ | |_) |  | | / .'`\ \  | |      | |  | | |  __'.  _| |_| \__. | _| |_    _| |_.' /_| |__) | 
|_____|'.__.' |_____|  |______.'|_______/  version 1.3.1 (Build: 214695d)Successfully login at 127.0.0.1:6667
IoTDB> ALTER USER root SET PASSWORD '1234567890';
Msg: The statement is executed successfully.
IoTDB> exit
[root@iZ2ze30dygwd6yh7gu6lskZ apache-iotdb-1.3.1-all-bin]# bash sbin/start-cli.sh -h 127.0.0.1 -p 6667 -u root -pw 1234567890
---------------------
Starting IoTDB Cli
---------------------_____       _________  ______   ______    
|_   _|     |  _   _  ||_   _ `.|_   _ \   | |   .--.|_/ | | \_|  | | `. \ | |_) |  | | / .'`\ \  | |      | |  | | |  __'.  _| |_| \__. | _| |_    _| |_.' /_| |__) | 
|_____|'.__.' |_____|  |______.'|_______/  version 1.3.1 (Build: 214695d)Successfully login at 127.0.0.1:6667
IoTDB> 

三、用户登录

  • -h 指定IP地址
  • -p 指定端口
  • -u 指定用户
  • -pw 指定密码

bash sbin/start-cli.sh -h 127.0.0.1 -p 6667 -u root -pw 1234567890

[root@iZ2ze30dygwd6yh7gu6lskZ apache-iotdb-1.3.1-all-bin]# bash sbin/start-cli.sh -h 127.0.0.1 -p 6667 -u root -pw 1234567890
---------------------
Starting IoTDB Cli
---------------------_____       _________  ______   ______    
|_   _|     |  _   _  ||_   _ `.|_   _ \   | |   .--.|_/ | | \_|  | | `. \ | |_) |  | | / .'`\ \  | |      | |  | | |  __'.  _| |_| \__. | _| |_    _| |_.' /_| |__) | 
|_____|'.__.' |_____|  |______.'|_______/  version 1.3.1 (Build: 214695d)Successfully login at 127.0.0.1:6667
IoTDB> 

四、查看用户列表

LIST USER

IoTDB> LIST USER
+-----+
| user|
+-----+
| root|
|user1|
+-----+
Total line number = 2
It costs 0.004s

五、创建用户

CREATE USER user1 ‘12345678’

IoTDB> CREATE USER user1 '12345678'
Msg: The statement is executed successfully.

六、删除用户

DROP USER user1;

IoTDB> DROP USER user1
Msg: The statement is executed successfully.

七、修改用户

ALTER USER user1 SET PASSWORD ‘88888888’

IoTDB> ALTER USER user1 SET PASSWORD '88888888'
Msg: The statement is executed successfully.

八、查看指定用户的权限范围

权限名称权限范围
ALL所有权限
READREAD_SCHEMA、READ_DATA
WRITEWRITE_SCHEMA、WRITE_DATA

LIST PRIVILEGES OF USER user1

IoTDB> LIST PRIVILEGES OF USER user1
+----+----+----------+------------+
|ROLE|PATH|PRIVILEGES|GRANT OPTION|
+----+----+----------+------------+
+----+----+----------+------------+
Empty set.
It costs 0.003s

九、添加指定用户的权限范围

GRANT READ_DATA,WRITE_DATA ON root.user1.** TO USER user1 WITH GRANT OPTION;

IoTDB> GRANT READ_DATA,WRITE_DATA ON root.user1.** TO USER user1 WITH GRANT OPTION;
Msg: The statement is executed successfully.
IoTDB> LIST PRIVILEGES OF USER user1
+----+-------------+----------+------------+
|ROLE|         PATH|PRIVILEGES|GRANT OPTION|
+----+-------------+----------+------------+
|    |root.user1.**| READ_DATA|        true|
|    |root.user1.**|WRITE_DATA|        true|
+----+-------------+----------+------------+
Total line number = 2
It costs 0.004s

十、删除指定用户的权限范围

REVOKE WRITE_DATA ON root.user1.** FROM USER user1

IoTDB> REVOKE WRITE_DATA ON root.user1.** FROM USER user1
Msg: The statement is executed successfully.
IoTDB> LIST PRIVILEGES OF USER user1
+----+-------------+----------+------------+
|ROLE|         PATH|PRIVILEGES|GRANT OPTION|
+----+-------------+----------+------------+
|    |root.user1.**| READ_DATA|        true|
+----+-------------+----------+------------+
Total line number = 1
It costs 0.006s

十一、参考

权限管理 | IoTDB Website

觉得好,就一键三连呗(点赞+收藏+关注)


http://www.ppmy.cn/ops/29424.html

相关文章

机器翻译常用指标BLEU

诸神缄默不语-个人CSDN博文目录 文章目录 什么是BLEU指标?BLEU指标的原理BLEU的计算公式BLEU指标的Python实现 什么是BLEU指标? BLEU(Bilingual Evaluation Understudy)指标是一种评估机器翻译质量的方法,广泛用于自然…

Linux 第十八章

🐶博主主页:ᰔᩚ. 一怀明月ꦿ ❤️‍🔥专栏系列:线性代数,C初学者入门训练,题解C,C的使用文章,「初学」C,linux 🔥座右铭:“不要等到什么都没有了…

IOS上线操作

1、拥有苹果开发者账号 2、配置证书,进入苹果开发者官网(https://developer.apple.com/) 3、点击账户(account),然后创建一个唯一的标识符 4、点击"Identifiers",然后点击"&qu…

设计模式:建造者模式

目录 一,概念 二,不使用建造者有什么麻烦 三,格式 一,概念 建造者模式(Builder Pattern)是一种创建型设计模式,用于将复杂对象的构建与其表示分离,以便同样的构建过程可以创建不同…

CTF(Capture The Flag)编码方式

CTF(Capture The Flag)比赛中,编码和解码是常见的挑战类别之一,涉及到各种不同的编码方式。以下是一些CTF中可能出现的编码技术列表: Base系列编码: Base16(Hexadecimal)&#xff1a…

AI图书推荐:用ChatGPT快速创建在线课程

您是否是您领域的专家,拥有丰富的知识和技能可以分享?您是否曾想过创建一个在线课程,但被这个过程吓倒了?那么,是时候把这些担忧放在一边,迈出这一步了!有了这本指南和ChatGPT的帮助&#xff0c…

R语言学习—4—数据矩阵及R表示

1、创建向量、矩阵 在R中,c()函数用于创建向量或组合数据对象。它在某些情况下可能会被省略,因为R有一些隐式的向量创建规则。例如,当你使用:操作符创建一个数字序列时,R会自动创建一个向量,所以你不需要显式地调用c()…

JAVA面试之MQ

如何保证消息的可靠传输?如果消息丢了怎么办 数据的丢失问题,可能出现在生产者、MQ、消费者中。 (1)生产者发送消息时丢失: ①生产者发送消息时连接MQ失败 ②生产者发送消息到达MQ后未找到Exchange(交换机) ③生产者发…