linux下操作memcache的操作命令
阿新 • • 發佈:2018-11-22
1、連線memcache
linux下一般使用telnet連線memcache服務
[[email protected] ~]# telnet 127.0.0.1 11266
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
這樣就連線成功了,使用以下命令進行操作:
新增修改key-value
命令格式:
<command> <key> <flags> <exptime> <bytes>\r\n <data block>\r\n
引數名稱 | 作用 |
---|---|
command | add, set或 replace |
key | 快取的名字 |
flag | 16位無符號整數,和key要儲存的資料一起儲存,並在程式get快取時,返回。 |
exptime | 過去時間,0 表示永遠不過期,如果非零,表示unix時間或距此秒數 |
bytes | 儲存資料的位元組數 |
\r\n | 表示換行回車 |
命令結果:
STORED #表示成功 NOT_STORED #表示失敗 CLIENT_ERROR bad data chunk #輸入資料有誤
新增快取
add kk 1 0 4 #回車
1234 #回車
STORED
如果key已經存在,則會新增失敗。如果資料 不是4個位元組 應該會提示資料錯誤
修改快取
replace kk 1 0 2 #回車
11 #回車
STORED
key存在時,成功;不存在時,失敗。
設定快取
set kk 1 0 4 #回車
1234 #回車
STORED
key不存在時,新增【add】;已存在時,替換【replace】。
讀取
get kk
VALUE kk 1 4
1234
多個key時,用空格隔開
刪除
delete kk #回車
DELETED
清空所有快取
flush_all
OK
檢視快取伺服器狀態
stats
返回資訊: | 引數名稱 | 作用 |
---|---|---|
STAT pid 2711 | 程序id | |
STAT uptime 2453 | 總的執行時間,單位描述 | |
STAT time 1344856333 | 當前時間 | |
STAT version 1.4.0 | 版本 | |
STAT pointer_size 32 | 伺服器指標位數,一般32位作業系統是32 | |
STAT rusage_user 0.002999 | 程序的累計使用者時間 | |
STAT rusage_system 1.277805 | 程序的累計系統事件 | |
STAT curr_connections 1 | 當前連線數 | |
STAT total_connections 11 | 伺服器啟動後,總連線數 | |
STAT connection_structures 11 | 連線結構的數量 | |
STAT cmd_get 17 | 總獲取次數 | |
STAT cmd_set 1 | 總寫入次數 | |
STAT cmd_flush 1 | 總的的清空次數 | |
STAT get_hits 1 | 總的命中次數 | |
STAT get_misses 7 | 獲取沒有命中次數 | |
STAT delete_misses | 刪除沒有命中次數 | |
STAT delete_hits 4 | 刪除命中次數 | |
STAT incr_misses | 遞增操作沒有命中次數 | |
STAT incr_hits | 遞增操作命中次數 | |
STAT decr_misses | 遞減操作沒有命中的次數 | |
STAT decr_hits | 遞減操作命中的次數 | |
STAT cas_misses | cas設定沒有命中次數 | |
STAT cas_hits | cas命中次數 | |
STAT cas_badval | cas操作找到key,但版本過期,沒有設定成功 | |
STAT bytes_read 455 | 總共獲取資料量 | |
STAT bytes_written 1175 | 總共寫入資料量 | |
STAT limit_maxbytes 1048576 | 最大允許使用記憶體,單位位元組 | |
STAT accepting_conns 1 | 已經達到連線數量最大值,該值為1;未達到連線數量最大值,該值為0 | |
STAT listen_disabled_num 0 | 統計當前伺服器連線數曾經達到最大連線的次數 | |
STAT threads 5 | 當前執行緒數 | |
STAT conn_yields 0 | 伺服器是否達到過最大連線 | |
STAT bytes 56 | 已用快取空間 | |
STAT curr_items 1 | 當前快取的keyvalue數 | |
STAT total_items 7 | 總共快取的keyvalue數,包括過期刪除的 | |
STAT evictions | 通過刪除keyvalue,釋放記憶體次數 |
其他命令
version #顯示版本號
stats reset #清空統計資料
stats slabs #顯示各個slab的資訊,包括chunk的大小、數目、使用情況等
stats items #顯示各個slab中item的數目和儲存時長(最後一次訪問距離現在的秒數)
退出telnet
ctrl+]
tlenet>quit
其他方式連線memcache
1、資料儲存(key為kk,value為123)
printf 'set kk 1 0 4\r\n1234\r\n' | nc 127.0.0.1 11264
2、資料取回
printf 'get kk\r\n' | nc 127.0.0.1 11264
3、替換資料(將以kk為key儲存的值替換為122)
printf 'replace kk 1 0 4\r\n2345\r\n' | nc 127.0.0.1 11264
4、數值增加 1
printf 'incr 1\r\n' | nc 127.0.0.1 11264
5、數值減少 2
printf 'decr 2\r\n' | nc 127.0.0.1 11264
6、資料刪除
printf 'delete kk\r\n' | nc 127.0.0.1 11264
7、檢視Memcached當時狀態
printf "stats/r/n" | nc 127.0.0.1 11264
8、檢視Memcached實時狀態
watch "printf 'stats/r/n' | nc 127.0.0.1 11264"