Redis版本
Redis集群模式 redis-cli 5.0.5
操作命令
用法
redis-cli [OPTIONS] [cmd [arg [arg ...]]]
redis-cli參數
-h <hostname> 服務器主機名(默認值:127.0.0.1) -p <port> 服務器端口(默認值:6379) -s <socket> 服務器套接字(覆蓋主機名和端口)。 -a <password> 連接到服務器時使用的<password>密碼。您也可以使用REDISCLI_AUTH環境,變量以更安全地傳遞此密碼(如果同時使用這兩個參數,則此參數取前者)。 -u <uri> 服務器uri。 -r <repeat> 執行指定的命令N次。 -i <interval> 當使用-r時,每個命令等待<interval>秒,可以指定次秒級的時間,例如-i 0.1。 -n <db> 數據庫編號。 -x 從STDIN讀取最后一個參數。 -d <delimiter> 原始格式的多批量分隔符(默認值:\n)。 -c 啟用集群模式(follow-ASK和-MOVED重定向)。 --raw 對回復使用原始格式(當STDOUT為不是tty)。 --no-raw 即使STDOUT不是tty,也沒有原始強制格式的輸出。 --csv 格式的csv輸出。 --stat 打印關於服務器的滾動統計:mem,clients. --latency 連續進入特殊采樣模式延遲。如果在交互式會話中使用此模式,它將永遠運行,並顯示實時統計信息。否則,如果指定了--raw或--csv,或者將輸出重定向到非TTY,它將對延遲采樣1秒(可以使用-i更改間隔),然后生成單個輸出並退出。 --latency-history 例如--延遲,但跟蹤延遲隨時間的變化。默認時間間隔為15秒。使用-i更改它。 --latency dist 將延遲顯示為頻譜,需要xterm 256色。默認時間間隔為1秒。使用-i更改它。 --lru test<keys> 使用80-20分布模擬緩存工作負載。 --replica 顯示從主服務器接收的命令的副本。 --rdb <filename> 將rdb轉儲從遠程服務器傳輸到本地文件。 --pipe 從stdin到服務器的管道傳輸原始Redis協議。 --pipe timeout <n> 在--pipe模式下,如果發送完所有數據,則中止並出錯。在<n>秒內未收到任何回復。默認超時:30。使用0可永遠等待。 --bigkeys 示例Redis keys,尋找具有多個元素的鍵(復雜性)。 --memkeys 示例Redis keys,尋找消耗大量內存的鍵。 --memkeys-samples <n> 示例Redis keys以查找消耗大量內存的鍵。並定義要采樣的關鍵元素的數量 --hotkeys 示例Redis鍵尋找熱鍵。僅當maxmemory policy為*lfu時有效。 --scan 掃描列出所有鍵。 --pattern <pat> 與--scan一起使用,以指定掃描模式。 --intrinsic-latency <sec> 運行測試以測量內在系統延遲。測試將運行指定的秒數。 --eval<file> 使用位於<file>的Lua腳本發送eval命令。 --ldb 與--eval一起使用的ldb啟用Redis Lua調試器。 --ldb-sync-mode 同步模式類似於--ldb,但在此模式服務器被阻止,腳本更改未從服務器內存回滾。 --cluster <command>[args…][opts…] 集群管理器命令和參數(見下文)。 --verbose 詳細模式。 --no-auth-warning 在命令上使用密碼時不顯示警告消息 --help 輸出此幫助並退出。 --version 輸出版本並退出。
redis-cli --cluster參數
redis-cli --cluster help Cluster Manager Commands: create host1:port1 ... hostN:portN #創建集群 --cluster-replicas <arg> #從節點個數 check host:port #檢查集群 --cluster-search-multiple-owners #檢查是否有槽同時被分配給了多個節點 info host:port #查看集群狀態 fix host:port #修復集群 --cluster-search-multiple-owners #修復槽的重復分配問題 reshard host:port #指定集群的任意一節點進行遷移slot,重新分slots --cluster-from <arg> #需要從哪些源節點上遷移slot,可從多個源節點完成遷移,以逗號隔開,傳遞的是節點的node id,還可以直接傳遞--from all,這樣源節點就是集群的所有節點,不傳遞該參數的話,則會在遷移過程中提示用戶輸入 --cluster-to <arg> #slot需要遷移的目的節點的node id,目的節點只能填寫一個,不傳遞該參數的話,則會在遷移過程中提示用戶輸入 --cluster-slots <arg> #需要遷移的slot數量,不傳遞該參數的話,則會在遷移過程中提示用戶輸入。 --cluster-yes #指定遷移時的確認輸入 --cluster-timeout <arg> #設置migrate命令的超時時間 --cluster-pipeline <arg> #定義cluster getkeysinslot命令一次取出的key數量,不傳的話使用默認值為10 --cluster-replace #是否直接replace到目標節點 rebalance host:port #指定集群的任意一節點進行平衡集群節點slot數量 --cluster-weight <node1=w1...nodeN=wN> #指定集群節點的權重 --cluster-use-empty-masters #設置可以讓沒有分配slot的主節點參與,默認不允許 --cluster-timeout <arg> #設置migrate命令的超時時間 --cluster-simulate #模擬rebalance操作,不會真正執行遷移操作 --cluster-pipeline <arg> #定義cluster getkeysinslot命令一次取出的key數量,默認值為10 --cluster-threshold <arg> #遷移的slot閾值超過threshold,執行rebalance操作 --cluster-replace #是否直接replace到目標節點 add-node new_host:new_port existing_host:existing_port #添加節點,把新節點加入到指定的集群,默認添加主節點 --cluster-slave #新節點作為從節點,默認隨機一個主節點 --cluster-master-id <arg> #給新節點指定主節點 del-node host:port node_id #刪除給定的一個節點,成功后關閉該節點服務 call host:port command arg arg .. arg #在集群的所有節點執行相關命令 set-timeout host:port milliseconds #設置cluster-node-timeout import host:port #將外部redis數據導入集群 --cluster-from <arg> #將指定實例的數據導入到集群 --cluster-copy #migrate時指定copy --cluster-replace #migrate時指定replace help For check, fix, reshard, del-node, set-timeout you can specify the host and port of any working node in the cluster.