`

memcahd 命令操作详解 - 阿正-WEB

阅读更多
原帖地址:http://www.cnblogs.com/azheng007/p/3159345.html

一.存储命令

存储命令的格式:

<command name> <key> <flags> <exptime> <bytes>

<data block>

参数说明:

<command name> 操作命令:set/add/replace
<key> 缓存的键值
<flags> 客户机使用它存储关于键值对的额外信息
<exptime> 缓存过期时间 单位为秒 0 表示永远存储
<bytes> 缓存值的字节数
<data block> 数据块

1.添加值命令

(1) 无论如何都添加或更新的set 命令 (值不存在则添加 存在则更新)  set 设置后可以用get命令获取值 也可以使用delete命令删除该值

[root@zhz jiehun]# telnet 127.0.0.1 11211
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
set test_key 0 0 3
100
STORED
get test_key
VALUE test_key 0 3
100
END
delete test_key
DELETED
get test_key
END

(2)只有数据不存在时添加值的add命令

[root@zhz jiehun]# telnet 127.0.0.1 11211
Trying
127.0.0.1...
Connected to
127.0.0.1.
Escape character is
'^]'.
add zhang
0 0 1 //第一次添加 成功
q
STORED

add zhang
0 0 1 //第二次添加 失败
q
NOT_STORED

(3)只有数据存在时替换的replace命令

[root@zhz jiehun]# telnet 127.0.0.1 11211
Trying
127.0.0.1...
Connected to
127.0.0.1.
Escape character is
'^]'.
replace zhang_t
0 0 2 //replace 不存在的元素 失败
22
NOT_STORED
add zhang_t
0 0 2
12
STORED
get zhang_t
VALUE zhang_t
0 2
12
END
replace zhang_t
0 0 3 //replace 存在的值成功
200
STORED
get zhang_t //值被替换
VALUE zhang_t
0 3
200
END

2.删除命令   delete

get zhang_t
VALUE zhang_t
0 3
200
END
delete zhang_t
DELETED
get zhang_t
END

二 读取命令

1.get 命令 获取一个键或多个键的值 多个键以空格分开

get zhang_t zhang
VALUE zhang
0 1
q
END
set zhang_t
0 0 3
100
STORED
get zhang_t zhang
VALUE zhang_t
0 3
100
VALUE zhang
0 1
q
END

2 .gets 命令比get返回的值多一个数字 用来判断数据是否发生过改变

gets zhang_t zhang
VALUE zhang_t
0 4 185
1000
VALUE zhang
0 1 181
q
END
set zhang_t
0 29 4
1000
STORED
gets zhang_t zhang
VALUE zhang_t
0 4 186
1000
VALUE zhang
0 1 181
q
END

3. cas 的意思是 check and set 的意思,只有当最后一个参数鹤gets获取的那个用来判断数据发生改变的那个值相同时才会存储成功,否则返回 exists

gets zhang
VALUE zhang 0 3 188
dff
END
cas zhang 0 0 3 189
kjf
EXISTS
cas zhang 0 0 3 188
kjf
STORED
gets zhang
VALUE zhang 0 3 189
kjf
END

 

4. 自曾(incr) 自减(decr)命令

set age 0 0 2
10
STORED
get age
VALUE age
0 2
10

END
incr age
2
12
incr age
2
14
get age
VALUE age
0 2
14

END
decr age
1
13
get age
VALUE age
0 2
13

END

 

三 状态命令

1.stats 显示memcachd状态

stats
STAT pid
1532 //进程id
STAT
uptime 348167 //服务运行秒数
STAT
time 1372215144 //当前unix时间戳
STAT version
1.4.14 //服务器版本
STAT libevent
2.0.10-stable
STAT pointer_size
32 //操作系统字大小
STAT rusage_user
3.997392 //进程累计用户时间
STAT rusage_system
2.258656 //进程累计系统时间
STAT curr_connections
5 //当前打开连接数
STAT total_connections
265 //链接总数

STAT connection_structures
7 //服务器分配的链接结构数
STAT reserved_fds
20 //
STAT cmd_get
1911 //执行get命令次数
STAT cmd_set
195 //执行set命令次数
STAT cmd_flush
3 //执行flush命令次数
STAT cmd_touch
0
STAT get_hits
1708 //get命中次数
STAT get_misses
203 //get未命中次数

STAT delete_misses
11 //delete 未命中次数
STAT delete_hits
14 //delete命中次数
STAT incr_misses
0 //incr 自增命令 未命中次数
STAT incr_hits
0 //incr 命中次数
STAT decr_misses
0 //decr 自减 未命中次数
STAT decr_hits
0 //decr 命中次数
STAT cas_misses
0 //cas 未命中次数
STAT cas_hits
2 //case 命中次数
STAT cas_badval
1 //使用擦拭次数
STAT touch_hits
0
STAT touch_misses
0
STAT auth_cmds
0
STAT auth_errors
0
STAT bytes_read
164108 //读取字节数
STAT bytes_written
1520916 //写入字节书
STAT limit_maxbytes
67108864 //分配的内存数
STAT accepting_conns
1 //目前接受的连接数
STAT listen_disabled_num
0
STAT threads
4 //线程数
STAT conn_yields
0
STAT hash_power_level
16
STAT hash_bytes
262144
STAT hash_is_expanding
0
STAT expired_unfetched
4
STAT evicted_unfetched
0
STAT bytes
23995 //存储字节数
STAT curr_items
31 //item个数
STAT total_items
189 //item总数
STAT evictions
0 //为获取空间删除的item个数
STAT reclaimed
17
END

2.flush_all 清空所有项目

flush_all
OK

3.后续追加append和prepend前面插入命令

get age
VALUE age
0 2
13
END
append age
0 3
ERROR
append age
0 0 6
111111
STORED
get age
VALUE age
0 8
13111111
END
prepend age
0 0 6
111111
STORED
get age
VALUE age
0 14
11111113111111
END

 

该命令有一个可选的数字参数。它总是执行成功,服务器会发送 “OK\r\n” 回应。它的效果是使已经存在的项目立即失效(缺省),或在指定的时间后。此后执行取回命令,将不会有任何内容返回(除非重新存储同样的键名)。 flush_all 实际上没有立即释放项目所占用的内存,而是在随后陆续有新的项目被储存时执行(这是由memcached的懒惰检测和删除机制决定的)。

flush_all 效果是它导致所有更新时间早于 flush_all 所设定时间的项目,在被执行取回命令时命令被忽略。

 

 memecached还有其他命令 ,这里只是平时我们工作中经常用到的一些,以此文章记录备用。


本文链接:http://www.cnblogs.com/azheng007/p/3159345.html,转载请注明。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics