查看一下memcached的帮助信息:”

memcached -h

与日志相关的几个参数:

-v            verbose (print errors/warnings while in event loop)
-vv very verbose (also print client commands/reponses)
-vvv extremely verbose (also print internal state transitions)

从上面可以看到,启动memcached时有3个参数是和日志信息相关的:
其中-v代表打印普通的错误或者警告类型的日志信息
-vv比-v打印的日志更详细,包含了客户端命令和server端的响应信息
-vvv则是最详尽的,甚至包含了内部的状态信息打印。
我们使用​​​-vv​​就可以了。

memcached -d -vv -u root >> /tmp/memcached.log 2>&1

-d:表示后台运行;
-u root:表示以root用户来运行此进程
>> /tmp/memcached.log :这个是日志重定向
2>&1 :把标准输出和错误信息都放到​​​/tmp/memcached.log​​这里面来。


接下来我们开两个终端,一个查看日志,一个敲命令:

tailf /tmp/memcached.log

另一个终端:

[root@minimal ~]# telnet 127.0.0.1 11211
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
stats
STAT pid 3376      pid:    memcache服务器进程ID
STAT uptime 1414 uptime:服务器已运行秒数
STAT time 1500259449 time:服务器当前Unix时间戳
STAT version 1.4.15 version:memcache版本
STAT libevent 2.0.21-stable libevent版本
STAT pointer_size 64 pointer_size:操作系统指针大小
STAT rusage_user 0.016805 rusage_user:进程累计用户时间
STAT rusage_system 0.016805 rusage_system:进程累计系统时间
STAT curr_connections 10 curr_connections:当前连接数量
STAT total_connections 13 total_connections:Memcached运行以来连接总数
STAT connection_structures 12 connection_structures:Memcached分配的连接结构数量
STAT reserved_fds 20
STAT cmd_get 0 cmd_get:get命令请求次数
STAT cmd_set 3 cmd_set:set命令请求次数
STAT cmd_flush 0 cmd_flush:flush命令请求次数
STAT cmd_touch 0
STAT get_hits 0 get_hits:get命令命中次数
STAT get_misses 0 get_misses:get命令未命中次数
STAT delete_misses 0 delete_misses:delete命令未命中次数
STAT delete_hits 0 delete_hits:delete命令命中次数
STAT incr_misses 0 incr_misses:incr命令未命中次数
STAT incr_hits 0 incr_hits:incr命令命中次数
STAT decr_misses 0 decr_misses:decr命令未命中次数
STAT decr_hits 0 decr_hits:decr命令命中次数
STAT cas_misses 0 cas_misses:cas命令未命中次数
STAT cas_hits 0 cas_hits:cas命令命中次数
STAT cas_badval 0 cas_badval:使用擦拭次数
STAT touch_hits 0
STAT touch_misses 0
STAT auth_cmds 0 auth_cmds:认证命令处理的次数
STAT auth_errors 0 auth_errors:认证失败数目
STAT bytes_read 220 bytes_read:读取总字节数
STAT bytes_written 1240 bytes_written:发送总字节数
STAT limit_maxbytes 67108864 limit_maxbytes:分配的内存总大小(字节)
STAT accepting_conns 1 accepting_conns:服务器是否达到过最大连接(0/1)
STAT listen_disabled_num 0 listen_disabled_num:失效的监听数
STAT threads 4 threads:当前线程数
STAT conn_yields 0 conn_yields:连接操作主动放弃数目
STAT hash_power_level 16
STAT hash_bytes 524288
STAT hash_is_expanding 0
STAT bytes 0 bytes:当前存储占用的字节数
STAT curr_items 0 curr_items:当前存储的数据总数
STAT total_items 0 total_items:启动以来存储的数据总数
STAT expired_unfetched 0
STAT evicted_unfetched 0
STAT evictions 0 evictions:LRU释放的对象数目
STAT reclaimed 0 reclaimed:已过期的数据条目来存储新数据的数目

存值语法:
set 命令的基本语法格式如下:

set key flags exptime bytes [noreply] 
value

参数说明如下:

key:键值 key-value 结构中的 key,用于查找缓存值。
flags:可以包括键值对的整型参数,客户机使用它存储关于键值对的额外信息 。
exptime:在缓存中保存键值对的时间长度(以秒为单位,0 表示永远)
bytes:在缓存中存储的字节数
noreply(可选): 该参数告知服务器不需要返回数据
value:存储的值(始终位于第二行)(可直接理解为key-value结构中的value)

实例:
key → ysp
flag → 0
exptime → 900 (以秒为单位)
bytes → 9 (数据存储的字节数)
value → memcached

#存值:
set ysp 0 100 9
memcached
STORED

#取值
get ysp
VALUE ysp 0 9
memcached
END

注意:设置的字节数必须与实际字节数相等,否则会报错。

查看最后一次访问数据距离现在的时间:

stats items
stats items
STAT items:1:number 1
STAT items:1:age 25
STAT items:1:evicted 0
STAT items:1:evicted_nonzero 0
STAT items:1:evicted_time 0
STAT items:1:outofmemory 0
STAT items:1:tailrepairs 0
STAT items:1:reclaimed 3
STAT items:1:expired_unfetched 0
STAT items:1:evicted_unfetched 0
END

看这个age就知道了。

删除某一个值:

delete key

清除所有键值对:

flush_all
flush_all
OK
get name
END