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

相关文章

gradle第三方Jar包依赖统一管理方式

《gradle第三方Jar包依赖统一管理方式》:本文主要介绍gradle第三方Jar包依赖统一管理方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录背景实现1.顶层模块build.gradle添加依赖管理插件2.顶层模块build.gradle添加所有管理依赖包

基于Python打造一个智能单词管理神器

《基于Python打造一个智能单词管理神器》这篇文章主要为大家详细介绍了如何使用Python打造一个智能单词管理神器,从查询到导出的一站式解决,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 项目概述:为什么需要这个工具2. 环境搭建与快速入门2.1 环境要求2.2 首次运行配置3. 核心功能使用指

SpringBoot UserAgentUtils获取用户浏览器的用法

《SpringBootUserAgentUtils获取用户浏览器的用法》UserAgentUtils是于处理用户代理(User-Agent)字符串的工具类,一般用于解析和处理浏览器、操作系统以及设备... 目录介绍效果图依赖封装客户端工具封装IP工具实体类获取设备信息入库介绍UserAgentUtils

Mysql用户授权(GRANT)语法及示例解读

《Mysql用户授权(GRANT)语法及示例解读》:本文主要介绍Mysql用户授权(GRANT)语法及示例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql用户授权(GRANT)语法授予用户权限语法GRANT语句中的<权限类型>的使用WITH GRANT

Spring Security+JWT如何实现前后端分离权限控制

《SpringSecurity+JWT如何实现前后端分离权限控制》本篇将手把手教你用SpringSecurity+JWT搭建一套完整的登录认证与权限控制体系,具有很好的参考价值,希望对大家... 目录Spring Security+JWT实现前后端分离权限控制实战一、为什么要用 JWT?二、JWT 基本结构

HTML5中的Microdata与历史记录管理详解

《HTML5中的Microdata与历史记录管理详解》Microdata作为HTML5新增的一个特性,它允许开发者在HTML文档中添加更多的语义信息,以便于搜索引擎和浏览器更好地理解页面内容,本文将探... 目录html5中的Mijscrodata与历史记录管理背景简介html5中的Microdata使用M

Spring 基于XML配置 bean管理 Bean-IOC的方法

《Spring基于XML配置bean管理Bean-IOC的方法》:本文主要介绍Spring基于XML配置bean管理Bean-IOC的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一... 目录一. spring学习的核心内容二. 基于 XML 配置 bean1. 通过类型来获取 bean2. 通过

数据库面试必备之MySQL中的乐观锁与悲观锁

《数据库面试必备之MySQL中的乐观锁与悲观锁》:本文主要介绍数据库面试必备之MySQL中乐观锁与悲观锁的相关资料,乐观锁适用于读多写少的场景,通过版本号检查避免冲突,而悲观锁适用于写多读少且对数... 目录一、引言二、乐观锁(一)原理(二)应用场景(三)示例代码三、悲观锁(一)原理(二)应用场景(三)示例

Node.js 数据库 CRUD 项目示例详解(完美解决方案)

《Node.js数据库CRUD项目示例详解(完美解决方案)》:本文主要介绍Node.js数据库CRUD项目示例详解(完美解决方案),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考... 目录项目结构1. 初始化项目2. 配置数据库连接 (config/db.js)3. 创建模型 (models/

python uv包管理小结

《pythonuv包管理小结》uv是一个高性能的Python包管理工具,它不仅能够高效地处理包管理和依赖解析,还提供了对Python版本管理的支持,本文主要介绍了pythonuv包管理小结,具有一... 目录安装 uv使用 uv 管理 python 版本安装指定版本的 Python查看已安装的 Python