Redis基础学习

NoSQL 2020-03-26 154 次浏览 本文字数:1898字

本文主要内容: Redis基础学习

Redis

  1. 概念: Redis是一款高性能的NoSQL系列的非关系型数据库

  2. 命令操作:

    1. Redis的数据结构:

      • Redis存储的是: key-value格式的数据,其中key都是字符串,value有5种不同的数据结构

      • value的数据结构:

        1. 字符串类型: String

        2. 哈希类型: hash(Map类型)

        3. 列表类型: list(Linkedlist)

        4. 集合类型: set

        5. 有序列表类型: sortedset

    2. 字符串类型 string

      1. 存储: set key value

      2. 获取: get key

      3. 删除: del key

    3. 哈希类型 hash

      1. 存储: hset key field value

      2. 获取: hget key field

      3. 删除: hdel key field

      4. 获取hash中的所有键和值: hgetall key

    4. 列表类型 list

      1. 存储:

        • lpush key value: 从左添加

        • rpush key value: 从右添加
      2. 获取:

        • lrange key start end: 范围获取(0 -1代表获取全部)
      3. 删除:

        • lpop key: 删除列表最左边的元素,并返回

        • rpop key: 删除列表最右边的元素,并返回

    5. 集合类型 set: 不允许重复元素(且无序)

      1. 存储: sadd key value value1 value2 ....

      2. 获取: smembers key: 获取set集合中的所有元素

      3. 删除: srem key value: 删除set集合中的某个元素

    6. 有序集合类型 sortedset: 不允许有重复元素,不同的是每个元素会有一个double类型的分数(权重),按照此分数进行排序

      1. 存储: zadd key score value

      2. 获取: zrange key start end

      3. 删除: zrem key value

    7. 通用命令

      1. keys * : 查询所有的键

      2. type key : 获取键对应的value的类型

      3. del key: 删除指定的key value

  3. 持久化

    1. Redis是一个内存数据库,当Redis服务器或电脑重启,数据会丢失,我们可以将Redis内存中的数据持久化保存到硬盘文件中

    2. Redis持久化机制

      1. RDB: 默认方式,不需要进行配置,默认使用

        • 在一定间隔事件中,检测key的变化情况,然后持久化数据
        1. 编辑redis.windows.conf文件

          • save 900 1(15分钟有一个key变化就持久化)
          • save 300 10
          • save 60 10000

        2. 重新启动redis服务器并指定conf

          • cmd启动服务器: redis-server.exe redis.windows.conf
      2. AOF: 日志记录的方法,可以记录每一条命令的操作,然后持久化操作(不推荐)

        • 编辑redis.windows.conf

          • appendonly no(关闭aof) --> appendonly yes
          • appendfsync always: 每一次操作都进行持久化
          • appendfsync everysec: 每隔一秒都进行一次持久化
          • appendfsync no : 不进行持久化

本文由 WarlockMarten 创作,采用 知识共享署名 3.0,可自由转载、引用,但需署名作者且注明文章出处。