命令行用法:
telnet 127.0.0.1 11211 #远程连接到memcached
set key2 0 60 3 #插入一条数据,key值为key2 0是flags标记 60秒过期 大小3字节
abc #回车后输入数据,必须等于3字节,否则报错。
STORED #存储成功
get key2 #查看key值
VALUE key2 0 3 #显示key值 标记和大小,没有显示过期时间
abc #显示key值的数据
END #结束
quit #退出
语法规则
<command name> <key> <flags> <exptime> <bytes>\r\n <data block>\r\n
注:\r\n在windows下是Enter键
a) <command name> 可以是”set”, “add”, “replace”。
“set”表示按照相应的<key>存储该数据,没有的时候增加,有的覆盖。
“add”表示按照相应的<key>添加该数据,但是如果该<key>已经存在则会操作失败。
“replace”表示按照相应的<key>替换数据,但是如果该<key>不存在则操作失败。
有时“add”,“replace”也会存储不上。
b) <key> 客户端需要保存数据的key。
c) <flags> 是一个16位的无符号的整数(以十进制的方式表示)。
该标志将和需要存储的数据一起存储,并在客户端get数据时返回。
客户可以将此标志用做特殊用途,此标志对服务器来说是不透明的。
d) <exptime> 过期的时间。
若为0表示存储的数据永远不过时(但可被服务器算法:LRU 等替换)。
如果非0(unix时间或者距离此时的秒数),当过期后,服务器可以保证用户得不到该数据(以服务器时间为标准)。
e) <bytes> 需要存储的字节数,当用户希望存储空数据时<bytes>可以为0
f) <data block>需要存储的内容,输入完成后,最后客户端需要加上”\r\n”(windows直接点击Enter)作为”命令头”的结束标志。
示例:
set key3 1 100 4
abcd
STORED
get key3
VALUE key3 1 4
abcd
END
replace key3 1 200 5
abcdx
STORED
get key3
VALUE key3 1 5
abcdx
END
delete key3
DELETED
get key3
END
补充:如果不知道key值,可以用命令都列出来在查看key数据
telnet 127.0.0.1 11211
首先列出所有keys
stats items
STAT items:7:number 1
STAT items:7:age 188
END
接下来基于列出的items id,本例中为7,第2个参数为列出的长度,0为全部列出
stats cachedump 7 0
ITEM Sess_sidsvpc1473t1np08qnkvhf6j2 [183 b; 1394527347 s]
END
上面的stats cachedump命令列出了我的session key,接下来就用get命令查找对应的session值
如:get Sess_sidsvpc1473t1np08qnkvhf6j2
课后答疑:
问:比如我线上有一个网站,我怎么把memcached用到网站中,直接在/etc/sysconfig/memcached 中的OPTIONS="" 填写对应的ip就行吗?
答:这个要在网站的代码里指定,不是我们的工作,开发人员来搞的。
问:实际情况下,什么时候要用到memcached 这些操作。
答:测试和查看数据时,大多时候都是用php访问和存储的。
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com