Redis程序文件 redis-win.zip(window)
启动redis服务器
redis-server
redis-server.exe
启动客户端
redis-cli
redis-cli.exe
Key操作命令
命令用法 | 解释 |
---|---|
keys pattern | 获取所有匹配pattern参数的Keys。需要说明的是,在我们的正常操作中应该尽量避免对该命令的调用,因为对于大型数据库而言,该命令是非常耗时的,对Redis服务器的性能打击也是比较大的。pattern支持glob-style的通配符格式,如*表示任意一个或多个字符,?表示任意字符,[abc]表示方括号中任意一个字母。 |
del key [key...] | 从数据库删除中参数中指定的keys,如果指定键不存在,则直接忽略。 |
exists key | 判断指定键是否存在。 |
persist key | 如果Key存在过期时间,该命令会将其过期时间消除,使该Key不再有超时,而是可以持久化存储。 |
expire key seconds | 该命令为参数中指定的Key设定超时的秒数,在超过该时间后,Key被自动的删除。如果该Key在超时之前被修改,与该键关联的超时将被移除。 |
ttl key | 获取该键所剩的超时描述。 |
type key | 获取与参数中指定键关联值的类型,该命令将以字符串的格式返回。 |
操作:
127.0.0.1:6379> keys *
1) "mykey"
2) "mylist"
3) "myhash"
4) "myset"
5) "myzset"
127.0.0.1:6379> del mykey mylist
(integer) 2
127.0.0.1:6379> keys *
1) "myhash"
2) "myset"
3) "myzset"
127.0.0.1:6379> exists mykey
(integer) 0
127.0.0.1:6379> exists mylist
(integer) 0
127.0.0.1:6379> exists myset
(integer) 1
127.0.0.1:6379> exists myzset
(integer) 1
127.0.0.1:6379> exists myhash
(integer) 1
127.0.0.1:6379> flushdb
当删除之后的key,显示为0,未删除的key显示为1
设置指定key的时限,并且查看还有多久过期,没有经过持久化的数据,ttl时效最终会变成-2,并且数据被删除
27.0.0.1:6379> set mykey "zhangsan" ex 50
OK
127.0.0.1:6379> ttl mykey
(integer) 46
127.0.0.1:6379> ttl mykey
(integer) 44
127.0.0.1:6379> ttl mykey
(integer) 43
127.0.0.1:6379> ttl mykey
(integer) 42
127.0.0.1:6379> ttl mykey
(integer) -2
127.0.0.1:6379> ttl mykey
(integer) -2
127.0.0.1:6379> exists mykey
(integer) 0
在数据时效结束之前,将数据持久化
persist key(针对于有时限的数据,删除定时删除任务)
127.0.0.1:6379> set mykey "lisi" ex 100
OK
127.0.0.1:6379> ttl mykey
(integer) 96
127.0.0.1:6379> ttl mykey
(integer) 95
127.0.0.1:6379> persist mykey
(integer) 1
127.0.0.1:6379> ttl mykey
(integer) -1
127.0.0.1:6379> exists mykey
(integer) 1
127.0.0.1:6379>
将数据持久化操作之后,数据的时效ttl会变成-1,并且会持久保存下来
127.0.0.1:6379> set mykey "wanger" ex 100
OK
127.0.0.1:6379> ttl mykey
(integer) 98
127.0.0.1:6379>
127.0.0.1:6379> ttl mykey
(integer) 96
127.0.0.1:6379> expire mykey 20
(integer) 1
127.0.0.1:6379> ttl mykey
(integer) 18
127.0.0.1:6379> ttl mykey
(integer) 17
127.0.0.1:6379> set mykey "mazi"
OK
127.0.0.1:6379> ttl mykey
(integer) -1
设置含有定时任务的key,可以使用expire key [number] 修改定时时间
当该key被重新赋值的时候,定时任务将会被取消
查看key的数据类型
Type key
127.0.0.1:6379> keys *
(empty array)
127.0.0.1:6379> set mykey 2
OK
127.0.0.1:6379> keys *
1) "mykey"
127.0.0.1:6379> get mykey
"2"
127.0.0.1:6379> lpush mylist a b c
(integer) 3
127.0.0.1:6379> lrange mylist 0 -1
1) "c"
2) "b"
3) "a"
127.0.0.1:6379> sadd myset 1 2 3
(integer) 3
127.0.0.1:6379> zadd myzset 1 "88" 2 "99"
(integer) 2
127.0.0.1:6379> hset myhash username "admin"
(integer) 1
127.0.0.1:6379> type mykey
string
127.0.0.1:6379> type mylist
list
127.0.0.1:6379> type myzset
zset
127.0.0.1:6379> type myhash
hash