Redis 字符串(String)详解

1. 什么是字符串类型

在 Redis 中,字符串(String) 是最基本的数据类型。它可以包含任何数据,比如文本、JSON、甚至二进制数据(如图片的 Base64 编码),最大长度为 512 MB

字符串在 Redis 中不仅可用作简单的 key-value 存储,还可用于计数器、自增ID、缓存临时数据等多种应用场景。


2. 字符串的使用方式

最常见的用法是直接设置和获取:

|-----|---------------------------------------------------|
| 1 2 | SET user:1001:name "Alice" GET user:1001:name |

还可以将字符串作为数值使用:

|-----|---------------------------------------------------------------------|
| 1 2 | INCR views:article:123 ; 自增文章浏览次数 DECR stock:product:456 ; 自减库存 |


3. 字符串常用命令

命令 描述
SET key value 设置字符串值
GET key 获取字符串值
APPEND key value 向字符串末尾追加
INCR key / DECR key 整数递增/递减
INCRBYFLOAT key value 浮点数递增
GETRANGE key start end 获取子字符串
SETEX key seconds value 设置带过期时间的值
STRLEN key 获取字符串长度

4. 字符串的高级用法

  • 作为缓存使用
    配合过期时间(SETEXEXPIRE)实现自动失效机制。
  • 对象缓存
    将对象序列化为 JSON 存入字符串,再解析回来。
  • 分布式锁
    使用 SET resource_name unique_id NX PX 30000 实现互斥访问。

5. 使用注意事项

  • 键和值的大小控制:避免存储超大 JSON 对象,可将字段分拆为多个键。
  • 数值操作前类型检查 :确保值确实是数字,防止 INCR 报错。
  • 非文本数据需处理编码:如存图片、音频等需先编码再写入。

6. 参考资料

相关推荐
醉风塘2 分钟前
Oracle闪回技术深度解析:时间旅行者的数据库指南
数据库·oracle
IT·陈寒10 分钟前
零配置、开箱即用:seekdb 如何成为 AI 时代的“全能嵌入式数据库”? ——基于 OceanBase seekdb 的实践体验与 AI 开发思考
数据库·人工智能·oceanbase
AI_567838 分钟前
MySQL索引的B+树实战哲学
数据库·b树·mysql
大锦终1 小时前
【MySQL】视图+用户管理
数据库·mysql
一位代码1 小时前
mysql | 数据表中列(字段)的添加、修改和删除
数据库·mysql
水坚石青1 小时前
Java+Swing+Mysql实现物业管理系统
java·开发语言·数据库·mysql·swing
GanGuaGua1 小时前
MySQL:内置函数
数据库·mysql·oracle
一位代码1 小时前
mysql | limit 用法详解及注意事项
数据库·mysql
Li_7695321 小时前
Redis —— (四)
数据库·redis