chiefgun 发表于 2015-9-2 09:44:38

telnet访问memcached命令

  memcached自己定义了一套协议,不支持http协议,所以只能以web的方式来访问memcached,在做项目的时候可能需要快捷的操作memcached,而用PHP去访问memcached又显得很麻烦,而且不方便。Linux下telnet可以直接访问memcached。
  这种方式方便快捷,安装完telnet即可。telnet访问memcached的命令如下:
  登录命令:
  telnet host port
   telnet 127.0.0.1 11211
  退出:quit
一、存储命令
存储命令的格式:
1
2
<command name> <key> <flags> <exptime> <bytes>
<data block>
参数说明如下:
<command name>
set/add/replace
<key>
查找关键字
<flags>
整型参数,客户机使用它存储关于键值对的额外信息
<exptime>
该数据的存活时间(以秒为单位,0 表示永远)
<bytes>
存储字节数
<data block>
存储的数据块(可直接理解为key-value结构中的value)
1、添加
(1)、无论如何都存储的set,如果set的key已经存在,该命令可以更新该key所对应的原来的数据,也就是实现更新的作用。

set a 0 0 4
1234
回显:
STORED
可以通过“get key”的方式查看添加进去的记录:
get a
回显:
VALUE a 0 4
1234
END

(2)、只有数据不存在时进行添加的add
add b 0 0 3
123
STORED
如果key已经存在,则回显
NOT_STORED

(3)、只有数据存在时进行替换的replace
replace b 0 0 2
aa
STORED
如果key不存在,则回显
NOT_STORED

2、删除
命令:delete key
删除已存在的键值和不存在的记录可以返回不同的结果
delete c
NOT_FOUND
delete b
DELETED

3、修改
命令:delete key
删除已存在的键值和不存在的记录可以返回不同的结果
二、读取命令
1、get
get命令的key可以表示一个或者多个键,键之间以空格隔开
获取一个
get b
VALUE b 0 2
aa
END
获取多个
get a b
VALUE a 0 4
1234
VALUE b 0 2
aa
END

2、gets
gets命令比普通的get命令多返回了一个数字。这个数字可以检查数据是否发生改变。当key对应的数据改变时,这个多返回的数字也会改变。
get a
VALUE a 0 4
1234
END
gets a
VALUE a 0 4 2
1234
END

get b
VALUE b 0 2
aa
END
gets b
VALUE b 0 2 5
aa
END

3、cas
cas即checked and set的意思,只有当最后一个参数和gets所获取的参数匹配时才能存储,否则返回“EXISTS”。
gets a
VALUE a 0 4 2
1234
END
cas a 0 0 4 3
2154EXISTS      ——存储失败
get a
VALUE a 0 4
1234
END
cas a 0 0 4 2
4321
STORED      ——存储成功
gets a
VALUE a 0 4 6
4321
END



页: [1]
查看完整版本: telnet访问memcached命令