Redis快速入门

Redis 是一个开源的、基于内存的键值对(Key-Value)数据库。它的特点是速度极快,常被用作缓存消息队列会话存储

Redis 快速入门

1. Redis安装

  • Windows

​ 推荐使用 WSL2 (Ubuntu) 安装sudo apt install redis 或者下载 Redis for Windows (不推荐官方已不再维护 Windows 版本)

  • Docker

    docker run --name my-redis -d -p 6379:6379 redis

    进入 Redis 命令行工具:

    docker exec -it my-redis redis-cli

2. 核心概念:键值对 (Key-Value)

Redis 类似于巨大的JSON对象或者Pyhon的字典。通过一个KEY来访问

3. 基础数据类型

redis-cli中执行命令

1. String

最基本类型,可以存储文字,数字等等

  • SET/GET:设置和获取值

    SET name tinsiag
    GET name
    #output: "tinsiag"
  • INCR/DECR:原子计数(并发高下非常有用,比如点赞数)

    SET views 665
    INCR views
    #output : (integer) 666
    DECR views
    #output : (integer) 665

2. List

双向链表。用于实现消息队列最新消息流

  • LPUSH/RPUSH:从左/右插入

  • LPOP/RPOP:从左/右弹出

  • LRANGE (name) (start index) (end index):查看某范围的内容

    #创建队列
    LPUSH friends "tinsiag"
    LPUSH friends "john"
    RPUSH friends "mike"
    #查询队列 
    LRANGE friends 0 -1
    #output: 1) "john" 2) "tinsiag" 3) "mike"
    #获取并移除最右边的元素
    RPOP friends
    #output:"mike"
    LRANGE friends 0 -1
    #output:1) "john" 2) "tinsiag"
    #获取并移除最左边的元素
    LPOP friends
    #output: "john"
    LRANGE friends 0 -1
    #output:1) "tinsiag"

3. Set(集合)

无序集合,自动去重。适合做标签系统或者共同好友计算

  • SADD:添加元素

  • SMEMBERS:查看所有元素

  • SREM:移除元素

    #添加元素
    SADD tags "tech" "news" "tech" # "tech" 只会被存一次
    #查看所有元素
    SMEMBERS tags
    #output:1) "news" 2) "tech"
    SMEMBERS tags "news"
    SMEMBERS tags
    #output:1) "tech"

4.Hash

类似对象结构,适合存储实体对象(如用户信息)

  • HSET/HGET:设置/获取哈希表中的字段
  • HGETALL:获取哈希表的全部
  • HDEL:删除哈希表中的字段
  • HEXIST:检查哈希表中的某个字段是否存在
HSET person name tinsiag
HSET person age 20 
HGET person name
#output:"tinsiag"
HGET person age
#output:"20"
HGETALL person
#output:1) "name"2) "tinsiag"3) "age"4) "20"
HEXISTS person name
# output: (integer) 1

4. 通用重要命令

  • EXPIRE/TTL(生存时间):Redis的杀手锏功能。用于缓存自动过期。
SET code "123456"
EXPIRE code 60  # 60秒后自动删除
TTL code        # 查看剩余存活时间(秒)
  • DEL: 删除键
DEL name

5. Redis服务器搭建

1.系统更新与安装

sudo apt update
sudo apt upgrade -y
sudo apt install redis-server -y

安装完成后,Redis 会自动启动。你可以通过以下命令检查它的状态:

sudo systemctl status redis-server

2.配置 Redis

Redis 的主配置文件位于 /etc/redis/redis.conf

sudo vim /etc/redis/redis.conf

关键配置项建议:

  • 启用 Systemd 管理: 找到 supervised 这一行,将其从 no 改为 systemdsupervised systemd
  • 远程访问(可选): 默认情况下,Redis 只允许本地访问(127.0.0.1)。如果你需要从其他服务器连接,找到 bind 127.0.0.1 ::1,根据需要修改为 bind 0.0.0.0(注意:开启远程访问必须配合防火墙和密码)。
  • 设置密码(强烈建议): 搜索 # requirepass foobared,取消注释并将 foobared 改为你自己的强密码: requirepass 你的强密码
  • 内存限制: 根据你的服务器配置限制 Redis 使用的最大内存: maxmemory 512mb maxmemory-policy allkeys-lru

3.重启并验证

修改完配置文件后,需要重启 Redis 使其生效:

sudo systemctl restart redis-server

4.常见维护命令

目的 命令
启动 Redis sudo systemctl start redis-server
停止 Redis sudo systemctl stop redis-server
开机自启 sudo systemctl enable redis-server
查看日志 sudo tail -f /var/log/redis/redis-server.log