一:启动拽库的shell命令行
zkCli.sh -server localhost:2181
退出:quit
二:查询所有的命令
help
三:查询对应的节点
--查询zk上的根节点
ls /
ls /zookeeper
四:查询对应节点的节点信息(节点的元数据)
ls2 /
五:创建节点
create [-s] [-e] path data [acl]
zk中的节点分为两种:临时节点和持久节点
-e :创建临时节点
-s:创建顺序节点
acl:代表的该节点的访问权限控制
5.1 创建持久节点
-- 创建持久非顺序节点 节点名称为node1 节点中存储的数据为"123"
create /node1 "123"
-- 创建持久顺序节点 节点名称为 /node2_ 该节点中存储的数据为"456"
create -s /node2_ "456"
顺序节点的后缀会递增
如果不是顺序节点就会显示
5.2 创建临时节点
-- 创建临时非顺序节点 节点名称为/node3------tmp 该节点中存储的数据为"789"
create -e /node3_tmp "789"
-- 创建临时顺序节点 节点名称为/node3------tmp 该节点中存储的数据为"789"
create -e -s /node3_tmp "789"
5.3在已有节点中创建子节点
-- 在已有的持久节点/node1中创建持久非顺序子节点/node1/child1 该节点存储的数据"def"
create /node1/child1 "def"
-- 在已有的持久节点/node1中创建临时非顺序子节点/node1/child2 该节点存储的数据"def"
create -e /node1/child2_tmp "123"
无法在临时节点中创建子节点
六:删除节点
--delete node_path
--删除 /node2_0000000001
delete /node2_0000000001
--删除 /node1 节点
delete /node1
该命令无法执行 由于/node1下存在子节点 有字节带你的父节点无法删除
--递归删除/node1节点
deleteall /node1
七:获取节点中存储的数据
-- get /node3_tmp
八:修改节点中存储的数据
-- set node_path new_node_data [version]
set /node3_tmp "abc"
--根据当前节点信息中的dataVersion的值在修改命令中添加该版本值
set /node3_tmp "abc" 3
九:设置监听
监听器的有效次数为1次,如果需要继续监听,那就需要继续监听
--监听已有节点中的子节点的变化情况
(1)在bigdata005上启动zk的shell命令行,然后监听已有节点/node1的子节点变化情况
(2)在bigdata004上创建/node1/child1 节点
create /node1/child1 "123"
(3)返回bigdata005上查看监听器的返回
--监听已有节点的数据变化情况
(1)在bigdata005上启动zk的shell命令行,然后监听已有节点/node1/child1的节点数据变化情况
get -w /node1/child1
(2)在bigdata004上修改数据 "456"
set /node1/child1 "456"
(3)返回bigdata005上查看监听器的返回