【Redis】Redis安装教程&基本操作语法-CSDN博客

一、Redis简介

1.1.什么是Redis

Redis是一个开源的内存数据结构存储系统它可以用作数据库、缓存和消息代理。它支持多种类型的数据结构如字符串、哈希表、列表、集合和有序集合并提供了丰富的操作命令来对这些数据进行读写操作。Redis具有高性能、高可用性和扩展性并且它的数据存储在内存中因此访问速度非常快。此外Redis还提供了持久化机制可以将数据存储到磁盘上以防止数据丢失。由于其灵活性和易用性Redis被广泛应用于各种场景包括缓存加速、实时分析、排行榜、消息队列等。

1.2.Redis与传统数据库的区别主要

Redis与传统数据库的区别主要体现在以下几个方面

数据存储方式传统数据库通常将数据存储在硬盘上而Redis将数据存储在内存中。这使得Redis具有更快的读写速度和响应时间适用于需要高性能的场景。

数据模型传统数据库一般采用关系型数据模型使用表格来组织数据。而Redis使用键值对的方式存储数据支持多种数据结构如字符串、哈希表、列表、集合和有序集合等。这使得Redis更加灵活可以根据不同的需求选择合适的数据结构进行存储。

持久化机制传统数据库通常通过将数据写入磁盘实现持久化以防止数据丢失。Redis也提供了持久化机制但默认情况下是将数据存储在内存中。可以根据需求选择不同的持久化方式如快照snapshotting和日志append-only file以确保数据的安全性和可恢复性。

扩展性传统数据库在处理大规模数据和高并发访问时可能会遇到性能瓶颈。而Redis具有良好的可扩展性可以通过搭建主从复制、集群等方式来实现水平扩展从而满足高并发和大规模数据处理的需求。

总的来说Redis相对于传统数据库具有更高的性能、更灵活的数据模型和更好的扩展性适用于许多特定的应用场景如缓存加速、实时计算、消息队列等。然而由于Redis将数据存储在内存中所以相对于传统数据库来说它对内存的使用要求更高且不适合作为主要的持久化数据存储解决方案。

二、Linux安装Redis

2.1.安装Redis

在这里插入图片描述

2.2.解压安装包

tar -zxvf redis-5.0.0.tar.gz -C /usr/local/
在这里插入图片描述

2.3.解压后执行安装gcc

yum install gcc

2.4.编译Redis

进入解压后的文件夹执行编译Redis输入make && make install即可

make && make install

2.5.修改Redis为守护进程

1.什么是守护进程
守护进程就是我们启动Redis之后还能输入命令如果我们不设置守护进程你就会发行我们启动Redis之后无法输入其他的命令了直接卡在Redis界面这样是不符合我们的开发要求的。

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

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

在这里插入图片描述

2.6.启动Redis服务

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

/src/redis-server redis.conf

我们设置了守护模式之后无法直观的知道我们是否启动redis则通过查看是否能够连接本地客户端来验证

./src/redis-cli

2.7.配置密码且外部连接

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

修改redis.conf注文件中的内容注释掉bind 127.0.0.1这行语句并修改requirepass 123456
在这里插入图片描述

在这里插入图片描述

2.8.重启服务器

首先kill -9 进程pid 关闭启动的进程ip

./src/redis-server redis.conf

2.9.开放Redis端口号

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

firewall-cmd --reload

2.10.redismanagerl连接测试

在这里插入图片描述

三、Windos安装Redis

3.1.解压安装包

在这里插入图片描述

3.2.编写bat启动文件

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

3.3.双击bat文件

在这里插入图片描述

3.4连接测试

在这里插入图片描述

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

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

4.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.4.Redis集合Set

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

# sadd key value1 [value2]                #向集合添加一个或多个元素
sadd hobby lanqiu zuqiu bingpangqiu zhuoqiu
 
 
 
# scard key                               #获取集合中的元素数量
scard hobby
 
 
 
# exists key                              #是否存在
exists hobby
阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: redis