• Redis的安装和使用


    实验目的

    1. 熟悉并掌握NoSQL数据库操作常用的shell命令
    2. 学会安装并使用NoSQL数据库

    实验环境

    1. 操作系统: CentOS 8
    2. Hadoop版本: 3.2.2
    3. Redis版本: 6.2.7

    实验步骤

    1. 快速安装Redis

    1. 为了避免安装到旧版 Redis 的问题,我们直接使用源码编译安装 Redis,首先你需要获取并安装 make 等一系列构建工具:

      yum update
      yum -y install gcc-c++
      yum -y install make
      

      出现错误
      在这里插入图片描述
      问题解决文章https://blog.csdn.net/weixin_56483756/article/details/124185212

      问题解决之后重新执行命令,
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述

    2. Redis官网复制最新的Redis下载链接,如图右键点击下载链接,选择复制链接,然后在虚拟机上粘贴下载
      在这里插入图片描述

      # 我需要下载到/opt目录,进入/opt目录
      cd /opt
      wget https://download.redis.io/releases/redis-6.2.7.tar.gz
      

      在这里插入图片描述

    3. 解压并重命名

      tar -zxvf redis-6.2.7.tar.gz -C /app
      cd /app
      mv redis-6.2.7 redis
      

      在这里插入图片描述
      在这里插入图片描述

    4. 进入redis目录,编译并进行安装redis

      cd redis
      # 注意观察编译消息,最后不应该产生任何错误(`Error`)
      make
      # 注意观察编译消息,最后不应该产生任何错误(`Error`)
      make install
      

      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述

    5. 启动 Redis 服务器,注意通过日志确认 Redis 顺利启动

      redis-server redis.conf
      

      在这里插入图片描述
      除了上述的启动 Redis 服务器方式,还可以通过 Redis 默认的配置在后台启动它(常用启动方式):

      redis-server &
      

      在这里插入图片描述

    6. 进入redis脚本控制台

      在安装完redis并启动redis-server之后,可以使用命令redis-cli命令进入控制台与redis进行交互
      在这里插入图片描述
      退出控制台使用exit命令

    7. 关闭服务器
      进入Redis控制台之后输入shutdown命令即可关闭redis服务
      在这里插入图片描述

    2. Redis数据结构简介

    Redis的五种数据结构: 字符串(STRING)、列表(LIST)、集合(SET)、哈希(HASH)、有序集合(ZSET)。他们存储的值如下:

    结构类型存储的值
    STRING字符串、整数或浮点数
    LIST一个链表,上面的每个节点都是一个字符串
    SET包含若干个字符串的无序集合,且集合中的元素都是唯一的
    HASH包含键值对的无序散列表
    ZSET成员中的字符串与分值的有序映射,其排序由分值决定
    1. 字符串
      STRING 拥有一些和其他键值存储相似的命令,比如 GET(获取值),SET(设置值),DEL(删除值)等
      在这里插入图片描述
      (1) SET 命令的第一个参数是键(Key),第二个参数是值(Value)
      (2) 尝试获取不存在的键时会得到一个 nil
    2. 列表
      Redis 中的列表是一个“链表”,这和大多数编程语言相似。所以他们的操作也十分相似:
      (1) LPUSH命令可用于将元素推入列表的左侧
      (2) RPUSH命令可将元素推入列表的右侧
      (3) LPOPRPOP就分别从列表的左侧和右侧弹出元素
      (4) LINDEX可以获取指定位置上的元素
      (5) LRANGE可以获取指定范围的全部元素
      在这里插入图片描述
    3. 集合
      集合的唯一性就是与列表的区别,即集合中的元素唯一;由于集合的无序性,所以只能通过统一的 SADD命令将元素添加到集合中,SREM命令将元素从集合中移除,还可以通过:
      (1) SMEMBERS命令获取到集合中的所有元素
      (2) SISMEMBER命令来判断一个元素是否已存在在集合中
      在这里插入图片描述
    4. 哈希
      哈希可以存储多个键值对之间的映射。和字符串一样,哈希存储的值既可以是字符串又可以是数字值,并且可以对数字值进行自增/自减操作。
      (1) hset用于插入元素
      - 第一个参数为该哈希的键名,如果该哈希不存在,则创建一个
      - 第二个参数为哈希中的域名
      如果不存在,则创建该域,并与第三个参数的值进行映射
      如果存在,则使用第三个参数更新该域的值
      - 第三个参数为哈希中的值
      (2) hgetall会获取到该哈希的所有域-值对
      (3) hget用于获取哈希中的某一个域
      (4) hdel用户删除哈希中的某一个域
      在这里插入图片描述
    5. 有序集合
      只是有序集合的键被称为成员(member),每个成员都是唯一的,有序集合的值则被称为分值(score),这个分值必须为浮点数。所以有序集合既可以通过成员访问元素,也可以通过分值来排序元素。
      (1) ZADD命令将带有指定分值的成员添加到有序集合中
      (2) ZRANGE命令根据分值有序排列后的集合获取到指定范围的元素
      (3) ZRANGEBYSCORE命令获取指定分值范围内的元素
      (4) ZREM命令从有序集合中删除指定成员
      在这里插入图片描述
      在这里插入图片描述
  • 相关阅读:
    Python Lambda 常用使用方法汇总(结合fliter\map\reduce等函数)
    PyTorch中的CUDA操作
    Starday影响者视频能给你提升80%的流量?
    斐波那契数列
    【从零开始学习Redis | 第四篇】基于延时双删对Cache Aside的优化
    .NET6: 开发基于WPF的摩登三维工业软件 (10) - 机器人
    【Houdini】使用Houdini的Karma渲染器渲染流体
    git修改文件名称提交
    安装篇(整理了各大神软件安装教程集合)
    ARM32开发--FreeRTOS-事件组
  • 原文地址:https://blog.csdn.net/Lilianach/article/details/125097565