Redis实战:Redis的安装及简单使用

本片将介绍 Redis 的安装及简单使用


文章目录

        • 1、Redis安装
          • 1.1、Windows下Redis的安装
          • 1.2、Linux下Redis的安装
          • 1.3、Mac下Redis的安装(使用Homebrew)
        • 2、Redis使用
          • 2.1、启动服务端客户端
          • 2.2、Redis简单命令
        • 3、Redis命令大全


1、Redis安装

1.1、Windows下Redis的安装

对于 Redis,官方是没有 Windows 版本的。

Windows 版本下载地址:https://github.com/MicrosoftArchive/redis/releases,下载对应版本的 mis 格式安装包:

image-20230812223316028

  1. 开始安装

  2. 选择 “同意协议”,点击下一步继续;

  3. 选择 “添加Redis目录到环境变量PATH中”,这样方便系统自动识别 Redis 执行文件在哪里;

  4. 端口号可保持默认的 6379,并选择防火墙例外,从而保证外部可以正常访问 Redis 服务;

  5. 设定最大值为 100M。作为实验和学习,100M 足够了

接下来,右击 “计算机” > 选择 “管理”。在左侧栏中依次找到并点击 “计算机管理(本地)” > 服务和应用程序 > 服务。再在右侧找到 Redis 名称的服务,查看启动情况。如未启动,则手动启动之。正常情况下,服务应该正常启动并运行了

最后来测试一下 Redis 是否正常提供服务。进入 Redis 的目录使用 cmd。输入 redis-cli 并回车。(redis-cli 是客户端程序)如图正常提示进入,并显示正确端口号,则表示服务已经启动:

批注 2021-07-08 1935126

实际测试一下读写。输入并回车:

set mykey1 "I love you all!"

再输入以下命令,获取刚才保存的键值

get mykey1
1.2、Linux下Redis的安装

Redis官网下载地址:https://redis.io/download/#redis-stack-downloads

image-20230812223932883

直接点击对应版本下载得到对应的 redis-6.2.6.tar.gz 文件

接下俩,开始 Linux 下 Redis 的安装:

  1. 把 redis-6.2.6.tar.gz 移动到 /usr/local/ 目录下:

    mv redis-6.2.6.tar.gz /usr/local/
    
  2. 解压 redis-6.2.6.tar.gz:

    tar -zxvf redis-6.2.6.tar.gz
    
  3. 由于 Redis 是由 C 语言编写的,它的运行需要 C 环境,因此我们需要先安装 gcc:

    yum install gcc-c++
    
  4. 进入到 /usr/local/redis-6.2.4/ 目录下,进行编译与安装 :

    cd redis-6.2.4
    make
    cd ./src
    make install
    
  5. Redis 不是默认后台启动的,需要求改一下配置文件 redis.conf 将 daemonize 属性改为 yes

  6. 编辑 redis.conf 配置文件,开启 Redis 远程访问服务:

    bind 127.0.0.1 这一行给注释掉,这里的bind指的是只有指定的网段才能远程访问这个 Redis,注释掉后,就没有这个限制了
    protected-mode no 默认是设置成 yes 的, 防止了远程访问,在 Redis3.2.3 版本后
    
  7. 启动 Redis 服务:

    redis-server redis.conf
    
  8. 启动 Redis 客户端服务:

    redis-cli -p 6379
    
1.3、Mac下Redis的安装(使用Homebrew)

没有安装 Homebrew,首先安装 npm 国内的,快一些:

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)

使用Homebrew安装命令:

brew install redis

查看安装及配置文件位置:

  • Homebrew 安装的软件会默认在 /usr/local/Cellar/ 路径下
  • Redis 的配置文件 redis.conf 存放在 /usr/local/etc 路径下

启动 Redis 服务:

redis-server /usr/local/etc/redis.conf
或
brew services start redis
或
redis-server

查看 Redis 服务进程:

ps axu | grep redis

redis-cli 连接 Redis 服务,Redis 默认端口号 6379,默认 auth 为空:

redis-cli -h 127.0.0.1 -p 6379

2、Redis使用

2.1、启动服务端客户端

紧接上文,我们完成 Redis 安装后,进行一些 Redis 的简单使用,完成一些相关操作,来加深对 Redis 的理解。

我们以 Mac 版本进行使用,首先,启动 Redis 的服务端与客户端:

