在讲telnet操作memcached之前,请确保电脑已安装好memcached并已启动memcached环境,启动步骤如下:
1、进入memcached.exe所在目录
2、在CMD窗口输入 memcached.exe -d start 命令启动环境
输入完启动命令后,系统不会有任何提示,那么问题来了,我们怎么知道memcached已启动??我们可以打开任务管理器,点击服务,找到memcached,就能看到memcached当前是否启动?
当你运行memcached.exe -d start 命令后,我们就可以通过telnet来连接memcached,连接命令如下:
telnet 127.0.0.1 11211
注:由于我们memcached安装在本地,所以其ip地址为127.0.0.1,memcached端口默认为11211
运行telnet 127.0.0.1 11211命令,就能进入telnet窗口,如下图所示:
如果是在win系统下,记得按下回车键,然后我们就能愉快的使用telnet来操作memcached了!
一、set
语法:set username[key] 0[是否压缩] 120[存活时长] 3[字符长度]
作用:set命令用于向memcache存储一对键值对数据
下面我们就一起来看看set命令如何使用??
在telnet 窗口输入并运行下方命令
set username 0 120 3
输入完上方命令后,它会等待你输入数据(输入的数据必须和指定长度一致,否则会出现ERROR),如下所示:
如果输入的数据符合要求,就会出现STORED字样,说明该数据存储成功!
可能有的朋友会问,阿汤哥,如果之前已经存在username这个key,我再set 这个key,会怎样呢?咋试试这样做会出现什么情况。
测试结果如上图所示,由图可知:如果username 这个key已经存在,再执行set username操作,就会覆盖之前存储的数据。
数据存储成功,我们怎么获取它存储的数据呢?下面就为大家讲讲另外一个指令——get 命令。
二、get
语法:get key
作用:获取key对应的value值,如果key不存在,则会提示END
我们先向memeached添加值,然后再获取其值,截图如下:
三、add
语法:add key
作用:与set作用相似,也是添加数据,与set不同的是,如果key之前已经存在,再执行add key操作,之前的值不会更新并提示NOT_STORED
我们先用set添加key,然后再用add添加相同的key。
四、delete
语法:delete key
作用:删除key
我们先添加一个key,然后获取这个key对应的值,获取完值后我们再执行delete指令,执行完删除指令后再获取收据,看数据是否真正被删除。
由上图可知,key已成功删除!看完delete删除指令后,我们再来看一个更加粗暴的删除指令,flush_all
五、flush_all
语法:flush_all
作用:删除memcached中所有的key及value
为了讲解方便,我们先添加多对key,并获取其值,然后执行flush_all指令,再获取其值,看是否能够删除全部的key。
由上可知:执行完flush_all操作后,所有的key都会被删除。
六、incr
语法:incr score number[增加值的步长]
作用:对key存在的value进行相加操作
打个比方啊,期中考试啦,小军考了79分,由于老师改错一道题,小军试卷加两分!下面我们就用incr来模拟下这个例子!这里只是模拟小军分数相加这个操作过程,并不是要模拟其中考试!!!
我们先设key的值为79,然后再用incr指令执行加2分操作,代码截图如下:
假设小军发现老师改卷时少加了10分,经老师核实确实算错了,要加10分上去!既然分数少加了,咋帮他加上去呗!如果再用incr指令加10,结果是多少???我就不绕圈子了,一起来看看结果。
相信很多人都已猜到结果是91。
有朋友可能会想到,既然有相加操作,哪肯定就有相减操作!没错,还有一个与incr对立的指令——decr
七、decr
语法:decr key number[相减值的步长]
作用:对key存在的值进行相减操作
注:相加、减的值都必须为整数,不能为小数或其它非数字的字符,否则会报错
八、stats
语法:stats
作用:返回memcached统计信息(比如set、get总数,连接数等….)
如下图:
下面,针对上图一些重要参数进行解释:
1、cmd_get:执行get请求次数
1、cmd_set:执行set请求次数
3、get_misses:get指令未命中次数
4、get_hits:get指令命中次数
5、curr_connections:当前连接数
九. 列出memcahced的key
stats items
这里会显示几个items1 items2..
stats cachedump [item序号] [长度]
stats cachedump 2 0 将items2中的key全列出来 第二个参数0表示全列出来
十. flush_all 清空
原文链接:https://blog.csdn.net/aimill/article/details/83684553