SSDB 命令列工具 ssdb-cli


SSDB 的命令列工具ssdb-cli 對於SSDB 的管理非常有用, 你可以用它來執行所有的命令, 監控服務的狀態, 清除整個資料庫, 等等.

連接到SSDB 伺服器

$ /usr/local/ssdb/ssdb-cli -h 127.0.0.1 -p 8888
ssdb (cli) - ssdb command line tool.
Copyright (c) 2012-2013 ideawu.com

'h' or 'help' for help, 'q' to quit.

ssdb 127.0.0.1:8888>

輸入'h', 然後按回車查看幫助資訊. 下面是操作的示範:

ssdb 127.0.0.1:8888> set k 1
ok
(0.000 sec)
ssdb 127.0.0.1:8888> get k
1
(0.000 sec)
ssdb 127.0.0.1:8888> del k
ok
(0.000 sec)
ssdb 127.0.0.1:8888> get k
error: not_found
(0.000 sec)
ssdb 127.0.0.1:8888>

對於Windows 使用者:

在ssdb-master 原始碼的目錄時執行

tools\ssdb-cli.bat

需要安裝Python 2.x, 同時, 你需要將Python 的目錄加入到環境變數中的Path 變數.

轉義回應中的中文和二進位資料

如果你執行完指令後發現有亂碼或是螢幕輸出異常, 可以把下面這行指令拷貝進ssdb-cli 然後按下回車鍵:

#
: escape

監控SSDB 實例的狀態

info

指令info 顯示了資料在SSDB 中的分佈情況, 還有LevelDB 的健康程度.

ssdb 127.0.0.1:8899> info
version
    1.8.0
links
    1
total_calls
    4
dbsize
    1829
binlogs
    capacity : 10000000
    min_seq  : 1
    max_seq  : 74
replication
    client 127.0.0.1:55479
        type     : sync
        status   : SYNC
        last_seq : 73
replication
    slaveof 127.0.0.1:8888
        id         : svc_2
        type       : sync
        status     : SYNC
        last_seq   : 73
        copy_count : 0
        sync_count : 44
leveldb.stats
                     Compactions

Level  Files Size(MB) Time(sec) Read(MB) Write(MB)

0 0 0 0 0 0 1 1 0 0 0 0

25 result(s) (0.001 sec)

links

#目前伺服器的連線數.

dbsize

#資料庫預估的大小(可能和硬碟佔用差異非常大), 位元組數. 如果伺服器開啟了壓縮, 這個大小是壓縮後的大小.

binlogs

replication

key_range .

不同資料類型的key 在SSDB 中是排序的, 所以這個資訊表示不同資料類型的最小key 和最大key.

leveldb.stats

##這個資訊顯示了LevelDB 每一層級的檔案數量和檔案總大小. 越小的層級如果檔案越少, 那麼資料庫就越健康(查詢更快速).

info cmd

ssdb 127.0.0.1:8899> info cmd
version
    1.6.7
cmd.get
    calls: 20000    time_wait: 27   time_proc: 472
cmd.set
    calls: 267045   time_wait: 7431 time_proc: 7573
cmd.setx
    calls: 111100   time_wait: 3663 time_proc: 6456
cmd.del
    calls: 0    time_wait: 0    time_proc: 0

cmd.

    calls: 這個指令總共處理了多少次.
  • time_wait: 指令在被處理前等待的總共時間(單位毫秒).
  • time_proc: 指令處理總共消耗的時間(單位毫秒).
#compact

這個指令強制SSDB 伺服器對資料進行收縮(compaction), 收縮之後, 操作通常會變得更快.

但是,

compact 的過程可能會拖慢正常服務, 特別是當資料庫比較大時. 所以, 建議在空閒時使用.

SSDB 圖形介面工具

你可以嘗試下圖形介面(GUI)的SSDB 管理工具:

  • phpssdbadmin - PHP 開發的SSDB GUI 管理工具, 類似phpmyadmin.
  • FastoNoSQL - 跨平台的SSDB, Redis, Memcached GUI 管理工具.