服务端:
redis-server /usr/local/etc/redis.conf
客户端(新建终端页):
redis-cli -h 127.0.0.1 -p 6379

image-20230812225553942

2.2、Redis简单命令

Redis Ping 命令使用客户端向 Redis 服务器发送一个 “PING” ,如果服务器运作正常的话,会返回一个 “PONG” 。

通常用于测试与服务器的连接是否仍然生效,或者用于测量延迟值:

image-20230812230128143

Redis Select 命令用于切换到指定的数据库,数据库索引号 index 用数字值指定,以 0 作为起始索引值。

选择第 6 个数据库:

image-20230812230257171

Redis SET 命令用于设置给定 key 的值。如果 key 已经存储其他值, SET 就覆写旧值,且无视类型。

以 a 为键存一个值 15:

image-20230812230404480

Redis Get 命令用于获取指定 key 的值。如果 key 不存在,返回 nil 。如果key 储存的值不是字符串类型,返回一个错误。

获取 a 的值:

image-20230812230457598

Redis Keys 命令用于查找所有符合给定模式 pattern 的 key

查看该库中的全部键:

image-20230812230612499

Redis Flushdb 命令用于清空当前数据库中的所有 key。

Redis Flushall 命令用于清空整个 Redis 服务器的数据(删除所有数据库的所有 key)

清空全部数据库:

image-20230812230719077


3、Redis命令大全

Redis 命令十分丰富,包括的命令组有 Cluster、Connection、Geo、Hashes、HyperLogLog、Keys、Lists、Pub/Sub、Scripting、Server、Sets、Sorted Sets、Strings、Transactions 一共14个 Redis 命令组两百多个 Redis 命令,Redis 中文命令大全。我们可以通过下面页面的检索功能快速查找命令:http://www.redis.cn/commands.html

image-20230813000907992

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/83005.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Linux问题--docker启动mysql时提示3306端口被占用

问题描述: 解决方法: 1.如果需要kill掉mysqld服务可以先通过 lsof -i :3306 2. 查询到占用3306的PID,随后使用 kill -15 PID 来kill掉mysqld服务。 最后结果

软件工程模型-架构师之路(四)

软件工程模型 敏捷开发: 个体和交互 胜过 过程和工具、可以工作的软件 胜过 面面俱到的文件、客户合作胜过合同谈判、响应变化 胜过 循序计划。(适应需求变化,积极响应) 敏捷开发与其他结构化方法区别特点:面向人的…

网络面试题(172.22.141.231/26,该IP位于哪个网段? 该网段拥有多少可用IP地址?广播地址是多少?)

此题面试中常被问到,一定要会172.22.141.231/26,该IP位于哪个网段? 该网段拥有多少可用IP地址?广播地址是多少? 解题思路: 网络地址:172.22.141.192 10101100.00010110.10001101.11000000 广播…

Linux驱动开发(Day4)

思维导图: 字符设备驱动分步注册:

开学有哪些好用电容笔值得买?ipad触控笔推荐平价

因为有了Apple Pencil,使得iPad就成了一款便携的生产力配件,其优势在于,电容笔搭配上iPad可以让专业的绘画师在iPad上作画,而且还能画出各种粗细不一的线条,对于有书写需求的学生党来讲,还是很有帮助的。但本人不敢想像…

干货!一文告诉你SCRM和CRM有什么区别和联系?

在现代商业领域,我们经常听到两个缩写词,即"SCRM"和"CRM"。它们都与客户关系管理有关,但具体是什么意思?本文将用通俗易懂的方式解释这两个概念,以实例分析SCRM和CRM的功能并探讨它们之间的区别和…

验证评估守护关基安全 赛宁数字孪生靶场创新实践

​​近日,由赛宁网安主办,ISC互联网安全大会组委会协办的第十一届互联网安全大会(ISC 2023)安全运营实践论坛圆满结束。赛宁网安产品总监史崯出席并作出主题演讲:《基于数字孪生靶场如何开展验证评估》,同时…

linux 移动mv命令(实战案例)

linux 移动命令(你真的会用吗???) 第一种情况:移动文件 例如: 将/gdda_file 文件下的 zlib-devel-1.2.7-18el7.x86_64.rpm 移动到 /root/ces/tools文件下 解决方法: mv /gdda_fi…

微服务-GateWay(网关)

