redis相关操作

#连接主机
redis-cli -h 192.168.2.109 -p 6379

#通过密码登录
auth "yourpassword"

#存取值
set hello world
get hello

#发布/订阅模式 [1] [2]
PUBLISH test_channel "hello"
SUBSCRIBE test_channel
UNSUBSCRIBE test_channel

#Windows下安装redis为service
redis-server --service-install D:\wnmp\nosql\redis\redis.windows-service.conf
net start redis

#获取所有的key 
KEYS *

#获取以abc开头的key 
KEYS abc*


del keyname             #可删除各种类型(字符串、哈希、列表、集合)的缓存

#列表
rpush  listkey a b c d  #添加多个元素
lrange listkey 0 -1     #返回列表中所有元素
rpush  listkey hello    #添加一个元素
brpop  listkey 0        #阻塞弹出,如果队列中有数据立即返回,无数据则一直等待

#集合内的操作
sadd myset a b d d      #添加元素
srem myset a b          #删除元素
scard myset             #计算集合元素个数
smembers myset          #返回集合中的元素
sismember myset b       #判断元素是否在集合中
srandmember myset 1     #随机从集合返回指定个数元素
spop myset              #随机从集合弹出元素(被弹出的元素会从集合中删除。Redis从3.2版本开始,spop也支持[count]参数。)

#集合间的操作
sadd user:1:follow it music his sports
sadd user:2:follow it news  ent sports

sinter user:1:follow user:2:follow                      #求多个集合的交集
sunion user:1:follow user:2:follow                      #求多个集合的并集
sdiff  user:1:follow user:2:follow                      #求多个集合的差集
sdiff  user:2:follow user:1:follow

sinterstore user:1_2:inter user:1:follow user:2:follow  #将交集的结果保存
sunionstore user:1_2:union user:1:follow user:2:follow  #将并集的结果保存
sdiffstore  user:1_2:diff  user:1:follow user:2:follow  #将差集的结果保存

#dbsize返回keys总数

#批量删除keys匹配到的key
redis-cli keys "test*" | xargs redis-cli del

#ttl命令会返回键的剩余过期时间,它有3种返回值:
  大于等于0的整数:键剩余的过期时间。
  -1:键没设置过期时间。
  -2:键不存在

  #还剩7秒
  127.0.0.1:6379> ttl hello
  (integer) 7

#select 命令用于切换到指定的数据库,数据库索引号 index 用数字值指定,以 0 作为起始索引值
  redis 127.0.0.1:6379> SELECT 1    # 使用 1 号数据库
  OK

#通过rdb文件分析key占用的内存 [1] [2] [3] [4]

#==========================
# redis队列操作升级版
#==========================
#入队列
rpush a 1 2 3 4 5 6

#查看队列中元素
lrange a 0 -1

#取出3个元素
lrange a 0 2

#将取出的3个元素裁剪掉
ltrim a 3 -1

posted on 2018-03-21 17:10  dream_bccb  阅读(172)  评论(0编辑  收藏  举报