您现在的位置是:首页 > 正文

【Redis】安装(Linux&window)及Redis的常用命令

2023-11-06 15:35:26阅读 12

一,Redis简介

       Redis是一个开源(BSD许可),内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理。
   它支持字符串、哈希表、列表、集合、有序集合,位图,hyperloglogs等数据类型。内置复制、Lua脚本、LRU收回、事务以及不同级别磁盘持久化功能

想更多学习,可以参考官网:

  学习网址:https://www.w3cschool.cn/redis/
                    www.redis.cn
                    www.redis.net.cn

   相关下载信息:
   redis-5.0.0.tar.gz(linux)
   Redis-x64-3.2.100.msi(window安装版)
   Redis-x64-3.2.100.zip(window解压版)

二,Redis安装

1 将下载的Redis放置到服务器

   如下

2.解压redis


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

3.安装gcc


命令:yum install gcc

4.编译redis


先进入redis文件夹中

命令:cd /redis-5.0.0
下载编译文件命令:make

5 检测安装情况


命令:make install

查看是否安装redis成功:进入 ./scr/redis -server redis.conf 

出现像千层蛋糕一样的图像,就已经安装成功了。

但是出现之后,下面不能再使用命令操作,我们还需要更改文件才能继续用命令操作,看下面步骤。

先按住Ctrl+c即可退出来这个界面

6.修改redis.conf文件

输入vim redis.conf 进入该conf文件

修改redis.conf文件将daemonize no 改为 daemonize yes

这时我们如何使用快速定位语句,帮助我们快速定位呢?方法就是:
/你要定位的东西,例如这里我们将daemonize no 改为 daemonize yes,那小编输入/daemonize即可快速定位,修改之后保存退出。:wq

 7 启动redis

首先我们启动的时候一定注意自己的命令所在位置,我们要执行的是src下的./redis-server,但是我们后面要加上得redis.conf确实和src同级目录下的所以这里必须注意

/src/redis-server redis.conf

8 测试redis启动是否成功

./redis-cli


ping

9 关闭掉已经启动的redis服务

查看进程号

lsof -i:6379

lsof -i:6379

关闭进程

命令:lsof -9 59791

 10 配置密码且外部连接

执行完第六步我们会发现我们连接Redis不要密码!且只能本地连接外部连接连接不上,所以我们需要继续配置。

修改redis.conf注文件中的内容:注释掉bind 127.0.0.1这行语句并修改requirepass 123456  修改完毕之后按ESC并输入 :wq 保存退出 

11 重启redis服务

刷新防火墙

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

重新启动redis服务.

/src/redis-server redis.conf

12 redismanagerl连接测试

Linux连接

在主机中,打开数据库(RedisDesktopManager)进行连接Redis

RedisDesktopManager数据库的下载:
https://docs.redisdesktop.com/en/2019/install/

( 下载后,可能需要解压,之后就是傻瓜式安装即可 )
 

打开RedisDesktopManager,按下图步骤来

windows连接

在本地从官网下载Redis-x64-3.2.100资源包进行解压,然后进入解压后的文件,

将redis.windows.conf文件进行修改

在bind 127.0.0.1的前面加一个# 进行注释

并且将后面的密码修改为自己的密码,我这里设置 123456

根上面写的Redis安装第十步是一样的步骤

再创建一个文件,名为 : redis.bat  (文件名不管取什么后缀名要带.bat)

选中该文件并编辑内容为 : 

cd Redis-x64-3.2.100
redis-server redis.windows.conf

将该文件放入解压后的文件中,之后双击开启文件,会有个黑窗口,不用关掉,要不然前端就连接不到了

最后打开 RedisDesktopManager数据库,并连接。

到这里我们的Linux及windows安装Redis就全部完成了!!! 

三,Redis常用命令

3.1.Redis字符串(String)

# set key          //保存
set name zs
set age 12
set sex nan

# get key          //获取
get name

# type key         //查看类型

#type age            //string 说明type返回的是键值对存储类型,而不是值存储类型

# keys *或keys key //查看所有或者指定的key
keys *

# SETEX KEY_NAME TIMEOUT VALUE    // 给键值对设置过期时间
setex zs 60 live

# ttl key    // 获取键值对剩余的存活时间
ttl zs

3.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

3.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开始,同时先进后出

3.4 Redis集合(Set)

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

# sadd key value1 [value2]                #向集合添加一个或多个元素
sadd hobby lanqiu zuqiu bingpangqiu zhuoqiu

# scard key                               #获取集合中的元素数量
scard hobby

# exists key                              #是否存在
exists hobby

文章来源:https://blog.csdn.net/m0_73192864/article/details/134186079
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:https://www.dflian.com/955.html

网站文章

  • 【C++】设计模式:prototype 原型模式

    【代码】【C++】设计模式:prototype 原型模式。

    2023-11-06 15:35:23
  • Vulnhub-drippingblues

    Vulnhub-drippingblues

    不过FTP服务器比较麻烦一些,因为FTP服务器使用了两个连接,分别是命令通道与数据通道。Tcp/ip协议中,FTP标准命令TCP端口号为21,Port方式数据端口为20。Ftp协议的任务是从一台计算机...

    2023-11-06 15:35:19
  • 【Linux】Linux入门学习之常用命令一

    【Linux】Linux入门学习之常用命令一

    Linux的常用命令什么是Linux?有哪些Linux内核的操作系统 ?Linux的目录结构Linux命令使用MobaXterm backup工具

    2023-11-06 15:35:15
  • 指针的初阶

    指针的初阶

    这一次是对指针的初步认识,指针的内容还有一大块需要我们去开掘,小编之后还会继续完善指针的内容,大家一起努力吧!比如: char* 的指针解引用就只能访问一个字节,而 int* 的指针的解引用就能访问四...

    2023-11-06 15:35:10
  • xshell ssh连接linux时提示ssh服务器拒绝了密码

    xshell ssh连接linux时提示ssh服务器拒绝了密码

    xshell ssh连接linux时提示ssh服务器拒绝了密码

    2023-11-06 15:35:07
  • Go 异步任务

    Go 异步任务

    异步任务在开发中很常见,用来做解耦。本文介绍一下异步队列的实现的几个问题,并且结合三方库实现来分析。带着上面的问题,对比https://github.com/golang-queue/queue的实现,说明一下。

    2023-11-06 15:35:00
  • 【web前端】web前端设计入门到实战第一弹——html基础精华

    【web前端】web前端设计入门到实战第一弹——html基础精华

    一:图片属性 二:音频标签 三: 视频标签 四:链接标签 五:列表标签 5.1.无序列表 5.2.有序列表 5.3.自定义列表 六:表格 6.1合并单元格 七:input标签 八:select系列 九: 文本域标签 十:label标签十一:语义化标签 十二:字符实体

    2023-11-06 15:34:57
  • SpringBoot如何自动生成实体类和Dao层以及映射文件

    SpringBoot如何自动生成实体类和Dao层以及映射文件 一、首先添加自动生成代码插件 org.mybatis.generator ...

    2023-11-06 15:34:51
  • Java中的接口和抽象类有什么区别?

    Java中的接口和抽象类有什么区别?

    接口和抽象类是 Java 面向对象设计的两个基础机制。接口是对行为的抽象,它是抽象方法的集合,利用接口可以达到 API 定义和实现分离的目的。接口,不能实例化;不能包含任何非常量成员,任何 field...

    2023-11-06 15:34:45
  • Java的日期与时间java.time.Duration的简介说明

    Java的日期与时间java.time.Duration的简介说明

    2023-11-06 15:34:41