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

2024-05-03 06:04

本文主要是介绍IoTDB 入门教程④——数据库用户管理和用户权限管理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

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

一、前文

IoTDB入门教程——导读

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

数据库的第一个账号(用户)毫无疑问是root,root账号(用户)拥有所有权限。
对于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

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

这篇关于IoTDB 入门教程④——数据库用户管理和用户权限管理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/955988

相关文章

MySQL数据库双机热备的配置方法详解

《MySQL数据库双机热备的配置方法详解》在企业级应用中,数据库的高可用性和数据的安全性是至关重要的,MySQL作为最流行的开源关系型数据库管理系统之一,提供了多种方式来实现高可用性,其中双机热备(M... 目录1. 环境准备1.1 安装mysql1.2 配置MySQL1.2.1 主服务器配置1.2.2 从

SpringBoot基于注解实现数据库字段回填的完整方案

《SpringBoot基于注解实现数据库字段回填的完整方案》这篇文章主要为大家详细介绍了SpringBoot如何基于注解实现数据库字段回填的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以了解... 目录数据库表pom.XMLRelationFieldRelationFieldMapping基础的一些代

Linux创建服务使用systemctl管理详解

《Linux创建服务使用systemctl管理详解》文章指导在Linux中创建systemd服务,设置文件权限为所有者读写、其他只读,重新加载配置,启动服务并检查状态,确保服务正常运行,关键步骤包括权... 目录创建服务 /usr/lib/systemd/system/设置服务文件权限:所有者读写js,其他

Spring Boot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)

《SpringBoot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)》本文将以一个实际案例(用户管理系统)为例,详细解析SpringBoot中Co... 目录引言:为什么学习Spring Boot分层架构?第一部分:Spring Boot的整体架构1.1

在Node.js中使用.env文件管理环境变量的全过程

《在Node.js中使用.env文件管理环境变量的全过程》Node.js应用程序通常依赖于环境变量来管理敏感信息或配置设置,.env文件已经成为一种流行的本地管理这些变量的方法,本文将探讨.env文件... 目录引言为什么使php用 .env 文件 ?如何在 Node.js 中使用 .env 文件最佳实践引

k8s admin用户生成token方式

《k8sadmin用户生成token方式》用户使用Kubernetes1.28创建admin命名空间并部署,通过ClusterRoleBinding为jenkins用户授权集群级权限,生成并获取其t... 目录k8s admin用户生成token创建一个admin的命名空间查看k8s namespace 的

使用Node.js和PostgreSQL构建数据库应用

《使用Node.js和PostgreSQL构建数据库应用》PostgreSQL是一个功能强大的开源关系型数据库,而Node.js是构建高效网络应用的理想平台,结合这两个技术,我们可以创建出色的数据驱动... 目录初始化项目与安装依赖建立数据库连接执行CRUD操作查询数据插入数据更新数据删除数据完整示例与最佳

Oracle数据库在windows系统上重启步骤

《Oracle数据库在windows系统上重启步骤》有时候在服务中重启了oracle之后,数据库并不能正常访问,下面:本文主要介绍Oracle数据库在windows系统上重启的相关资料,文中通过代... oracle数据库在Windows上重启的方法我这里是使用oracle自带的sqlplus工具实现的方

MySQL批量替换数据库字符集的实用方法(附详细代码)

《MySQL批量替换数据库字符集的实用方法(附详细代码)》当需要修改数据库编码和字符集时,通常需要对其下属的所有表及表中所有字段进行修改,下面:本文主要介绍MySQL批量替换数据库字符集的实用方法... 目录前言为什么要批量修改字符集?整体脚本脚本逻辑解析1. 设置目标参数2. 生成修改表默认字符集的语句3

python库pydantic数据验证和设置管理库的用途

《python库pydantic数据验证和设置管理库的用途》pydantic是一个用于数据验证和设置管理的Python库,它主要利用Python类型注解来定义数据模型的结构和验证规则,本文给大家介绍p... 目录主要特点和用途:Field数值验证参数总结pydantic 是一个让你能够 confidentl