所谓网关是什么意思? 相当于就是你们小区家的保安,进出小区都得获得保安的同意,守护你们小区的生命财产健康,网关也是如此,对每个请求都严格把关,将合法的或者是获得权限的请求进入服务器 网关的功能&…

AIGC|万字长文!带你了解AI大模型技术演进

一、AI的起源 在下面这张图中,我们可以看到两个人物:图中左边的人物是一位演员,他出演了一部名为《模仿游戏》的电影。而这部电影实际上讲述的是图中右边的人物,他就是是人工智能之父图灵(Alan Turing)。 …

vue2.x项目从0到1(七)之用户权限

此章节偏理论知识 对于小一点的项目 比如说角色都是平级的 那我们直接像之前 vue2.x项目从0到1(二)之后台管理侧边栏(动态渲染路由以及高亮)_vue动态渲染侧边栏_关忆北_的博客-CSDN博客这样渲染就行了 但是一旦项目大了 …

# 快速评估立功科技基于S32K324的TMS方案

文章目录 1.前言2.立功科技的TMS方案介绍2.1 介绍资料2.2 简要介绍 3.S32K3_TriMotor评估板测试3.1 环境搭建S32 Design Studio for S32 Platform 3.4安装RTD 2.0.0安装Freemaster 3.2 3.2 例程测试3.3 例程适配3.4 双核烧录3.5 测试 1.前言 最近和一些做汽车水泵/风机的客户交…

【论文阅读】 Model Sparsity Can Simplify Machine Unlearning

Model Sparsity Can Simplify Machine Unlearning 背景主要内容Contribution Ⅰ:对Machine Unlearning的一个全面的理解Contribution Ⅱ:说明model sparsity对Machine Unlearning的好处Pruning方法的选择sparse-aware的unlearning framework Experiments…

stm32控制蜂鸣器源代码(附带proteus线路图)

说明: 1 PB0输出0时,蜂鸣器发生; 2 蜂鸣器电阻值如果太大会导致电流太小,发不出声音; 3蜂鸣器额定电压需要设置得低一点,可以是2V,但不能高于3V,这更右上角的电阻值有关系&#x…

每天一道leetcode:剑指 Offer 34. 二叉树中和为某一值的路径(中等图论深度优先遍历递归)

今日份题目: 给你二叉树的根节点 root 和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。 叶子节点 是指没有子节点的节点。 示例1 输入:root [5,4,8,11,null,13,4,7,2,null,null,5,1], targetSu…

数据结构 - 基本概念和术语

基础概念之间的关系大致如下: 一、数据、数据元素、数据项和数据对象 数据 > 数据对象 > 数据元素 > 数据项 类比数据库,这四个概念代表的含义如下所示: 数据:整个数据库的所有数据数据对象:这个数据库的…

数据结构之并查集

并查集 1. 并查集原理2. 并查集实现3. 并查集应用3.1 省份数量3.2 等式方程的可满足性 4. 并查集的优缺点及时间复杂度 1. 并查集原理 并查表原理是一种树型的数据结构,用于处理一些不相交集合的合并及查询问题。并查集的思想是用一个数组表示了整片森林&#xff0…

opencv进阶08-K 均值聚类cv2.kmeans()介绍及示例

K均值聚类是一种常用的无监督学习算法,用于将一组数据点分成不同的簇(clusters),以便数据点在同一簇内更相似,而不同簇之间差异较大。K均值聚类的目标是通过最小化数据点与所属簇中心之间的距离来形成簇。 当我们要预测…

[国产MCU]-W801开发实例-GPIO输入与中断

GPIO输入与中断 文章目录 GPIO输入与中断1、硬件准备2、软件准备3、驱动实现4、驱动测试W801的GPIO支持软件配置中断,中断触发方式包含:上升沿触发、下降沿触发、高电平触发、低电平触发。本文在前面[ 国产MCU]-W801开发实例-按键与GPIO输入的基础上实现GPIO中断配置。 1、硬…

【Linux网络】网络编程套接字 -- 基于socket实现一个简单UDP网络程序

认识端口号网络字节序处理字节序函数 htonl、htons、ntohl、ntohs socketsocket编程接口sockaddr结构结尾实现UDP程序的socket接口使用解析socket处理 IP 地址的函数初始化sockaddr_inbindrecvfromsendto 实现一个简单的UDP网络程序封装服务器相关代码封装客户端相关代码实验结…