理解Zookeeper(四):Zookeeper中的zkCli.sh客户端使用
最好配置上环境变量
连接操作:
zkCli.sh -timeout 1000 -r -server 127.0.0.1 # -timeout 设置客户端和服务器之间的超时时长,单位毫秒 # -r 只读模式,不加就是读写模式 # -server IP:PORT 要连接的服务器
查询操作:
ls / # 查看指定路径下的节点
stat PATH # 查看指定节点的状态信息
get PATH # 获取指定节点的数据,它会包括状态信息
ls2 PATH # 列出子节点同时输出当前节点的状态信息
创建节点:
create [-s] [-e] PATH DATA acl # 路径和数据,数据可以为空 -s是顺序节点(会自动在名称后面加序列号) -e是临时节点,不加则是永久节点
我这里在原有/zktest节点下建立了test1子节点,其数据内容为test1
查看一下数据
修改节点:
set PATH DATA [version] # 路径和数据,可以设置版本号也可以不设置
修改版本号
set /zktest/test1 test002 2 # 这里要么不填写版本号要么版本号就要和上次一致,这里的版本号不是说修改版本号,而是修改版本号为2的 /zktest/test1 节点的数据, # 这里的版本号是一个条件
删除操作:
delete PATH [version] # 删除指定路径的节点,且节点必须为空,如果要删除含有子节点的节点则不行 rmr PATH # 递归删除
配额设置:
比如数据内容不能无限的大,子节点不能无限的多这类设置。
setquota -n|-b val path # -n 是限制子节点个数 -b是限制节点数据长度 val是额度 path 是节点
奇怪的是设置的子节点数量为2,可是居然能建立3个。其实它的限制只是会在日志中记录,并不会抛出错误,所以就算设置了配置还是可以建立,下面是日志显示
# 显示节点配额信息 listquota PATH
说明:
-
第一行是 count=2 子节点限制为2, bytes=-1,表示数据长度没有限制
-
第二行是 count=4 当前子节点包含自己本身一共有4个节点,其实该节点下只有3个子节点,这里多出的一个就是节点自己,bytes=11 表示包含子节点和自己的数据长度为11,所以第二行显示的是包含自己在内的总数。
# 删除配额设置 delquota [-n|-b] PATH