【服务器】Redis的安装及使用命令(Linux、Windows版)

目录

一、Redis简介

二、Redis安装

1、Linux版

1.1、下载

1.2、导入

1.3、解压

1.4、安装

1.5、修改文件

1.6、启动redis

1.7、测试

1.8、结束进程

1.9、修改密码访问

1.10、安装客户端工具&连接

2、Windows版

2.1、下载

2.2、安装

2.3、修改

2.4、连接

三、Redis命令

1、相关命令

2、常用命令

2.1、五大字符串(string)

2.2、Redis哈希(Hash)

2.3、Redis列表(List)

2.4、Redis集合(Set)


一、Redis简介

Redis(Remote Dictionary Server)是一个开源(BSD许可)的、基于内存的数据结构存储系统,它可以用作数据库、缓存和消息中间件。Redis支持多种数据结构,包括字符串、哈希表、列表、集合、有序集合等,这些数据结构可以通过丰富的命令集进行操作。

与传统数据库系统相比,Redis具有较高的性能和可扩展性。它将数据存储在内存中,因此可以实现很低的读写延迟,并能够处理高并发的请求。此外,Redis还支持数据的持久化,可以将内存中的数据定期保存到磁盘上,以防止数据丢失。

Redis还具有一些其他的特性,如发布订阅机制、事务支持、键过期等。它还提供了一些附加功能,如实时统计数据、分布式锁等,使得它在各种应用场景中都得到广泛应用。

总而言之,言而总之,Redis是一个高性能、灵活且易于使用的数据存储系统,适用于需要快速读写操作和高并发访问的场景,比如缓存、会话管理、消息队列等。

二、Redis安装

1、Linux版

1.1、下载

首选找到我们的官网进行版本选中下载 |雷迪斯 (redis.io)。

1.2、导入

打开Linux系统我们把安装包导入进去。

1.3、解压

解压到我们的redis

命令:tar -xvf redis-5.0.0.tar.gz

1.4、安装

进入解压好的文件里面进行安装。安装:make

等待安装完成,我们检测安装情况:make install

1.5、修改文件

修改redis.conf文件,在修改文件之前我们先进行一个备份,防止更改错误:cp redis.conf redis_bak.conf

修改redis.conf命令:vim redis.conf

daemonize no 改为 daemonize yes

1.6、启动redis

启动我们的redis :./src/redis-server redis.conf

再查看我们的redis端口启动没有:lsof -i:6379

如图我们是已经开启了

1.7、测试

测试redis启动是否成功

命令:./redis-cli
命令:ping

1.8、结束进程

使用命令:kill -9  PID 结束进程

1.9、修改密码访问

以上为无密码链接,修改为有密码,并且进行外部访问

修改redis.conf吻技安

注释bind 127.0.0.1

修改requirepass 123456

设置端口之前记得确保防火墙是开启状态

命令1:firewall-cmd --zone=public --add-port=6379/tcp --permanent
命令2:firewall-cmd --reload && firewall-cmd --list-port

重新连接

  1. 重启:./src/redis-server redis.conf
  2. 查看是否开启端口:lsof -i:6379
  3. 登录:./src/redis-cli -h 127.0.0.1 -p 6379 -a 123456
    1. -h:host     主机
    2. -p:prot     端口号
    3. -a:authentication      权限密码
  4. 命令:ping

1.10、安装客户端工具&连接

在主机安装客户端工具RedisInsight | The Best Redis GUI。进行下载安装.

2、Windows版

2.1、下载

首选找到我们的官网进行版本选中下载 |雷迪斯 (redis.io)。

2.2、安装

解压下载文件,编写文件把一下代码放进去更改后缀为bat文件

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

双击bat文件

安装完成

2.3、修改

修改redis.windows.conf文件

注释bind 127.0.0.1

修改requirepass 123456

2.4、连接

三、Redis命令

1、相关命令

