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

前言

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:异步保存数据到硬盘。
相关推荐
深蓝海拓6 分钟前
Pyside6(PyQT5)中的QTableView与QSqlQueryModel、QSqlTableModel的联合使用
数据库·python·qt·pyqt
幻想编织者29 分钟前
Ubuntu实时核编译安装与NVIDIA驱动安装教程(ubuntu 22.04,20.04)
linux·服务器·ubuntu·nvidia
利刃大大1 小时前
【Linux入门】2w字详解yum、vim、gcc/g++、gdb、makefile以及进度条小程序
linux·c语言·vim·makefile·gdb·gcc
呼啦啦啦啦啦啦啦啦1 小时前
【Redis】持久化机制
java·redis·mybatis
C嘎嘎嵌入式开发1 小时前
什么是僵尸进程
服务器·数据库·c++
Yeats_Liao3 小时前
Navicat 导出表结构后运行查询失败ERROR 1064 (42000): You have an error in your SQL syntax;
数据库·sql
明月看潮生4 小时前
青少年编程与数学 02-007 PostgreSQL数据库应用 15课题、备份与还原
数据库·青少年编程·postgresql·编程与数学
明月看潮生5 小时前
青少年编程与数学 02-007 PostgreSQL数据库应用 14课题、触发器的编写
数据库·青少年编程·postgresql·编程与数学
飞行的俊哥7 小时前
Linux 内核学习 3b - 和copilot 讨论pci设备的物理地址在内核空间和用户空间映射到虚拟地址的区别
linux·驱动开发·copilot
hunter2062069 小时前
ubuntu向一个pc主机通过web发送数据,pc端通过工具直接查看收到的数据
linux·前端·ubuntu