Java中的zookeeper常用命令详解

 更新时间:2022年06月24日 11:08:02   作者:怪 咖@  
这篇文章主要介绍了Java中的zookeeper常用命令,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

注意我这里用的是官方最稳定的版本3.7.1,版本之间有个别命令是有差距的!

1.zkCli.sh客户端

zkCli.sh可以理解成客户端,也可以理解成命令行工具,把命令交给他,让他和zk的服务端打交道。
类似于mysql,我们安装完mysql想要执行命令,那么就必须要通过mysql -u账号 -p密码进入命令行工具里面,才能执行sql。

在zookeeper/bin 目录下:

在这里插入图片描述

执行./zkCli.sh就进入到了客户端

ls /:查询当前目录下的节点
create /test1:创建test1节点

在这里插入图片描述

客户端关闭:

输入quit 或者按 Ctrl + C

2.多节点类型创建

  • 创建持久节点:create /test2
  • 创建持久序号节点:create -s /test2
  • 创建临时节点:create -e /test2
  • 创建临时序号节点:create -e -s /test2
  • 创建容器节点:create -c /test2

创建test3临时节点,并向节点赋值数据1(其他节点创建的时候赋值同样如此,在后面跟上数据即可):create -e /test3 1

3.查询节点

  • 查询子节点:
  • 查询当前节点的子节点:ls /
  • 就是获取test2下的子节点:ls /test2
  • 普通节点下的数据:get /test2
  • 查询节点详细信息:get -s /test2 || start /test2 || ls -s /test2 (这三种都可以的)

在这里插入图片描述

4.set数据

set [-s] [-v version] path data
  • path:节点路径。
  • data:需要存储的数据。
  • [-v version]:可选项,版本号(可用作乐观锁)。
  • [-s]:set后返回详情,不添加-s就是返回的set的数据

版本不对就set不成功!

在这里插入图片描述

5.删除节点

  • 普通删除
  • 删除a下的b节点:delete /a/b
  • 删除a节点:delete /a
  • 不管有没有子节点都删除:deleteall /test1
  • 乐观锁删除(1就是get -s查询出来的dataVersion版本,版本不对删除就失败):delete -v 1 /test2

在这里插入图片描述

6.权限设置

acl:权限,定义了什么样的⽤户能够操作这个节点,且能够进⾏怎样的操作。

  • c: create 创建权限,允许在该节点下创建⼦节点
  • w:write 更新权限,允许更新该节点的数据
  • r:read 读取权限,允许读取该节点的内容以及⼦节点的列表信息
  • d:delete 删除权限,允许删除该节点的⼦节点
  • a:admin 管理者权限,允许对该节点进⾏acl权限设置

常用命令:

  • 获取某个节点的 acl 权限信息:getAcl /test2
  • 设置某个节点的 acl 权限信息:
  • 指定该节点只有c的权限:setAcl /test2 world:anyone:c
  • 指定某个ip具有什么权限:setAcl /runoob/ip ip:192.168.3.7:cdrwa

在这里插入图片描述

注册当前会话的账号和密码:

addauth digest xiaowang:123456

创建一个节点赋值abcd数据,然后必须使用xiaoming账号密码才能进行读写权限,这时候使用别的会话是访问不了这个节点的。

create /test-node abcd auth:xiaowang:123456:cdwra

在另⼀个会话中必须先使⽤账号密码,才能拥有操作该节点的权限

在这里插入图片描述

7.其他命令

当命令输入错误的时候会出现命令帮助文档的!
查看当前会话的历史命令:history

到此这篇关于Java中的zookeeper常用命令详解的文章就介绍到这了,更多相关zookeeper常用命令内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • java高并发之线程组详解

    java高并发之线程组详解

    这篇文章主要介绍了java高并发之线程组,Java提供了ThreadGroup类来控制一个线程组,一个线程组可以通过线程对象来创建,也可以由其他线程组来创建,生成一个树形结构的线程,需要的朋友可以参考下
    2021-10-10
  • 使用纯Java实现一个WebSSH项目的示例代码

    使用纯Java实现一个WebSSH项目的示例代码

    这篇文章主要介绍了使用纯Java实现一个WebSSH项目,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • Java多线程的用法详解

    Java多线程的用法详解

    本篇文章介绍了,在Java中多线程的用法详解。需要的朋友参考下
    2013-04-04
  • Java实现最小高度树

    Java实现最小高度树

    本文主要介绍了Java实现最小高度树,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-04-04
  • 基于spring@aspect注解的aop实现过程代码实例

    基于spring@aspect注解的aop实现过程代码实例

    这篇文章主要介绍了基于spring@aspect注解的aop实现过程代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • Mybatis动态拼接sql提高插入速度实例

    Mybatis动态拼接sql提高插入速度实例

    这篇文章主要介绍了Mybatis动态拼接sql提高插入速度实例,当数据量少的时候,没问题,有效时间内可能完成插入,但是当数据量达到一定程度的时候,每次都一个sql插入超时,所以采用了拼接sql的方式加快速度,需要的朋友可以参考下
    2023-09-09
  • 自定义的Troop<T>泛型类( c++, java和c#)的实现代码

    自定义的Troop<T>泛型类( c++, java和c#)的实现代码

    这篇文章主要介绍了自定义的Troop<T>泛型类( c++, java和c#)的实现代码的相关资料,需要的朋友可以参考下
    2017-05-05
  • SpringMVC通过模型视图ModelAndView渲染视图的实现

    SpringMVC通过模型视图ModelAndView渲染视图的实现

    这篇文章主要介绍了SpringMVC通过模型视图ModelAndView渲染视图的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • Java8特性使用Function代替分支语句

    Java8特性使用Function代替分支语句

    这篇文章主要介绍了Java8特性使用Function代替分支语句,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • POS机如何与Java交互的方式探讨

    POS机如何与Java交互的方式探讨

    本文深入探讨POS机与Java语言的交互机制,详细介绍了通过RESTfulAPI、Socket编程和消息队列等方式实现数据交换和功能调用,文章还包含了代码示例、状态图与关系图,帮助开发者理解和实现POS机与Java之间的高效交互
    2024-09-09

最新评论