redis 入门指南

20 阅读2分钟

redis-cli 的 常用操作

#选择数据库 db1
select 1

# 从列表左侧插入 
LPUSH mylist "world" 
# 再插入一个元素 
LPUSH mylist "hello" 
# 获取列表指定范围内的元素 
LRANGE mylist 0 -1


# 设置哈希键值对
HSET user:1000 name "John Doe" age 30 
# 获取哈希中的单个字段 
HGET user:1000 name 
# 获取哈希中的所有字段和值 
HGETALL user:1000


# 添加元素到集合 
SADD myset "Hello" 
SADD myset "Redis" 
SADD myset "World" 
# 获取集合的所有元素 
SMEMBERS myset

设置有效期

在 SET 命令中直接设置有效期

你也可以在使用 SET 命令设置键值的同时设置过期时间,这可以通过 EX (秒) 或 PX (毫秒) 选项来完成。

# 假设 key 是 "mykey",我们要设置它的有效期为 300 秒 
SET mykey "Hello, Redis!"
EXPIRE mykey 300 
# 检查剩余的生存时间
TTL mykey


# 使用 SET 命令并设置过期时间为 150000 毫秒 
SET mykey "Hello again, Redis!" PX 150000 

nodejs中使用

set

不重复的数组

hash

对象

import { createClient } from 'redis'

const client = await createClient({
  url: 'redis://localhost:6379',
  database: 1, // 选择数据库 db1 ,默认db0
})
  .on('error', (err) => console.log('Redis Client Error', err))
  .connect()

async function redisOperations() {
  // 操作列表(List)
  await client.lPush('mylist', 'hello') // 在列表头部插入
  await client.lPush('mylist', 'hello') // 在列表头部插入
  await client.lPush('mylist', 'hello') // 在列表头部插入
  await client.lPush('mylist', 'world') // 再次插入
  const listItems = await client.lRange('mylist', 0, -1) // 获取列表所有元素
  console.log('List items:', listItems)

  // 操作哈希(Hash)
  await client.hSet('user:1000', 'name', 'John Doe')
  await client.hSet('user:1000', 'age', '30')
  const hashItem = await client.hGetAll('user:1000') // 获取哈希的所有字段
  console.log('Hash item:', hashItem)

  // 操作集合(Set)
  await client.sAdd('myset', 'Hello')
  await client.sAdd('myset', 'Hello')
  await client.sAdd('myset', 'Hello')
  await client.sAdd('myset', 'Redis')
  await client.sAdd('myset', 'World')
  const setItems = await client.sMembers('myset') // 获取集合的所有元素
  console.log('Set items:', setItems)

  // 断开连接
  await client.quit()
}

redisOperations()