redis常见数据类型操作命令: Redis命令中心(Redis commands) -- Redis中国用户组(CRUG)
3.1)Redis键(key)【不属于数据类型】
登录Linux系统中 /usr/local/bin 目录下的 redis-cli 客户端
set key value : 往Redis中插入键(key)形式的数据
127.0.0.1:6379> set k1 luck
OK
127.0.0.1:6379> set k2 luck2
OK
127.0.0.1:6379> set k3 luck3
OK
keys *:查看当前库所有key (匹配:keys *1)
127.0.0.1:6379> keys *
1) "k2"
2) "k1"
3) "k3"
exists key:判断某个key是否存在
127.0.0.1:6379> exists k1
(integer) 1
127.0.0.1:6379> exists k4
(integer) 0
type key :查看你的key是什么类型
127.0.0.1:6379> type k2
string
del key:删除指定的key数据
127.0.0.1:6379> del k3
(integer) 1
127.0.0.1:6379> keys *
1) "k2"
unlink key :根据value选择非阻塞删除,仅将keys从keyspace元数据中删除,真正的删除会在后续异步操作【演示效果相同,但会之后在内部删除,并不是当时就删了】
127.0.0.1:6379> unlink k2
(integer) 1
127.0.0.1:6379> keys *
1) "k1"
expire key 10:10秒钟:为给定的key设置过期时间
127.0.0.1:6379> expire k1 10
(integer) 1
ttl key:查看还有多少秒过期,-1表示永不过期,-2表示已过期 ,已过期的数据就查询不到了
127.0.0.1:6379> ttl k1
(integer) 4
127.0.0.1:6379> ttl k1
(integer) -2
127.0.0.1:6379> keys *
(empty array)
select:命令切换数据库 ,默认是 0 号库
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> select 10
OK
127.0.0.1:6379[10]> select 0
OK
dbsize:查看当前数据库的key的数量
127.0.0.1:6379> set k1 luck
OK
127.0.0.1:6379> dbsize
(integer) 1
flushdb:清空当前库
127.0.0.1:6379> flushdb
OK
127.0.0.1:6379> keys *
(empty array)
flushall:通杀全部库
127.0.0.1:6379> flushall
OK
127.0.0.1:6379> keys *
(empty array)
3.2)Redis字符串(String)
3.2.1)简介
String是Redis最基本的类型,可以理解成与Memcached一模一样的类型,一个key对应一个value;
String类型是二进制安全的;意味着Redis的string可以包含任何数据,比如jpg图片或者序列化的对象;
String类型是Redis最基本的数据类型,一个Redis中字符串value最多可以是512M
3.2.2)常用命令
set <key><value> :添加键值对 *NX:当数据库中key不存在时,可以将key-value添加数据库 *XX:当数据库中key存在时,可以将key-value添加数据库,与NX参数互斥 *EX:key的超时秒数 *PX:key的超时毫秒数,与EX互斥
127.0.0.1:6379> set k1 s1
OK
127.0.0.1:6379> set k2 s2
OK
127.0.0.1:6379> keys *
1) "k2"
2) "k1"
get <key>:查询对应键值【key值相同的再次赋值会覆盖原值】
127.0.0.1:6379> get k1
"s1"
127.0.0.1:6379> set k1 s11
OK
127.0.0.1:6379> get k1
"s11"
append <key><value>将给定的<value> 追加到原值的末尾
127.0.0.1:6379> append k1 +1
(integer) 5
127.0.0.1:6379> get k1
"s11+1"
strlen <key>:获得值的长度
127.0.0.1:6379> strlen k1
(integer) 5
setnx <key><value>:只有在 key 不存在时 设置 key 的值【key值不存在时才可以赋值成功】
127.0.0.1:6379> setnx k1 s12
(integer) 0
127.0.0.1:6379> get k1
"s11+1"
127.0.0.1:6379> setnx k3 s3
(integer) 1
127.0.0.1:6379> get k3
"s3"
incr <key> :将 key 中储存的数字值增1【只能对数字值操作,如果为空,新增值为1】
127.0.0.1:6379> set k4 4
OK
127.0.0.1:6379> get k4
"4"
127.0.0.1:6379> incr k4
(integer) 5
127.0.0.1:6379> get k4
"5"
127.0.0.1:6379> incr k5
(integer) 1
127.0.0.1:6379> get k5
"1"
decr <key> :将 key 中储存的数字值减1,只能对数字值操作,如果为空,新增值为-1
127.0.0.1:6379> decr k4
(integer) 4
127.0.0.1:6379> get k4
"4"
127.0.0.1:6379> decr k6
(integer) -1
127.0.0.1:6379> get k6
"-1"
incrby / decrby <key><步长> :将 key 中储存的数字值增减。自定义步长
127.0.0.1:6379> get k4
"4"
127.0.0.1:6379> incrby k4 2
(integer) 6
127.0.0.1:6379> get k4
"6"
127.0.0.1:6379> decrby k4 3
(integer) 3
127.0.0.1:6379> get