Redis安装与配置及常用命令使用讲解

目录

一、Redis简介

二、Redis安装和配置

2.1 Linux版

2.2 Windows版

三、Redis命令 

3.1 通过命令操作Redis

3.2 String 字符串

3.3 Hash 哈希

3.4 List 列表

3.5 Set 有序集合(sorted set)


一、Redis简介

        Redis是一个开源的内存数据结构存储系统,它可以用作数据库、缓存和消息中间件。Redis支持多种数据结构,包括字符串、哈希表、列表、集合和有序集合,这使得它非常灵活和多用途。

        Redis的主要作用是提供高性能的数据存储和访问。由于数据存储在内存中,Redis能够实现非常快速的读写操作,使其成为处理高并发和低延迟应用的理想选择。此外,Redis还具有以下几个重要的特性和应用场景:

  1. 缓存:Redis常用于缓存热门数据,以减轻后端数据库的负载。通过将经常访问的数据存储在Redis中,可以大大提高应用程序的响应速度和吞吐量。

  2. 分布式锁:Redis提供了原子操作和分布式锁的支持,可以用于实现分布式系统中的并发控制和资源竞争解决方案。

  3. 发布/订阅:Redis的发布/订阅功能允许不同的应用程序之间进行实时消息传递。这在实时聊天、实时数据更新和事件驱动的应用程序中非常有用。

  4. 排行榜和计数器:Redis的有序集合和计数器功能可以用于实现排行榜、计数器和统计功能。这对于需要实时统计和排名的应用程序非常有用。

  5. 地理位置和地理搜索:Redis的地理位置功能可以用于存储和查询地理位置数据,例如附近的人、地点推荐和地理搜索。

  6. 会话存储:由于Redis支持持久化,它可以用作会话存储,以替代传统的基于Cookie的会话存储。这提供了更高的性能和可扩展性。

        总之,Redis是一个功能强大且灵活的存储系统,适用于各种不同的应用场景,包括缓存、分布式锁、实时消息传递、排行榜和计数器、地理位置和会话存储等。作为软件工程师,我们可以根据具体的需求和性能要求,合理地选择和使用Redis来优化应用程序的性能和用户体验。

二、Redis安装和配置

Redis官网下载路径—— https://redis.io/download/

 

2.1 Linux版

1、上传redis.tar.gz文件到虚拟机,并进行解压

tar -zxvf redis-5.0.0.tar.gz

2、安装gcc

yum install gcc

3、编译redis

make && make install

4、检测安装情况

make install

 

5、修改redis.conf文件

命令:

vim redis.conf

将文件内容:daemonize no 改为 daemonize yes

6、启动redis

./src/redis-server redis.conf

7、redis启动测试

端口测试:

lsof -i:6379

是否能够连接本地客户端测试:

./src/redis-cli

8、结束进程

kill -9 xxxx (PID)

9、修改密码及外部连接

以上为无密码链接,为了安全需要设置密码,并且配置外部链接访问

修改redis.conf指令:

vim redis.conf

1、注释bind 127.0.0.1

2、修改requirepass 123456

 

10、开放Redis端口号

firewall-cmd --zone=public --add-port=6379/tcp --permanentfirewall-cmd --reload

重新连接

./src/redis-server redis.conf

11、安装客户端工具 RedisDesktopManager 连接测试 

连接成功就可看到左侧列表的服务器默认的数据库 

 

2.2 Windows版

1、下载windows版redis后进行解压

2、编写文件把一下代码放进去更改后缀为bat文件

cd Redis-x64-3.2.100 #进入解压文件
redis-server redis.windows.conf #安装

运行该文件出现如图表示安装成功

3、修改 redis.windows.conf 文件 

操作如上:Linux版第9步 --> 修改密码及外部连接

4、连接测试

三、Redis命令 

3.1 通过命令操作Redis

首先需要启动Redis服务与本地客户端连接

因为我们加入了守护进程,所以以前直接连接的方式不行,必须带密码和用户端口

-h(主机ip)-p(端口) -a(密码)

Redis支持五种数据类型,接下来就可以通过命令来使用Redis。

  • string(字符串)
  • hash(哈希)
  • list(列表)
  • set(集合)
  • zset(sorted set:有序集合)

 

3.2 String 字符串

# set key          //保存
# get key          //获取
# type key         //查看类型
# keys *或keys key        //查看所有或者指定的key

3.3 Hash 哈希

Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象。

# hset key field1 value1 [field2 value2]  #同时将多个field-value设置到哈希表key中
# hget key field                                       #获取指定的字段值
# hdel key field                                       #删除指定的字段值
# hgetall key                                           #查询指定key的所有字段
# hexists key field                                   #查询指定key中的字段是否存在
# hlen key                                               #获取指定key中的长度

