非关系型数据库Redis的安装【Linux】及常用命令

news/2024/10/21 3:36:21/

前言

 Redis(Remote Dictionary Server)是一种开源的内存数据库管理系统,它以键值存储方式来存储数据,并且支持多种数据结构,如字符串、哈希、列表、集合、有序集合等。Redis最初由Salvatore Sanfilippo开发,并于2009年首次发布。它被广泛用于缓存、会话管理、消息队列等应用,因为它具有非常快速的读取和写入速度,以及丰富的功能集

一.Redis的安装

百度网盘资源提取链接放在下方,包含Redis及后续使用的可视化工具

链接:https://pan.baidu.com/s/1XiGP2K5QnvfkVR92SUf97w 
提取码:YUCT

1.解压安装包

利用工具MobaXterm将资源安装包放到安装目录中,然后进入到当前安装目录中并执行以下命令进行安装

tar -zxvf redis-5.0.0.tar.gz -C /usr/local/

2.安装acc环境 

yum install gcc

 3.编译Redis

进入Redis目录:cd redis-5.0.0

编译:make

 4.检查安装情况

make install

 5.启动Redis服务

./src/redis-server redis.conf 

当出现以下界面时,说明安装完成了 

 退出命令

ctrl+c

6.配置守护线程 

6.1 备份配置文件

cp redis.conf  redis.conf.bak

 6.2 编辑配置文件

vim redis.conf

 找到daemonize配置选项,将后面的no修改为yes

点击i键进行修改,修改完成后点击Esc退出然后输入:wq保存并退出

修改后记得重启一下服务 

7.连接Redis

7.1 连接

./src/redis-cli

验证是否连接成功

ping 

当出现pong时说明连接成功 

 

7.2 查看端口状态

lsof -i:端口号

我们输入redis的端口号查看端口状态

lsof -i 6379
 

停止当前端口进程

 kill -9 进程id

 图中的17712就是我们的进程id

注意:在修改一些常用配置时,如果开启了服务和端口进程我们需要将端口和我们的进程停止,在修改后重新启动才可以生效

7.3 扩大客户端访问限制

 找到没有被注释的bind 127.0.0.1在前面加上#注释,解除连接限制

 7.4 设置Redis密码

接着,在当前文件中,找到requirepass

将前面的#删除,后面设置自己的密码 

 

最后保存并退出

8.开放6379端口

8.1 开放端口

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

 8.2 刷新防火墙规则

firewall-cmd --reload

9.连接客户端

利用命令连接客户端使用Redis

先开启服务

连接客户端

./src/redis-cli -h 127.0.0.1 -p 6379 -a 自己设置的密码

连接使用

 输入ping返回pong时说明连接成功

二.可视化工具

利用可视化工具在本机中连接Linux中的Redis,资源安装包已经放在顶部的网盘分享链接中,可以自行提取

1.创建连接

安装完成后点击下方创建与Redis的连接

根据要求填写好自己的ip地址和端口号以及自己的密码

 点击左下角的连接测试显示当前提示说明连接成功了

三.常用命令

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

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

4.Redis集合(Set)

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

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

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

# exists key                              #是否存在
exists hobby

5.其他操作

  • PING:测试连接是否存活。
  • SELECT index:切换到指定的数据库。
  • FLUSHDB:删除当前数据库中的所有键。
  • FLUSHALL:删除所有数据库中的所有键。
  • SAVE:同步保存数据到硬盘。
  • BGSAVE:异步保存数据到硬盘。

http://www.ppmy.cn/news/1192851.html

相关文章

PCI_PIN_Security_Requirements_Testing -PCI认证-安全行业基础篇4

PCI认证 PCI DSS(Payment Card Industry Data Security Standard)是由全球五大信用卡组织(Visa、MasterCard、American Express、Discover和JCB)共同制定的一套安全标准,旨在保护信用卡持卡人的数据安全。 PCI DSS标…

opencv在linux上调用usb摄像头进行拍照

功能 1.按照指定的文件名创建文件夹,创建之前判断该文件夹是否存在 2.调用摄像头按可调整窗口大小的方式显示 3.按esc退出摄像头画面 4.按p保存当前摄像头的画面,并按当前时间为照片的名字进行保存打开终端查看是否有摄像头 ls /dev/video*一般video1就…

个人职业规划

职业规划 软件体系结构 内容 组件 关系 视图 技术 抽象 封装 信息隐藏 模块化 事务分离 耦合和内聚 充分性、完整性和原始性 策略和实现的分离 接口和实现的分离 单一引用点 分而治之 结构 层 管道和过滤器 黑板 系统 分布式系统 代理者 交互式系统 …

uni-app 解决钉钉小程序日期组件uni-datetime-picker不兼容ios问题

最近在使用uni-app开发 钉钉小程序 ,遇到一个ios的兼容性问题 uni-datetime-picker 组件在模拟器上可以使用,在真机上不生效问题 文章目录 1. 不兼容的写法,uni-datetime-picker 不兼容IOS2. 兼容的写法,使用 dd.datePicker 实现。…

jenkins实践篇(2)—— 自动打tag的可回滚发布模式

大家好,我是蓝胖子,在上一篇我简单介绍了如何基于特定分支做自动编译和发布,在生产环境中,为了更加安全和快速回滚,我采取的是通过对代码打tag的方式来进行部署,下面我将详细介绍整个发布过程的逻辑。 发布…

Spring Boot Web MVC

文章目录 一、Spring Boot Web MVC 概念二、状态码三、其他注解四、响应操作 一、Spring Boot Web MVC 概念 Spring Web MVC 是⼀个 Web 框架,一开始就包含在Spring 框架里。 1. MVC 定义 软件⼯程中的⼀种软件架构设计模式,它把软件系统分为模型、视…

Linux驱动——并发与竞态

并发 并发指多个执行单元同时、并行被执行,而并发执行单元对共享资源(硬件资源和软件上的全局变量、静态变量等)的访问很容易导致竞态。 如下列AB写,C读,AB在写的过程中,C读的话就会出错。 对称多处理器…

✔ ★【备战实习(面经+项目+算法)】 11.2学习

✔ ★【备战实习(面经项目算法)】 坚持完成每天必做如何找到好工作1. 科学的学习方法(专注!效率!记忆!心流!)2. 每天认真完成必做项,踏实学习技术 认真完成每天必做&…