您的位置:首页 > 数据库 > Redis

redis常用命令

2012-03-14 15:45 579 查看

redis常用命令

1人收藏此文章,我要收藏
发表于8个月前 , 已有920次阅读 共0个评论
http://blog.163.com/love-love-l/blog/static/210783042010112311459577/  借用博文
http://mxohy.blog.sohu.com/169636769.html    //此博主的博客上面有redis和mysql的专题

常用redis操作命令:

1、手动抓取快照,save或者bgsave(后台异步)
redis> save
OK
redis> bgsave
Background saving started

2、获取某个key的类型
redis> type mylist
list

3、匹配所有符合模式的key,*代表所有
redis> keys *
1) "name"
2) "mylist"

4、随机返回一个key,
redis> randomkey
"mylist"

5、重命名一个key,
redis> rename name myname
OK
redis> keys *
1) "myname"
2) "mylist"

6、list的一些操作,

将一个值添加到列表的首部,
redis> rpush company taobao
(integer) 1
redis> lrange company 0 1
1)    "taobao"

将一个值添加到列表的尾部,
redis> lpush company sina
(integer) 2
redis> lrange company 0 1
1) "sina"
2) "taobao"

获得列表长度,
redis> llen company
(integer) 2

返回list中某个范围的值,模式LRANGE key start end
redis> lrange company 1 2
1) "taobao"
2) "sohu"

只保留list中某个范围的值,模式LTRIM key start end
redis> lrange company 0 2
1) "sina"
2) "taobao"
3) "sohu"
redis> ltrim company 0 1
OK
redis> lrange company 0 2
1) "sina"
2) "taobao"

获得list中某个索引号的值,模式LINDEX key index
redis> lrange company 0 4
1) "baidu"
2) "sohu"
3) "sina"
4) "taobao"
redis> lindex company 2
"sina"
redis> lindex company 0
"baidu"

设置list中某个索引位置的值,模式LSET key index value
redis> lrange company 0 4
1) "baidu"
2) "sohu"
3) "sina"
4) "taobao"
redis> lset company 2 google
OK
redis> lrange company 0 4
1) "baidu"
2) "sohu"
3) "google"
4) "taobao"

用lpop获取list中索引最小的值(头部值),rpop获取list中索引最大的值(尾部值),注意获取之后list中就不再有这个值了。
redis> lrange company 0 4
1) "baidu"
2) "sohu"
3) "google"
4) "taobao"
redis> lpop company
"baidu"
redis> rpop company
"taobao"
redis> lrange company 0 4
1) "sohu"
2) "google"

特别注意:以上这些命令中的start或者index都是从0开始计算的

7、集合的一些操作

向集合中增加一个元素,模式SADD key member
redis> sadd class kongxing
(integer) 1
redis> type class
set

列出集合中的所有元素,注意元素是无序的,模式SMEMBERS key
redis> smembers class
1) "banqiao"
2) "rulong"
3) "changjie"
4) "kongxing"

从集合中删除一个元素,模式SREM key member
redis> srem class kongxing
(integer) 1
redis> smembers class
1) "banqiao"
2) "rulong"
3) "changjie"

返回集合大小,模式SCARD key
redis> scard class
(integer) 3

判断某个值是否在集合中,模式SISMEMBER key member
redis> sismember class kongxing
(integer) 0—表示没有’kongxing’这个元素
redis> sismember class rulong
(integer) 1—表示存在’rulong’这个元素

获取多个集合的交集元素,模式SINTER key1 key2 ... keyN
redis> smembers dba
1) "rulong"
2) "changjie"
redis> smembers class
1) "banqiao"
2) "rulong"
3) "kongxing"
4) "changjie"
redis> sinter class dba
1) "rulong"
2) "changjie"
redis> sinter dba class
1) "rulong"
2) "changjie"

---注意:取交集,所以与各个key的位置无关
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息