0%

基本命令

基本命令

启动命令

1
memcached -m 64 -p 11211 -u nobody -vv

如果想要后台启动,则使用-d

1
/memcached -m 64 -p 11211 -u nobody -d

参数说明

1
2
3
4
5
6
7
8
9
10
-d 启动一个守护进程
-m 分配给Memcache使用的内存数量,单位是MB
-u 运行Memcache的用户
-l 监听的服务器IP地址,可以有多个地址
-p 设置Memcache监听的端口,,最好是1024以上的端口
-c 最大运行的并发连接数,默认是1024
-P 设置保存Memcache的pid文件
-f 块大小增长因子,默认是1.25
-n 最小分配空间, key+value+flags 默认是 48byte
-I 每个slab page的大小 -v/-vv 详细显示工作时各种参数

由于memcached是CS架构,且在启动服务端的时候是指定了端口号的,所以可以使用telnet来进行连接

添加数据命令

1
2
3
4
5
6
7
## 语法:add key flag expire length
## key key值
## flag 标志,要求为一个正整数,memcached是基本文本协议,传输的东西,理解成字符串来存储. 所有类型的对象都序列化成字符串,往出取的时候,自然还要反序列化成 对象/数组/json 格式等等. 这时可以使用flag 来定义该值的类型(自己进行定义) 比如, 1 就是字符串, 2 反转成数组 3,反序列化对象
## expire 设置缓存的有效期,有 3 种格式 1:设置秒数, 从设定开始数,第 n 秒后失效. 2:时间戳, 到指定的时间戳后失效. add key 0 1623234849 6 3: 设为 0. 不自动失效
## length 缓存值的长度(字节为单位)
add user.name 1 0 8
zhangsan

删除数据命令

1
2
## 语法: delete key [time seconds] 
## 删除指定的 key. 如加可选参数 time,则指删除 key,并在删除 key 后的 time 秒内,不允许get,add,replace 操作此 key

替换数据命令

1
2
# 语法:replace key flag expire length

获取数据命令

1
2
## 语法:get key
## 返回 key 的值

设置数据命令

set 是设置和修改值,参数和 add ,replace 一样,但功能不一样

用 add 时, key 不存在,才能建立此键值,对于已经存在的键,可以用 replace 进行替换/更改

而 set 相当于有 add replace 两者的功能.

set key flag expire leng 时,如果服务器无此键add的效果;如果服务器有此键 replace的效果

1
2
# 语法:set key flag expire length

增加/减少

incr ,decr 命令:增加/减少值的大小

1
##语法: incr/decr key num

统计命令

stats是memcached的统计命令,可以把 memcached 当前的运行信息统计出来

信息包含有如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
stat pid 2296
stat uptime 4237
stat time 1370054990
stat version 1.2.6
stat pointer_size 32
stat curr_items 4
stat total_items 13
stat bytes 236
stat curr_connections 3
stat total_connections 4
stat connection_structures 4
stat cmd_get 20
stat cmd_set 16
stat get_hits 13
stat get_misses 7
stat evictions 0
stat bytes_read 764
stat bytes_written 618
stat limit_maxbytes 67108864
stat threads 1

清空

可以使用flush_all 命令来清空所有的存储对象

1
flush_all