zookeeper常用命令

  进入 zookeeper的bin目录,

  1. 启动服务:./zkServer.sh start  , ./zkServer.sh restart 先关闭服务再启动服务

  2.启动客户端  ./zkCli.sh 

  3.ls  显示当前节点的子节点

[zk: localhost:2181(CONNECTED) 1] ls /

[zookeeper]

   ls2 显示状态目录

[zk: localhost:2181(CONNECTED) 4] ls2 /

[zookeeper]

cZxid = 0x0                      ##cZxid 创建的当前节点

ctime = Thu Jan 01 08:00:00 CST 1970     ##ctime 创建时间

mZxid = 0x0                   ##mZxid 修改后的节点

mtime = Thu Jan 01 08:00:00 CST 1970     ##mtime 修改时间 若没有修改,修改时间和创建时间一模一样

pZxid = 0x0                    ##pZxid 子节点ID

cversion = -1                  ##cversion 子节点版本号

dataVersion = 0                 ##dataVersion 当前节点的版本号,修改一次加1

aclVersion = 0                  ##aclVersion 权限控制 一般是累计加1

ephemeralOwner = 0x0              ##ephemeralOwner 0x0表示持久节点,如果是0x10老长一段字符就是临时节点

dataLength = 0                  ##dataLength 数据长度

numChildren = 1                 ##numChildren 表示子节点有多少个

  4.get stat 

  stat / 显示节点状态

  'ls /'+ 'stat /'= 'ls2 /'

   get /获取当前节点内容

[zk: localhost:2181(CONNECTED) 5] stat /
cZxid = 0x0   
ctime = Thu Jan 01 08:00:00 CST 1970
mZxid = 0x0
mtime = Thu Jan 01 08:00:00 CST 1970
pZxid = 0x0
cversion = -1
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 0
numChildren = 1
[zk: localhost:2181(CONNECTED) 1] get /
                    ##当前内容为空
cZxid = 0x0
ctime = Thu Jan 01 08:00:00 CST 1970
mZxid = 0x0
mtime = Thu Jan 01 08:00:00 CST 1970
pZxid = 0x0
cversion = -1
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 0
numChildren = 1

 5.create 创建节点

 create[-s] [-e] path data acl -e 创建临时节点 断开连接一段时间后,自动清空节点数据

[zk: localhost:2181(CONNECTED) 1] create /boss theCat
Created /boss
[zk: localhost:2181(CONNECTED) 3] ls2 /
[boss, zookeeper]
cZxid = 0x0
ctime = Thu Jan 01 08:00:00 CST 1970
mZxid = 0x0
mtime = Thu Jan 01 08:00:00 CST 1970
pZxid = 0x6
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 0
numChildren = 2
[zk: localhost:2181(CONNECTED) 4] get /boss 
theCat
cZxid = 0x6
ctime = Thu Dec 27 20:32:10 CST 2018
mZxid = 0x6
mtime = Thu Dec 27 20:32:10 CST 2018
pZxid = 0x6
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 6
numChildren = 0

  -s 创建顺序节点 

  

  6. set delete

   set path data [version]   set时使用了乐观锁,先获取version,修改成功后,version+=1;如果获取的version小于修改节点version则报错,修改失败

  delete path [version]  verseion与set一样,可加也可不加。

  这里经常会出现 删除数据失败,因为路径下 不为空。这个情况,我们使用rmr /path 删除

原文地址:https://www.cnblogs.com/nicknailo/p/10187019.html