3.4 List 列表

        Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)

# hset key field1 value1 [field2 value2]  #同时将多个field-value设置到哈希表key中
# hget key field                                       #获取指定的字段值
# hdel key field                                       #删除指定的字段值
# hgetall key                                           #查询指定key的所有字段
# hexists key field                                   #查询指定key中的字段是否存在
# hlen key                                               #获取指定key中的长度

 

3.5 Set 有序集合(sorted set)

Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。

# sadd key value1 [value2]                                            #向集合添加一个或多个元素
# scard key                                                                    #获取集合中的元素数量
# sscan key cursor [MATCH pattern] [COUNT count]   #迭代集合中的元素
# exists key                                                                    #是否存在

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Linux基础IO篇】系统文件接口(1)

【Linux基础IO篇】系统文件接口(1) 目录 【Linux基础IO篇】系统文件接口(1)回顾C语言的文件接口系统文件I/Oopen接口的介绍 open函数返回值文件描述符fd(小整数)文件描述符的分配规则 重定向dup2系统调用改…

Py之auto-gptq:auto-gptq的简介、安装、使用方法之详细攻略

Py之auto-gptq:auto-gptq的简介、安装、使用方法之详细攻略 目录 auto-gptq的简介 1、版本更新历史 2、性能对比 推理速度 困惑度(PPL) 3、支持的模型 3、支持的评估任务 auto-gptq的安装 auto-gptq的使用方法 1、基础用法 (1)、量…

《C语言从入门到精通》:入门容易,精通难,C语言也不例外

《C语言从入门到精通》:入门容易,精通难,C语言也不例外 C语言,容易上手,难以精通。它是一把双刃剑,既打开了编程世界的大门,又需要耐心与热情。无论是初学者还是专业人士,都需不断钻…

苹果cms论坛多播放源自动采集在线影视网站

苹果 cms 论坛一个基于 vue 和 gin 实现的在线观影网站 项目采用 vite vue 作为前端技术栈, 使用 ElementPlus 作为 UI 框架进行开发 后端程序使用 Gin gorm go-redis 等相关框架提供接口服务, 使用 gocolly 和 robfig/cron 进行公共影视资源采集和定时更新功能 目前用户…

2.Spark的工作与架构原理

概述 目标: spark的工作原理spark数据处理通用流程rdd 什么是rddrdd 的特点 spark架构 spark架构相关进程spark架构原理 spark的工作原理 spark 的工作原理,如下图 图中中间部分是spark集群,也可以是基于 yarn 的,图上可以…

为什么重写 redisTemplate

为什么重写 redisTemplate 1.安装 redis 上传 redis 的安装包tar -xvf redis-5.0.7.tar.gzyum -y install gcc-cmakemake PREFIX/soft/redis installcd /soft/redis/bin./redis-server redis.conf 2. 集成 redisTemplate maven 依赖 <dependency><groupId>org…

全国产EtherCAT运动控制边缘控制器(六):RtBasic文件下载与连续轨迹加工的Python+Qt开发

今天&#xff0c;正运动小助手给大家分享一下全国产EtherCAT运动控制边缘控制器ZMC432H如何使用PythonQT实现连续轨迹加工。 01 功能简介 全国产EtherCAT运动控制边缘控制器ZMC432H是正运动的一款软硬件全国产自主可控&#xff0c;运动控制接口兼容EtherCAT总线和脉冲型的独立…

【WinForm详细教程五】WinForm中的MenuStrip 、ContextMenuStrip 、ToolStrip、StatusStrip控件

文章目录 1.MenuStrip2.ContextMenuStrip3.ToolStrip4.StatusStrip 1.MenuStrip MenuStrip作为一个容器可以包含多个菜单项。MenuStrip 的重要属性包括&#xff1a; Name&#xff1a;菜单的名字Dock&#xff1a;菜单的停靠位置Items&#xff1a;菜单项的集合 ToolStripMenuI…

华为云服务器,在线安装MySQL

需求 在华为云服务器上&#xff0c;部署MySQL数据库&#xff0c;通过 公网IP 访问数据库。 通过 yum &#xff0c;在线安装MySQL&#xff1b;配置远程连接&#xff0c;开放3306端口&#xff0c;能够通过公网访问。 云服务器配置说明 本文所使用的 华为云服务器 配置如下。 …

C++进阶语法——STL 标准模板库(上)(Standard Template Library)【学习笔记(六)】

