zoukankan      html  css  js  c++  java
  • redis 基本概览

    1 redis 支持5种数据类型。redis 的值是字节数组,所以他不关心具体存储的是什么。

    redis 的键可以是

    • 数值
    • strings
    • lists
    • sets
    • hashes

    Redis 支持诸如列表、集合或有序集合的交集、并集、查集等高级原子操作;同时,如果键值的类型是普通数字,Redis 则提供自增等原子操作。

    2 Redis 的命令都是原子性的,你可以轻松地利用 INCR,DECR 命令来构建计数器系统。

    3 string 类型是二进制安全的, string 可以看做是 byte 数组,最大上限是 1G 字节。

    set name HongWan
    get name
    setnx name HongWan_new

    nx 是 not exist 的意思。

    setex haircolor 10 red

    设置 haircolor= red 的键值对,并指定它的有效期是 10 秒。

    4 mset,一次设置多个 key 的值,成功返回 ok 表示所有的值都设置了,失败返回 0 表示没有任何值被设置。

    mset key1 HongWan1 key2 HongWan2

    5 msetnx,如果不存在,一次设置多个 key 的值。要么全部设置、要么全部不执行。

    6 getset,设置 key 的值,并返回 key 的旧值。

    redis 127.0.0.1:6379> getset name HongWan_new
    "HongWan"
    redis 127.0.0.1:6379> get name
    "HongWan_new"

    7 getrange,获取指定 key 的 value 值的子字符串。

    redis 127.0.0.1:6379> get name
    "HongWan@126.com"
    redis 127.0.0.1:6379> getrange name 0 6
    "HongWan"

    8 mget,一次获取多个 key 的值,如果对应 key 不存在,则对应返回 nil。

    redis 127.0.0.1:6379> mget key1 key2 key3
    1) "HongWan1"
    2) "HongWan2"
    3) (nil)

    9 incr,对 key 的值做加加操作,并返回新的值。注意 incr 一个不是 int 的 value 会返回错误,incr 一个不存在的 key,则设置 key 为 1。

    redis 127.0.0.1:6379> set age 20
    OK
    redis 127.0.0.1:6379> incr age
    (integer) 21
    redis 127.0.0.1:6379> get age
    "21"

    10 incrby,同 incr 类似,加指定值 ,key 不存在时候会设置 key,并认为原来的 value 是 0

    redis 127.0.0.1:6379> get age
    "21"
    redis 127.0.0.1:6379> incrby age 5
    (integer) 26

    11 decr,对 key 的值做的是减减操作,decr 一个不存在 key,则设置 key 为-1

    12 decrby,同 decr,减指定值。

    13 append,给指定 key 的字符串值追加 value,返回新字符串值的长度。

    redis 127.0.0.1:6379> append name @126.com
    (integer) 15
    redis 127.0.0.1:6379> get name
    "HongWan@126.com"

    14 strlen,取指定 key 的 value 值的长度。

    redis 127.0.0.1:6379> get name
    "HongWan_new"
    redis 127.0.0.1:6379> strlen name
    (integer) 11
  • 相关阅读:
    mac下安装mysql
    给一些研究生的忠告(转)
    git相关
    PC端网页rem适配方案
    使用es6,对两个数组进行对比,从而修改其中一个数组里的某些值
    uni-app自定义简单的下拉刷新
    vue监听对象里的某个属性
    vue项目文件的权限配置
    vuex的用法
    jsencrypt.js文件解压版
  • 原文地址:https://www.cnblogs.com/zhaopengcheng/p/7479428.html
Copyright © 2011-2022 走看看