ping : 检测连接是否存活
echo: 在命令行打印一些内容
quit、exit: 退出客户端
shutdown: 退出服务器端
info: 返回redis相关信息
config get dir/* 实时传递接收的请求
showlog: 显示慢查询
select n: 切换到数据库n,redis默认有16个数据库(DB 0~DB 15),默认使用的第0个
dbsize: 查看当前数据库大小
move key n: 不同数据库之间数据是不能互通的,move移动键到指定数据库
flushdb: 清空当前数据库中的键值对。
flushall: 清空所有数据库的键值对。

2、常用命令

2.1、五大字符串(string)

  • set key value: 设置一个key的value值
  • setnx key value: 仅当key不存在时进行set
  • setex key seconds value: set 键值对并设置过期时间
  • mset key value [key value …] 设置多个key value
  • msetnx key1 value1 [key2 value2…] 批量设置键值对,仅当参数中所有的key都不存在时执行,原子性操作,一起成功,一起失败
  • get key: 返回key的value
  • mget key [key …] 批量获取多个key保存的值
  • exists key [key …]: 查询一个key是否存在
  • decr/incr key: 将指定key的value数值进行+1/-1(仅对于数字)
  • incrby/decrbyB key n: 按指定的步长对数值进行加减
  • incrbyfloat key n: 为数值加上浮点型数值
  • append key value: 向指定的key的value后追加字符串
  • strlen key: 返回key的string类型value的长度。
  • getset key value: 设置一个key的value,并获取设置前的值,如果不存在则返回null
  • setrange key offset value: 设置指定位置的字符
  • getrange key start end: 获取存储在key上的值的一个子字符串
  • type key:string 说明type返回的是键值对存储类型,而不是值存储类型

2.2、Redis哈希(Hash)

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

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

2.3、Redis列表(List)

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

# lpush key value1 value2 value3          #将一个或多个值插入到列表头部
lpush en a b c d e f g# llen key                                #获取列表的长度
llen en# lindex key index                        #根据索引获取列表中的元素
lindex en 1     #返回f,说明下标从0开始,同时先进后出# lrange key start sop                    #查看指定范围内的元素
lrange en 1 3    #返回fed,说明下标从0开始,同时先进后出

2.4、Redis集合(Set)

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

# sadd key value1 [value2]                #向集合添加一个或多个元素
sadd hobby lanqiu zuqiu bingpangqiu zhuoqiu# scard key                               #获取集合中的元素数量
scard hobby# exists key                              #是否存在
exists hobby


 

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

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

相关文章

卷麻了,00后测试用例写的比我还好,简直无地自容......

经常看到无论是刚入职场的新人,还是工作了一段时间的老人,都会对编写测试用例感到困扰?例如: 如何编写测试用例? 作为一个测试新人,刚开始接触测试,对于怎么写测试用例很是头疼,无法…

【从删库到跑路】详解MySQL数据库的视图以及相关操作

🎊专栏【MySQL】 🍔喜欢的诗句:更喜岷山千里雪 三军过后尽开颜。 🎆音乐分享【如愿】 🥰欢迎并且感谢大家指出小吉的问题 文章目录 🎄视图介绍🎄视图特点🌺基本操作⭐创建视图⭐查询…

MIT6.5830 Lab1-GoDB实验记录(二)

MIT6.5830 Lab1-GoDB实验记录(二) – WhiteNights Site 标签:Golang, 数据库 接下来我们将完成tuple.go的缺失代码,并通过tuple_test.go的测试。 实验步骤 观察tuple.go 观察肯定是第一步,先打开tuple.go。 快300行代…

requires SDK version >=3.0.1 <4.0.0, version solving failed

这个很明显是FLUTTER SDK不匹配的问题,需要更新flutter SDK,最简单的办法,在flutter官网的页面直接下载最新的,然后替换之前旧版本的flutter 官网: 在 Windows 操作系统上安装和配置 Flutter 开发环境 - Flutter 中文…

基于GPIO子系统的LED驱动程序

这两个系统属于软件层,让我们不用直接对硬件配置,一般由芯片出产商写好,我们只要基于它们改就行。 设备树操作 1.使用官方的工具来编写pinctrl设置gpio的设备树代码。 如图,生成代码 ![在这里插入图片描述](https://img-blog.cs…

比亚迪今年的薪资。。

大家或许已经对比亚迪在西安的宣讲会有所耳闻,那场面真的是座无虚席。如果你稍微迟到了一些,那么你可能只能在门外或是走廊听了。 事实上,许多人早早地抵达了,只要稍微晚到,就可能错过了室内的位置。 更令人震惊的是&…

HCIA数据通信——静态路由

之前的文章中我提到过静态路由: 数据通信——网络层(路由器以及数据转发流程)_路由器如何转发数据_咕噜跳的博客-CSDN博客这里只做一些简单描述。 路由器关注的是网络之间的通信。路由器以自身为中心,考虑的是如何将数据发送到目…

优维产品最佳实践第13期:如何避免拨测机自身网络问题?

受限于拨测节点自身的环境,单一节点的拨测结果可能并不能反映出监控实例的真实运行状态 本期EasyOps产品使用最佳实践,我们将为您揭晓: 如何基于多点决策配置拨测监控,以避免拨测机自身网络问题而误告警? 如何对指标…

Paddle炼丹炉炸了Unexpected BUS error encountered in DataLoader worker

Paddle训练报错,内存不足 python train.py -c config/ResNet_W18.yaml修改配置文件config/ResNet_W18.yaml # 原配置 loader:num_workers: 4use_shared_memory: True# 修改后 loader:num_workers: 2use_shared_memory: False

基于GB28181-2022实现web无插件播放H265视频

目前发布的GB28181-2022增加了对前端设备视频H265编码格式的支持,所以实现国标平台通过浏览器对H265视频流的无插件的解码播放将是未来的趋势。 目前大多的方案都是通过平台端把H265转码为H264,再推送到web前端进行解码播放,这种方式因为需要…

MAA连不上MUMU模拟器

之前一直能正常用,最近突然连接不上,最终发现是adb版本不同造成的,我系统变量的adb版本如下: MUMU自带adb版本如下: 解决办法: 把mumu的adb复制到系统变量路径下,或者把adb的系统变量删除

小红书协议算法最新版

如果您想通过学习来了解小红书的点赞、关注、私信等功能的实现,以下是一些一般性的思路和示例代码,供您学习参考: 1. 点赞功能: - 后端实现:在后端,您可以创建一个用于存储用户点赞信息的数据库表。对于每…

STM32-创建项目流程

一、基于STM官网得库进行开发 准备工作:下载STM库文件 1、创建项目文件夹 2、在keil 中new uVision project,然后选择刚刚创建得文件夹,在文件夹里面创建一个文件,用来存放这个项目,然后在文件夹里面,写个文件名&am…

基于机器视觉的银行卡识别系统 - opencv python 计算机竞赛

1 前言 🔥 优质竞赛项目系列,今天要分享的是 基于深度学习的银行卡识别算法设计 该项目较为新颖,适合作为竞赛课题方向,学长非常推荐! 🧿 更多资料, 项目分享: https://gitee.com/dancheng…

在基于亚马逊云科技的湖仓一体架构上构建数据血缘的探索和实践

背景介绍 随着大数据技术的进步,企业和组织越来越依赖数据驱动的决策。数据的质量、来源及其流动性因此显得非常关键。数据血缘分析为我们提供了一种追踪数据从起点到终点的方法,有助于理解数据如何被转换和消费,同时对数据治理和合规性起到关…

HarmonyOS(二)—— 初识ArkTS开发语言(上)之TypeScript入门

前言 Mozilla创造了JS,Microsoft创建了TS,而Huawei进一步推出了ArkTS。因此在学习使用ArkTS前,需要掌握基本的TS开发技能。 ArkTS介绍 ArkTS是HarmonyOS优选的主力应用开发语言。它在TypeScript(简称TS)的基础上&am…

奇富科技引领大数据调度革命:高效、稳定、实时诊断

日前,在世界最大的开源基金会 Apache旗下最为活跃的项目之一DolphinScheduler组织的分享活动上,奇富科技的数据平台专家刘坤元应邀为国内外技术工作者献上一场题为《Apache DolphinScheduler在奇富科技的优化实践》的精彩分享,为大数据任务调…

历年网规上午真题笔记(2015年)

解析: 变更控制为“问题识别”——“问题分析与变更描述”——“变更分析与成本计算”——“变更实现”——“修改后的需求” 自动化工具能够帮助变更控制过程更有效地运作,能有效收集、存储、管理变更,工具应该具备的特征如下: 可定义变更请求中的数据可定义变更请求生命…

云原生环境下JAVA应用容器JVM内存如何配置?—— 筑梦之路

Docker环境下的JVM参数非定值配置 —— 筑梦之路_docker jvm设置-CSDN博客 之前简单地记录过一篇,这里在之前的基础上更加细化一下。 场景说明 使用Java开发且设置的JVM堆空间过小时,程序会出现系统内存不足OOM(Out of Memory)的…

基于SSM的餐饮掌上设备点餐系统

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:Vue 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目:是 目录…