Memcached之存储命令(2)
2015-08-25 11:51
627 查看
telnet连接到Memcached服务器以后,可以使用很多命令,比如:get,gets,set,touch,delete,add,replace,append,prepend,incr,decr,cas,flush_all,version,quit等等
Memcached存储命令的格式:
参数说明如下:
添加命令
其实Memcached最大过期时间是30天。
flush_all
telnet退不出去怎么办?
很简单先Ctrl+],然后quit退出telnet
Memcached存储命令的格式:
<command name> <key> <flags> <exptime> <bytes> <data block>
参数说明如下:
<command name> | set/add/replace |
<key> | 查找关键字(key的最大长度为250字节) |
<flags> | 客户机使用它存储关于键值对的额外信息 |
<exptime> | 该数据的存活时间,0表示永远 |
<bytes> | 存储字节数 |
<data block> | 存储的数据块(默认情况下最大为1M,即一个Slab的大小) |
添加命令
set
使用set不管什么情况都会把数据存到Memcached,即set命令既有添加的作用也有更新的作用。set fish 7 0 8 12312312 STORED
add
只有当Key在Memcached不存在的时候才会添加。//key不存在的情况下 add fish 0 0 7 1234567 STORED //key已经存在的情况下 add fish 0 0 7 1234567 NOT_STORED
replace
只有当Key存在的时候才替换//Key存在的情况下,replace成功 replace fish 0 0 8 12345678 STORED <pre name="code" class="java">//Key不存在的情况下,replace不成功replace fish1 0 0 8 12345678NOT_STORED
touch
更新Memcached中Key对应的值的过期时间。其实Memcached最大过期时间是30天。
//key:exp不存在 touch exp 2000 NOT_FOUND //key:fish存在 touch fish 2000 TOUCHED
prepend
在一个已经存在的数据值(value)上追加,是在数据值的前面追加。//Key:fish2不存在,不会存储 prepend fish2 0 0 2 12 NOT_STORED //set Key:fish2 set fish2 0 0 2 12 STORED //在Key:fish2的前面追加字符串“12” prepend fish2 0 0 2 12 STORED //查看值 get fish2 VALUE fish2 0 4 1212 END
append
在一个已经存在的数据值(value)上追加,是在数据值的后面追加。incr
计数命令,可以在原来已经存在的数字上进行累加求和,计算并存储新的数值。//key:fish3设置值为“b” set fish3 0 0 1 b STORED //在key:fish3的基础上加2,因为fish3是字符类型,所以报错。 incr fish3 2 CLIENT_ERROR cannot increment or decrement non-numeric value //修改fish3的值为2 replace fish3 0 0 1 2 STORED //fish3加2 incr fish3 2 4
decr
计数命令,可以在原来已经存在的数字上进行减法计算,计算并存储新的数值。删除命令
delete
删除指定key的值//不存在 delete fish1 NOT_FOUND //存在 delete fish DELETED
获取命令
get
get命令的Key可以表示一个或者多个键,键之间以空格隔开get fish fish1 VALUE fish 0 7 1234567 VALUE fish1 0 1 1 END
gets
gets和get一样,Key可以表示一个或者多个键,键之间以空格隔开。唯一的区别是gets会打印出各个Key变化的版本。gets fish fish1 VALUE fish 0 7 7 1234567 VALUE fish1 0 1 8 1 END
cas
cas即checked and set的意思,当最后一个参数和gets所获取的参数匹配时才能存储,否则返回“EXISTS”。cas fish 0 0 2 8 12 EXISTS //VALUE fish 0 7 7,索引存储成功。 cas fish 0 0 2 7 22 STORED
其他
flush_all
flush_all OK
version
version VERSION 1.4.22
telnet退不出去怎么办?
很简单先Ctrl+],然后quit退出telnet
^] telnet> quit Connection closed.
相关文章推荐
- Memcached之Window和Linux安装(1)
- Debian 8.1(amd64)下部署Memcached
- Debian8(amd64)安装部署memcached管理工具
- MemCache在win7上的可视化配置以及Nodejs/Net应用
- 关于 redis、memcache、mongoDB 的对比
- memcached-session-manager配置(tomcat 全局会话共享)
- memcached 安装和测试
- memcached
- 黑马程序员------Java缓存—浅谈Memcached
- 基于 libmemcahce 的memcache 操作
- PHP+memcached+Mysql(主从)
- Memcached 的静态编译(Mac OS X)
- Memcached 在windows下的java使用
- Memcached vs. MongoDB vs. Redis Comparison
- Memcached剖析
- memcache实例:缓存一条sql语句的执行结果
- Centos5.5 安装memcache
- Memcached
- Memcache缓存 vs 直接File文件缓存
- Memcached学习笔记 — 第四部分:Memcached Java 客户端-gwhalin(1)-介绍及使用