文章目录 STL 标准模板库1、 STL简介2、STL容器的类别3、STL迭代器的类别4、STL算法的类别5、泛型编程&#xff08;generic programming&#xff09;6、C模板&#xff08;template&#xff09;6.1 函数模板&#xff08;function template&#xff09;6.2 类模板&#xff08;cla…

20231102从头开始配置cv180zb的编译环境(欢迎入坑,肯定还有很多问题等着你)

20231102从头开始配置cv180zb的编译环境&#xff08;欢迎入坑&#xff0c;肯定还有很多问题等着你&#xff09; 2023/11/2 11:31 &#xff08;欢迎入坑&#xff0c;本篇只是针对官方的文档整理的&#xff01;只装这些东西你肯定编译不过的&#xff0c;还有很多问题等着你呢&…

3.字符集和比较规则简介

3.字符集和比较规则简介 1.字符集和比较规则简介1.1 字符集简介1.2 比较规则简介1.3 一些重要的比较规则 2. MySQL 中支持的字符集和比较规则2.1 MySQL 的 utf8 和 utf8mb42.2 字符集查看2.3 比较规则查看 3. 字符集和比较规则的应用3.1 各级别的字符集和比较规则1. 服务器级别…

AR眼镜定制开发-智能眼镜的主板硬件、软件

AR眼镜定制开发是一项复杂而又重要的工作&#xff0c;它需要准备相关的硬件设备和软件。这些设备包括多个传感器、显示装置和处理器等。传感器用于捕捉用户的动作和环境信息&#xff0c;如摄像头、陀螺仪、加速度计等;显示装置则用于将虚拟信息呈现给用户;处理器用于处理和协调…

京东科技埋点数据治理和平台建设实践 | 京东云技术团队

导读 本文核心内容聚焦为什么要埋点治理、埋点治理的方法论和实践、奇点一站式埋点管理平台的建设和创新功能。读者可以从全局角度深入了解埋点、埋点治理的整体思路和实践方法&#xff0c;落地的埋点工具和创新功能都有较高的实用参考价值。遵循埋点治理的方法论&#xff0c;…

Web - Servlet详解

目录 前言 一 . Servlet简介 1.1 动态资源和静态资源 1.2 Servlet简介 二 . Servlet开发流程 2.1 目标 2.2 开发过程 三 . Servlet注解方式配置 ​编辑 四 . servlet生命周期 4.1 生命周期简介 4.2 生命周期测试 4.3 生命周期总结 五 . servlet继承结构 5.1 ser…

Content-Type 值有哪些?

1、application/x-www-form-urlencoded 最常见 POST 提交数据的方式。 浏览器的原生 form 表单&#xff0c;如果不设置 enctype 属性&#xff0c;那么最终就会以 application/x-www-form-urlencoded 方式提交数据。 <form action"http://www.haha/ads/sds?name小草莓…

Jmeter调用测试片段 —— 模块控制器

可以使用模块控制器调用测试片段。模块控制器提供了一种在运行时将测试片段替换为当前测试计划的机制。测试片段可以位于任何线程组中。 1、打开一个Jmeter窗口&#xff0c;添加好线程组、用户定义变量、模块控制器、测试片段、察看结果树。 2、用户定义变量同样定义好访问ip及…

NI-9236 国产化10 kS/s/ch,350 Ω四分之一桥应变计,8通道C系列应变/桥输入模块

10 kS/s/ch&#xff0c;350 Ω四分之一桥应变计&#xff0c;8通道C系列应变/桥输入模块 NI‑9236可同步测量所有通道的动态应变&#xff0c;从而实现了高速同步测量。 该功能对于需要在特定时刻对多个通道进行比较的应用&#xff08;例如冲击测试&#xff09;非常重要。\n\nNI…

SSM校园设备管信息管理系统开发mysql数据库web结构java编程计算机网页源码eclipse项目

选题理由 随着计算机网络及多媒体技术的广泛应用&#xff0c;互联网已成为高校办学的基础设施和必备条件&#xff0c;基于互联网的高校信息管理越来越综合化&#xff0c;越来越多的教学管理、行政管理工作将架构在互联网上&#xff0c;互联网正在变为学校实施教学、科研和管理…

arcgispro中机器学习部分

参考链接 arcgis.learn 模块 |ArcGIS API for Python arcgis包位置 安装路径\GeoScene\Pro\bin\Python\envs\arcgispro-py3\Lib\site-package\arcgis 以automl进行训练工具为例&#xff0c;工具导入模块中涉及机器学习的模块 该模块所在位置 安装路径\GeoScene\Pro\bin\Py…