Redis单机存储怎么搞,简单点儿不复杂的那种用法分享
- 问答
- 2025-12-23 15:43:21
- 4
先搞清楚Redis是干啥的
你可以把Redis理解成一个放在内存里的“超级大Map”(或者叫字典),我们平时写程序用的Map,比如Java的HashMap,Python的dict,一旦程序重启,里面的数据就全没了,而Redis呢,它自己是一个独立运行的程序,专门负责在内存里存这种“键值对”数据,你的应用程序可以通过网络去访问它,对它进行增删改查。
因为它把数据放在内存里,所以速度飞快,读个数据、写个数据基本都是毫秒甚至微秒级别,它也会通过一些策略把数据写到硬盘上,防止重启后数据丢失(这个后面会细说),它的核心作用就是:当你的应用需要极快的读写速度,并且数据可以暂时放在内存里时,就用它,比如缓存用户会话(Session)、存储热门文章、计数(文章阅读量、点赞数)、排行榜等等。
最简单的安装和启动(来源:Redis官网)
对个人学习或者小项目来说,最省事的方法就是用包管理工具安装。
- 在Mac上:用Homebrew,打开终端,一行命令:
brew install redis,安装完后,用redis-server命令就能启动Redis服务器。 - 在Ubuntu/CentOS等Linux上:用apt或yum,比如
sudo apt update && sudo apt install redis-server,安装后通常会自动启动,并设置为开机自启。 - 在Windows上:微软官方没有直接支持,但有个叫“Redis on Windows”的移植版本,或者更推荐的是用WSL(Windows Subsystem for Linux)来安装,跟在Ubuntu上一样。
启动后,你会看到一个控制台界面,显示Redis的logo和端口号(默认是6379),这就说明它已经在你的电脑上跑起来了,别关这个窗口,关了服务就停了。
最基本的操作(来源:Redis命令参考)

Redis有自己的命令,我们通过一个叫redis-cli的命令行工具来操作它(安装Redis时这个工具也一起装好了),你打开另一个终端窗口,输入redis-cli,就进入了和Redis交互的界面。
最核心的五个命令,记下它们就能干大部分简单的事了:
-
SET:存数据 语法:
SET key value例子:SET username "张三"解释:这就把“张三”这个值,用“username”这个键存起来了,就像Map里的map.put("username", "张三")。 -
GET:取数据 语法:
GET key例子:GET username解释:这会返回“张三”,如果key不存在,返回(nil)。 -
DEL:删数据 语法:
DEL key例子:DEL username解释:把“username”和它对应的值从Redis里删掉。 -
EXPIRE:设置过期时间 这是Redis一个特别实用的功能,你可以给一个key设置一个存活时间,比如验证码5分钟后失效。 语法:
EXPIRE key seconds例子:先SET verification_code "123456",然后EXPIRE verification_code 300,这样“123456”这个验证码在300秒(5分钟)后会自动被Redis删除。
-
KEYS:查找key(主要用于调试) 语法:
KEYS pattern例子:KEYS user*会找出所有以“user”开头的key。 注意:在生产环境慎用这个命令,如果key特别多,这个操作可能会卡住Redis,平时自己测试玩玩没问题。
数据怎么持久化(防止重启丢数据)
这是关键问题,Redis数据在内存里,断电就没了,所以得想办法存到硬盘上,Redis提供了两种主要的“持久化”策略,选一种适合你的就行:
-
RDB(快照模式):这是最简单省心的方式,推荐新手用这个。
- 干啥的:就像给Redis的内存数据拍一张完整的照片(快照),然后把这张照片存成一个叫
dump.rdb的文件放在硬盘上。 - 怎么触发:你可以配置让Redis每隔一段时间自动拍一张快照,900秒内至少有1个key被修改”就拍一次,或者“300秒内至少有10个key被修改”就拍一次,这些规则都在Redis的配置文件
redis.conf里设置。 - 优点:恢复数据快(直接读入整个文件到内存),文件体积小,是压缩过的。
- 缺点:可能会丢数据,比如你设置5分钟拍一次,那如果服务器在拍照后第4分钟宕机,这4分钟内的新数据就没了。
- 干啥的:就像给Redis的内存数据拍一张完整的照片(快照),然后把这张照片存成一个叫
-
AOF(日志模式):更安全,但稍微复杂点。
- 干啥的:不拍照了,而是把每一次写操作命令(比如SET, DEL)都记录到一个日志文件里。
- 怎么工作:当Redis重启时,它会把这个日志文件里的命令从头到尾重新执行一遍,这样内存数据就重建了。
- 优点:数据安全得多,你可以配置成每秒同步一次日志,这样最多丢1秒的数据,甚至可以配置成每次写命令都同步,这样基本不丢数据,但速度会慢点。
- 缺点:日志文件会比RDB文件大,恢复数据的速度慢(因为要重新执行所有命令)。
给你的建议:刚开始玩,就在redis.conf文件里把RDB配置打开(默认就是开的),用默认的规则就行,这样既简单,又能保证在大多数意外情况下,你只损失几分钟的数据,对于缓存这类场景完全能接受。

在你的程序里怎么用
你得用Redis的客户端库来连接和操作,几乎所有编程语言都有,比如在Python里,有个很流行的库叫redis-py。
安装:pip install redis
代码示例:
import redis
# 连接到本地的Redis服务器,默认端口6379
r = redis.Redis(host='localhost', port=6379, db=0)
# 存数据
r.set('my_key', 'Hello, Redis!')
# 取数据
value = r.get('my_key')
print(value.decode('utf-8')) # 输出:Hello, Redis!
# 设置带过期时间的key
r.setex('temp_data', 60, 'This will expire in 60 seconds')
就这么简单,跟你用字典差不多,只不过这个“字典”是独立于你程序之外的,所有程序都能来访问,而且速度快得飞起。
总结一下:
单机Redis就这么回事:安装好服务并启动 -> 用SET/GET/DEL等基本命令操作内存里的键值对 -> 配置好RDB持久化防止数据全丢 -> 在你的代码里用客户端库连接上去用,先把这个流程跑通,用它来解决一些实际的小问题(比如做个简单的页面缓存),你就已经掌握Redis最核心、最实用的部分了,等以后业务真的大到一台机器装不下,再去研究集群那些高级玩意儿也不迟。
本文由太叔访天于2025-12-23发表在笙亿网络策划,如有疑问,请联系我们。
本文链接:https://haoid.cn/wenda/66996.html
