首页 > 技术文章 > memcached 常用命令及使用说明

lzijiangg 2020-05-22 09:55 原文

memcached 查看方法


格式: telnet ip port

例如 telnet localhost 11211
退出命令:quit

 

一.存储命令

存储命令格式:

<command name> <key> <flag> <expire> <bytes>
<data block>

参数说明:
command name 命令名称
key 查找关键字
flag 存储额外信息
expire 数据保存时间,0表示永远,单位秒
bytes 存储数据的字节数
data block 存储的数据

1.set  无论如何都存储,数据不存在时存储,数据存在时更新。

set mykey 0 0 3
123
STORED

set mykey 0 0 3
456
STORED
2.add 当数据不存在时存储。
add mykey 0 0 3
123
STORED
add mykey 0 0 3
456
NOT_STORED
3.replace 当数据存在时存储
set mykey 0 0 3
123
STORED

replace mykey 0 0 3
456
STORED

delete mykey
DELETED

replace mykey 0 0 3
678
NOT_STORED

二.读取命令

1.get key 可以一个或多个,用空格格开。

set mykey 0 0 3
123
STORED

set mykey1 0 0 3
456
STORED

get mykey mykey1
VALUE mykey 0 3
123
VALUE mykey1 0 3
456
END
2.gets 与 get 一样,但会返回多一个数字,这个数字用来检查数据是否被修改过,如修改过,这个数字回改变。
set mykey 0 0 3
123
STORED

gets mykey
VALUE mykey 0 3 7
123
END

replace mykey 0 0 3
888
STORED

gets mykey
VALUE mykey 0 3 8
888
END
3.cas cas即checked and set ,当最后一个参数与gets返回的数字一致时才存储,否则返回EXISTS。

set mykey 0 0 3
123
STORED

gets mykey
VALUE mykey 0 3 9
123
END

cas mykey 0 0 3 8
456
EXISTS

cas mykey 0 0 3 9
456
STORED

三.追加与清除命令

1.append 将数据追加到当前缓存数据的之后,当缓存数据存在时才存储。

set mykey 0 0 3
123
STORED

append mykey 0 0 3
456
STORED

get mykey
VALUE mykey 0 6
123456
END

append notexists 0 0 3
456
NOT_STORED
2.prepend 将数据追加到当前缓存数据的之前,当缓存数据存在时才存储。

set mykey 0 0 3
123
STORED

prepend mykey 0 0 3
456
STORED

get mykey
VALUE mykey 0 6
456123
END

prepend notexists 0 0 3
456
NOT_STORED
3.delete 删除缓存数据,数据存在返回DELETED,数据不存在返回NOT_FOUND

set mykey 0 0 3
123
STORED

delete mykey
DELETED

delete mykey
NOT_FOUND
4.flush_all 将当前所有缓存数据设置为过期,但不会释放内存。
flush_all
OK

四.状态命令
1.stats 查看memcached运行状态

pid Memcached 进程ID

uptime Memcached 运行时间,单位:秒

time Memcached 当前的UNIX时间

version Memcached 的版本号

rusage_user 该进程累计的用户时间,单位:秒

rusage_system 该进程累计的系统时间,单位:秒

curr_items Memcached 当前存储的内容数量

total_items Memcached 启动以来存储过的内容总数

bytes Memcached 当前存储内容所占用的字节数(*/1024/1024=mb)

curr_connections 当前连接数量

total_connections Memcached 运行以来接受的连接总数

connection_structures Memcached 分配的连接结构的数量

cmd_get 查询请求总数

cmd_set 存储(添加/更新)请求总数

get_hits 查询成功获取数据的总次数

get_misses 查询成功未获取到数据的总次数

bytes_read Memcached 从网络读取到的总字节数

bytes_written Memcached 向网络发送的总字节数

limit_maxbytes Memcached 在存储时被允许使用的字节总数
2.stats items
执行stats items,可以看到STAT items行,如果memcached存储内容很多,那么这里也会列出很多的STAT items行。


3.stats cachedump slabs_id limit_num
slabs_id:由stats items返回的结果(STAT items后面的数字)决定的
limit_num:返回的记录数,0表示返回所有记录
通过stats items、stats cachedump slab_id limit_num配合get命令可以遍历memcached的记录。

stats cachedump 1 0
ITEM mykey [3 b; 1362880145 s]
END

4.stats slabs 显示各个slab的信息,包括chunk的大小、数目、使用情况等


5.stats sizes 输出所有item的大小和个数


6.stats reset 清空统计数据

推荐阅读