美文网首页编程语言爱好者Java 杂谈程序员
Redis指南-安装、五种类型命令

Redis指南-安装、五种类型命令

作者: GunnerAha | 来源:发表于2018-04-18 21:11 被阅读19次

    Redis指南-安装、五种类型命令

    1.Redis概述

    1.Redis是开源的,用于构建高性能、可扩展web应用的key-value内存存储系统。相比于其他key-value系统,redis具有如下特定:

    • redis在内存中保存数据,并使用硬盘持久化数据
    • redis支持五种数据类型:STRING/LIST/SET/HASH/ZSET
    • redis可以将数据写到多个slave

    2.Redis优点:

    • 极速:每秒110000次写、81000次读
    • 支持多种数据类型:STRING/LIST/SET/HASH/ZSET
    • 原子化操作:所有的redis操作都具有原子性
    • 多用途:可用于缓存、消息队列、短暂存储的信息存储(web session/点击计数等)

    2.Redis环境搭建

    1.Ubuntu中安装:

    sudo apt-get update
    sudo apt-get install redis-server
    

    2.启动(默认6379端口):

    redis-server
    

    3.客户端连接:

    redis-cli
    ping
    //返回PONG
    

    4.还可以下载docker版本的redis:

    docker run --name redis-server -d redis 
    docker run -it --link redis-server:redis-cli --rm redis redis-cli -h redis -p 6379
    

    第一句启动docker版本redis-server,第二句启动docker版本redis-cli,-h指定redis-server的主机名或者ip

    5.桌面可视化redis工具可在http://redisdesktop.com/download下载。

    3. Redis配置

    1.配置文件为redis根路径下的redis.conf,也可以使用CONFIG命令进行设置、读取配置。

    2.CONFIG命令语法:

    • 读取:config get config_setting_name,例如:config get *读取所有命令
    • 设置:config set config_setting_name new_config_value,例如config set loglevel "notice"设置日志级别为notice

    4. Redis数据类型

    支持5种数据类型:

    • STRING:一组字符,key-value类型,value最多存储512个字符。
    • HASH:field-value对的集合:<key,(field-value)>,用于存储对象。可存储大于40亿个field-value对(2^32-1)。
    • LIST:有序列表,支持从头尾添加。可存储大于40亿(2^32-1)个元素。
    • SET:无序集合,元素不能重复,时间复杂度O(1)。可存储大于40亿(2^32-1)个元素。
    • SORTED SET:有序集合,元素按照score从小到大进行排序,元素不能重复,score可以重复。

    5. Redis命令

    1.客户端连接命令:

    redis-cli -h host -p port -a password
    

    6. Redis键

    1.与key相关的命令有:

    • del key:删除key
    • dump key:返回可以的序列化形式
    • exist key:检查key是否存在
    • expire key seconds:设置key的在seconds秒后失效
    • expireat key timestamp:设置key的失效时间
    • pexpire key milliseconds:设置key在精确到毫秒后失效
    • pexpire key 设置key的失效时间,精确到毫秒
    • key pattern:查找符合模式的key
    • move key db:移动key到另一个db
    • persist key:取消key的失效时间
    • pttl key:获取精确到毫秒的key的失效时间
    • ttl key:获取精确到秒的key的失效时间
    • randomkey:获取随机key
    • rename key newkey:重命名key
    • renamenx key newkey:如果newkey不存在,重命名key为newkey
    • type key:返回key中数据的类型

    7. Redis字符串

    1.与字符串相关的命令有:

    • set key value:设置key-value
    • get key:获取key的value
    • getrange key start end:获取key在范围内的子串
    • getset key value:设置可key的值为value并返回其旧值
    • getbit key offset:获取key中offset位置的字节
    • mget key1 [key2..]:获取所有指定key的值
    • setbit key offset value:设置key指定offset的值
    • setex key seconds value:设置seconds秒后失效的key的值
    • setnx key value:key不存在则设置其值
    • setrange key offset value:设置offset开始的key的值
    • strlen key:获取key长度
    • mset key value[key value...]:设置多个key-value
    • msetnx key value[key value...]:如果key不存在,设置多个key-value
    • psetex key millseconds value:millseconds后失效的key-value
    • incr key:key自增
    • incrby key increment:key增加increment
    • incrbyfloat key increment:可以增加float类型的increment
    • decr ey:key自减
    • decrby key decrement:key减少decrement
    • append key value:key添加value

    8. Redis哈希

    1.hashes是<key,fields-value>的map。redis可以存储40亿的fields-value对。常用命令如下:

    • hdel key field [field2]:删除key下的field、field2
    • hexist key field:检查field是否存在
    • hget key field:获取key下field对应的value
    • hgetall key:获取key下所有的field-value
    • hincrby key field increment:自增increment
    • hincrbyfloat key field increment:自增float类型increment
    • hkeys key:获取key对应的所有fields
    • hlen key:获取key对应的fields的个数
    • hmget key field1 [field2]:获取field1等的值
    • hmset key field1 value1 [field2 value2]:设置多个值
    • hset key field value:设值
    • hsetnx key field value:不存在,设值
    • hvals key:获取可以对应的所有value
    • hscan key cursor [match pattern] [count count]:遍历fields和values

    9. Redis列表

    1.按照插入顺序排序存储,可以在头尾添加元素。最大可以存储2^32-1个元素,常用操作方法如下:

    • Blpop
    • Brpop
    • Brpoplpush
    • Lindex
    • Linsert
    • Llen
    • Lpop
    • Lpush
    • Lpushx
    • Lrange
    • Lrem
    • Lset
    • Ltrim
    • Rpop
    • Rpoplpush
    • Rpush
    • Rpushx

    10.Redis 集合set

    1.存储无序,不能重复的key的元素。最大2^32-1存储容量(40亿)。常用命令如下:

    • Sadd
    • Scard
    • Sdiff
    • Sdiffstore
    • Sinter
    • Sinterstore
    • Sismember
    • Smembers
    • Smove
    • Spop
    • Srandmember
    • Srem
    • Sunion
    • Sunionstore
    • Sscan

    11.Redis 有序集合

    1.存储有序、不能重复的key的元素。同set类似。常用命令如下:

    • Zadd
    • Zcard
    • Zcount
    • Zincrby
    • Zinterstore
    • Zlexcount
    • Zrange
    • Zrangebylex
    • Zrangebyscore
    • Zrank
    • Zrem
    • Zremrangebylex
    • Zremrangebyrank
    • Zremrangebyscore
    • Zrevrange
    • Zrevrangebyscore
    • Zrevrank
    • Zscore
    • Zunionstore
    • Zscan

    相关文章

      网友评论

      本文标题:Redis指南-安装、五种类型命令

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