美文网首页
Redis 基本操作

Redis 基本操作

作者: BzCoder | 来源:发表于2018-05-31 23:37 被阅读16次

本人郑重承诺以下都是基本操作,请坐下请坐下。
内容是跟着http://try.redis.io/做的。边学边笔记。
更多指令可以参考http://www.runoob.com/redis/redis-tutorial.html

通用操作

  • FLUSHDB 清空当前库
  • FLUSHALL 清空所有库
  • DBSIZE 查看库元素数量
  • select db 切换库
  • Keys * 查看某个Key的值
  • exists key name 判断某个Key是否存在
  • move key db 把当前库的某个Key移动到目标库
  • expire key time 这是Key的过期时间
  • ttl key 查看Key的过期时间
  • type key 查看Key的类型

String

  • SET:设置Key值,冒号可以增加层级结构。
SET server:name "fido"
GET server:name => "fido"
  • INCR:键值自增,键值默认为0。设计这个字段主要是为了线程安全。
   SET connections 10
    INCR connections => 11
    INCR connections => 12
    DEL connections
    INCR connections => 1
  • EXPIRE:设置缓存过期时间,单位为秒
  • TTL:距离过期还有多少时间。
    假如输出-1,表示这个键值没有设置过期时间。
    假如输出-2,表示这个键值不存在。
 SET resource:lock "Redis Demo 1"
    EXPIRE resource:lock 120
    TTL resource:lock => 119
    SET resource:lock "Redis Demo 2"
    TTL resource:lock => -1

LIST

Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)

一个列表最多可以包含 232 - 1 个元素 (4294967295, 每个列表超过40亿个元素)。

  • Redis是支持多种数据类型。List是其中一种。
    • RPUSH:在队尾加入数据。
  RPUSH friends "Alice"
    RPUSH friends "Bob"
  • LPUSH:在队首加入数据。
  LPUSH friends "Sam"
  • LRANGE:取出队列的子集,假如第二项等于-1代表取出所有的项目。
   LRANGE friends 0 -1 => 1) "Sam", 2) "Alice", 3) "Bob"
    LRANGE friends 0 1 => 1) "Sam", 2) "Alice"
    LRANGE friends 1 2 => 1) "Alice", 2) "Bob"
  • LLEN 输出队列的长度
 LLEN friends => 3
  • LPOP左弹,RPOP弹出。就是对应删除并返回项目

SET

Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。

Redis 中集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。

集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。

  • SADD:添加元素
SADD superpowers "flight"]
SADD superpowers "x-ray vision"
SADD superpowers "reflexes"
  • SREM:移除元素
SREM superpowers "reflexes"
  • SISMEMBER 判断是否存在于集合中
SISMEMBER superpowers "flight" => 1 
SISMEMBER superpowers "reflexes" => 0
  • SMEMBERS 输出集合中所有的成员
SMEMBERS superpowers => 1) "flight", 2) "x-ray vision"
  • SUNION 合并集合
SADD birdpowers "pecking" 
SADD birdpowers "flight" 
SUNION superpowers birdpowers => 1) "pecking", 2) "x-ray vision", 3) "flight"

SORTED SET

Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。

不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。

有序集合的成员是唯一的,但分数(score)却可以重复。

集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。 集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。

  • ZADD:增加元素
   ZADD hackers 1940 "Alan Kay"
   ZADD hackers 1906 "Grace Hopper"
   ZADD hackers 1953 "Richard Stallman"
   ZADD hackers 1965 "Yukihiro Matsumoto"
   ZADD hackers 1916 "Claude Shannon"
   ZADD hackers 1969 "Linus Torvalds"
   ZADD hackers 1957 "Sophie Wilson"
   ZADD hackers 1912 "Alan Turing"
   ZRANGE hackers 2 4 => 1) "Claude Shannon", 2) "Alan Kay", 3) "Richard Stallman"

Hash

Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象。
Redis 中每个 hash 可以存储 232 - 1 键值对(40多亿)。

  • HSET 添加对象
HSET user:1000 name "John Smith"
HSET user:1000 email "john.smith@example.com"
HSET user:1000 password "s3cret"
//当然也可以一句搞定
HMSET user:1001 name "Mary Jones" password "hidden" email "mjones@example.com"
  • HGETALL 获取对象
HGETALL user:1000
  • HGET 取出某一项
HGET user:1001 name => "Mary Jones"
  • HINCRBY 让某个字段以一个数值递增。
  • HDEL 删除某个字段
  • HINCRBY同INCR
  HSET user:1000 visits 10
  HINCRBY user:1000 visits 1 => 11
  HINCRBY user:1000 visits 10 => 21
  HDEL user:1000 visits
  HINCRBY user:1000 visits 1 => 1

好了就到这里吧!

相关文章

  • php操作redis大全

    php连接redis测试 php操作redis函数封装 php操作redis大全,基本上php操作redis常用的...

  • Redis学习之路(二):Redis数据结构简介

    Redis提供的5种结构 Redis中的字符串 基本命令 操作练习: Redis中的列表 基本命令 基本操作: R...

  • php对redis的基本操作

    php对redis的基本操作 对key的基本操作

  • php操作redis大全

    php连接redis测试 php操作redis大全,基本上php操作redis常用的函数都在下面了

  • redis 基本操作

    连接redis 选择数据库 查看所有key 查看list的全部值 返回列表 key 中指定区间内的元素,区间以偏移...

  • Redis 基本操作

    本人郑重承诺以下都是基本操作,请坐下请坐下。内容是跟着http://try.redis.io/做的。边学边笔记。更...

  • Redis基本操作

    通用操作 rename name xm 把键name重设为xm select 选择数据库(线上慎用) keys *...

  • Redis 基本操作

    启动与关闭Redis服务、进入Redis环境 1.启动Redis服务 redis-server 拷贝的redis....

  • Redis基本操作

    NoSQL(Not Only SQL) NoSQL指的是非关系型数据库,是对不同于传统关系型数据库的数据库管理系统...

  • redis基本操作

    Redis可以存储键与5种不同数据结构类型之间的映射,这5种数据结构类型分别为STRING(字符串)、LIST(列...

网友评论

      本文标题:Redis 基本操作

      本文链接:https://www.haomeiwen.com/subject/vujfsftx.html