Zookeeper(二)-- 客戶端操作命令


一、前提

  開啟zookeeper服務端,用客戶端連接。輸入help,查看可使用命令,如下圖所示:

  

  操作無非就是增刪改查等。

 二、增加

  格式:create [-s] [-e] path data acl

  path:即路徑,由於zookeeper是一個樹形結構,所以創建的時候就是一個Path節點,就是路徑

  data:節點對應的值,保存的少量數據

  [-s]有序節點  [-e]臨時節點

    注:節點臨時有序節點、臨時節點、持久有序節點 和 持久節點。

  1. 創建節點

  eg:create /node_1 1

  

  2.創建有序的持久化節點

  eg:create  -s  /node_1/node_1_1 2

  3.創建臨時節點(基於會話級別)

  eg:create -e  /node_1/node_1_2 3 

三、查詢

  get path [watch]

  eg:get /node_1

  

四、修改

  set path data [version]

  eg: set /node_1 abc

  

五、刪除

  delete path [vsersion]

  eg:delete /node_1

  發現報:Node not empty:/node_1,說明node_1下面存在節點,不可以刪除。

  所以,刪除其中一個子節點: 

  delete /node_1/node_1_1

  

  查看node_1 下面的節點:

  ls /node_1 

六、查看

  ls 和 ls2 和 stat

  ls /node_1

  ls2 /node_1

    stat /node_1

  ls2和stat命令輸出的信息更加詳細,結果一樣。

七、給節點設置限制

   setquota -n|-b val path

        -n的時候,val表示創建的子節點數量,path為指定的節點

    -b的時候,val表示創建節點的數據量,path為指定的節點

  1.首先查看/node_1下子節點的數量,使用 : ls /node_1,發現/node_1下面有兩個子節點:

    

   2.這里我們設置/node_1下面允許有3個子節點

    setquota -n 3 /node_1

    

  3.我們繼續添加一個子節點

     create /node_1/node_1_1 aaa

    

  查看/node_1下面的節點數,有3個,正確的。

  4.再繼續添加一個子節點

     create /node_1/node_1_4 bbb

     

  發現也是可以創建的,雖然設置了限制,但是仍然是可以創建成功。同時,會bin/zookeeper.out 輸出警告信息。這個時候我們看下日志,

  命令: tail -f zookeeper.out。

八、給節點刪除限制(很少用到)

  delquota [-n|-b] path

  eg: delquota -n  /node_1 ,使用這個就刪除了剛剛在node_1上加上的限制

  通過get /node_1/node_1_4,可以看到 count=-1,則說明沒有限制

  

 九、查看事務日志

  退出客戶端,進入到 cd /usr/java/zookeeper/server3/data/log/version-2,查看事務日志:

  java -cp ../../../zookeeper-3.4.9/zookeeper-3.4.9.jar:../../../zookeeper-3.4.9/lib/slf4j-api-1.6.1.jar org.apache.zookeeper.server.LogFormatter log.200000001

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM