新闻资讯

新闻资讯

实时气象信息

气象信息

今日明日油价

明日油价

航班起降信息

航班信息

TTC动态时刻表

TTC时刻表

超市特价信息

超市特价

商场特价信息

商场特价

中外食谱

中外食谱

技术IT

技术IT

中外名画

中外名画

超强游戏

超强游戏

幽默笑话

幽默笑话

漫画卡通

漫画卡通

Redis常用命令手册:键值相关命令

主编发表于2011年10月21日 · 发表评论
归档于: IT开发文档, 技术IT 

2011年10月21日06:57


it168网站原创
作者:红丸
编辑:王玉圆
0

  【专家 技术】Redis提供了丰富的命令(command)对数据库和各种数据类型进行操作,这些command可以在Linux终端使用。在编程时,比如各类语言包,这些命令都有对应的方法。下面将Redis提供的命令做一总结。

  键值相关命令

  1、keys

  返回满足给定pattern的所有key:

#div_code img{border:0px;}
<!–

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

–>  redis 127.0.0.1:6379> keys *

  1) "myzset2"

  2) "myzset3"

  3) "mylist"

  4) "myset2"

  5) "myset3"

  6) "myset4"

  7) "k_zs_1"

  8) "myset5"

  9) "myset6"

  10) "myset7"

  11) "myhash"

  12) "myzset"

  13) "age"

  14) "myset"

  15) "mylist5"

  16) "mylist6"

  17) "mylist7"

  18) "mylist8"

  用表达式*,代表取出所有的key:

#div_code img{border:0px;}
<!–

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

–>  redis 127.0.0.1:6379> keys mylist*

  1) "mylist"

  2) "mylist5"

  3) "mylist6"

  4) "mylist7"

  5) "mylist8"

  redis 127.0.0.1:6379>

  用表达式mylist*,代表取出所有以mylist开头的key。

  2、exists

  确认一个key是否存在:

#div_code img{border:0px;}
<!–

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

–>  redis 127.0.0.1:6379> exists HongWan

  (integer) 0

  redis 127.0.0.1:6379> exists age

  (integer) 1

  redis 127.0.0.1:6379>

  从结果来数据库中不存在HongWan这个key,但是age这个key是存在的。

  3、del

  删除一个key:

#div_code img{border:0px;}
<!–

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

–>  redis 127.0.0.1:6379> del age

  (integer) 1

  redis 127.0.0.1:6379> exists age

  (integer) 0

  redis 127.0.0.1:6379>

  从结果来数据库中不存在HongWan这个key,但是age这个key是存在的。

  4、expire

  设置一个key的过期时间(单位:秒):

#div_code img{border:0px;}
<!–

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

–>  redis 127.0.0.1:6379> expire addr 10

  (integer) 1

  redis 127.0.0.1:6379> ttl addr

  (integer) 8

  redis 127.0.0.1:6379> ttl addr

  (integer) 1

  redis 127.0.0.1:6379> ttl addr

  (integer) -1

  redis 127.0.0.1:6379>

  在本例中,我们设置addr这个key的过期时间是10秒,然后我们不断的用ttl来获取这个key的有效时长,直至为-1说明此值已过期。

  5、move

  将当前数据库中的key转移到其它数据库中:

#div_code img{border:0px;}
<!–

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

–>  redis 127.0.0.1:6379> select 0

  OK

  redis 127.0.0.1:6379> set age 30

  OK

  redis 127.0.0.1:6379> get age

  "30"

  redis 127.0.0.1:6379> move age 1

  (integer) 1

  redis 127.0.0.1:6379> get age

  (nil)

  redis 127.0.0.1:6379> select 1

  OK

  redis 127.0.0.1:6379[1]> get age

  "30"

  redis 127.0.0.1:6379[1]>

  在本例中,我先显式的选择了数据库0,然后在这个库中设置一个key,接下来我们将这个key从数据库0移到数据库1,之后我们确认在数据库0中无此key了, 但在数据库1中存在这个key,说明我们转移成功了

  6、persist

  移除给定key的过期时间:

#div_code img{border:0px;}
<!–

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

–>  redis 127.0.0.1:6379[1]> expire age 300

  (integer) 1

  redis 127.0.0.1:6379[1]> ttl age

  (integer) 294

  redis 127.0.0.1:6379[1]> persist age

  (integer) 1

  redis 127.0.0.1:6379[1]> ttl age

  (integer) -1

  redis 127.0.0.1:6379[1]>

  在这个例子中,我们手动的将未到过期时间的key,成功设置为过期。

  7、randomkey

  随机返回key空间的一个key:

#div_code img{border:0px;}
<!–

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

–>  redis 127.0.0.1:6379> randomkey

  "mylist7"

  redis 127.0.0.1:6379> randomkey

  "mylist5"

  redis 127.0.0.1:6379>

  通过结果可以看到取key的规则是随机的。

  8、rename

  重命名key:

#div_code img{border:0px;}
<!–

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

–>  redis 127.0.0.1:6379[1]> keys *

  1) "age"

  redis 127.0.0.1:6379[1]> rename age age_new

  OK

  redis 127.0.0.1:6379[1]> keys *

  1) "age_new"

  redis 127.0.0.1:6379[1]>

  age成功的被我们改名为age_new了。

  9、type

  返回值的类型:

#div_code img{border:0px;}
<!–

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

–>  redis 127.0.0.1:6379> type addr

  string

  redis 127.0.0.1:6379> type myzset2

  zset

  redis 127.0.0.1:6379> type mylist

  list

  redis 127.0.0.1:6379>

  这个方法可以非常简单的判断出值的类型。

【“身边的加国”专栏作家风采】

本文所属类别其他文章

IT开发文档:

技术IT:


发表评论

您希望以注册用户身份发表评论吗?登录 »

                - 或者 -

非注册用户身份发表评论 »