牛逼的人在干牛逼的事之前总有一段苦逼的岁月,只要像傻逼一样坚持,终究也会牛逼

redis命令参考:http://redisdoc.com/   返回1表示成功

DEL 删除key

删除单个key  

127.0.0.1:6379[5]> keys *
1) "k4"
2) "1k"
3) "k2"
4) "k3"
5) "k1"
127.0.0.1:6379[5]> del k4
(integer) 1
127.0.0.1:6379[5]> keys *
1) "1k"
2) "k2"
3) "k3"
4) "k1"

删除多个key

127.0.0.1:6379[5]> del 1k k4
(integer) 1

127.0.0.1:6379[5]> keys *
1) "k2"
2) "k3"
3) "k1"


DUMP 序列化key,


如果  key 不存在,那么返回  nil 。


否则,返回序列化之后的值。


127.0.0.1:6379[5]> DUMP k1
"\x00\x03www\a\x00#\xe9\x9e\xb09\x1b\x00p"


127.0.0.1:6379[5]> DUMP k33
(nil)



EXISTS 检查key是否存在,若 key 存在,返回 1 ,否则返回 0 

127.0.0.1:6379[5]> EXISTS k3



(integer) 1






EXPIRE 为给定 key 设置生存时间,当 key 过期时(生存时间为 0 ),它会被自动删除。

设置成功返回  1 。当  key 不存在或者不能为  key 设置生存时间时,返回  0 



127.0.0.1:6379[5]> set k5 hahah
OK



127.0.0.1:6379[5]> expire k5 10     设置10秒过期删除
(integer) 1



10秒已过,被删除了,不存在了



127.0.0.1:6379[5]> exists k5
(integer) 0





KEYS pattern  查找所有符合给定模式 pattern 的  key

KEYS * 匹配数据库中所有  key 。



KEYS h?llo 匹配  hello ,  hallo 和  hxllo 等。



KEYS h*llo 匹配  hllo 和  heeeeello 等。



KEYS h[ae]llo 匹配  hello 和  hallo ,但不匹配  hillo 。



KEYS  的速度非常快,但在一个大的数据库中使用它仍然可能造成性能问题,如果需要从一个数据集中查找特定的  key  ,最好还是用 Redis 的集合结构(set)来代替。



127.0.0.1:6379[5]> keys *
1) "k2"
2) "k3"
3) "k1"



127.0.0.1:6379[5]> keys k?
1) "k2"
2) "k3"
3) "k1"
127.0.0.1:6379[5]> set 2k oo
OK
127.0.0.1:6379[5]> keys ?k
1) "2k"
127.0.0.1:6379[5]> 





MOVE key db 将当前数据库的 key 移动到给定的数据库 db 当中,移动成功返回 1 ,失败则返回 0 。



127.0.0.1:6379[5]> move k2 0     移到0号库
(integer) 1



查看0号库,是有k2的key的



127.0.0.1:6379[5]> select 0
OK
127.0.0.1:6379> keys *
1) "k2"
2) "k1"
3) "hello"



OBJECT 命令允许从内部察看给定 key  的 Redis 对象


  • OBJECT REFCOUNT <key> 返回给定 key 引用所储存的值的次数。此命令主要用于除错。
  • OBJECT ENCODING <key> 返回给定 key 锁储存的值所使用的内部表示(representation)。
  • OBJECT IDLETIME <key> 返回给定 key 自储存以来的空闲时间(idle, 没有被读取也没有被写入),以秒为单位。
  • REFCOUNT 和 IDLETIME 返回数字。 ENCODING 返回相应的编码类型

127.0.0.1:6379[5]> object refcount k3
(integer) 2
127.0.0.1:6379[5]> object idletime k3
(integer) 4951
127.0.0.1:6379[5]> object encoding k3
"int"
127.0.0.1:6379[5]> 





127.0.0.1:6379[5]> get k3
"444"





PERSIST命令用于删除键所指定的过期时间。



127.0.0.1:6379[5]> expire k3 3600000
(integer) 1 设置过期时间



127.0.0.1:6379[5]> persist k3 删除设置的过期时间,永久有效
(integer) 1





PEXPIRE 命令和expire 一样是设置过期时间,只不过是以秒为单位



127.0.0.1:6379[5]> pexpire k3 3600 设置过期时间为一个小时
(integer) 1









PTTL key 以毫秒为单位返回 key 的剩余生存时间,TTL是返回以秒为单位



127.0.0.1:6379[5]> expire k1 3600000 3600000秒过期
(integer) 1
127.0.0.1:6379[5]> pttl k1
(integer) 3599994340 返回毫秒









RANDOMKEY 从当前数据库中随机返回(不删除)一个 key 。

127.0.0.1:6379[5]> keys *
1) "ypp"
2) "k1"
3) "2k"

127.0.0.1:6379[5]> randomkey
"2k"



RENAME key newkey

将 key 改名为 newkey 。当 key 和 newkey 相同,或者 key 不存在时,返回一个错误。当 newkey 已经存在时, RENAME 命令将覆盖旧值。

127.0.0.1:6379[5]> set hello world
OK
127.0.0.1:6379[5]> rename hello he
OK
127.0.0.1:6379[5]> get he
"world"


sort 返回或保存给定列表、集合、有序集合 key 中经过排序的元素。排序默认以数字作为对象,值被解释为双精度浮点数,然后进行比较。

  • SORT key 返回键值从小到大排序的结果。
  • SORT key DESC 返回键值从大到小排序的结果。

127.0.0.1:6379[5]> LPUSH today 30 1.8 90 10 88
(integer) 5
127.0.0.1:6379[5]> sort today
1) "1.8"
2) "10"
3) "30"
4) "88"
5) "90"
127.0.0.1:6379[5]> sort today desc
1) "90"
2) "88"
3) "30"
4) "10"



TTL key

以秒为单位,返回给定 key 的剩余生存时间

127.0.0.1:6379[5]> set ii ee


OK


127.0.0.1:6379[5]> EXPIRE ii 90 设置90秒过期


(integer) 1


127.0.0.1:6379[5]> ttl ii


(integer) 83 还有83秒过期





TYPE key

返回 key 所储存的值的类型。


返回值:


none (key不存在)



string (字符串)



list (列表)



set (集合)



zset (有序集)



hash (哈希表)


127.0.0.1:6379[5]> set ii ee
OK
127.0.0.1:6379[5]> EXPIRE ii 90
(integer) 1
127.0.0.1:6379[5]> ttl ii
(integer) 83
127.0.0.1:6379[5]> type ii
string string类型