Redis教程

键操作命令

Preview
  • Redis键操作命令
  • Key命令的分类
  • 键查询命令
  • EXISTS
  • TYPE
  • KEYS
  • RANDOMKEY
  • 键管理命令
  • RENAME
  • RENAMENX
  • DEL
  • UNLINK
  • 键过期命令
  • EXPIRE
  • PEXPIRE
  • TTL
  • PTTL
  • PERSIST
  • 键持久化命令
  • SAVE
  • BGSAVE
  • BGREWRITEAOF
  • 总结

Redis键操作命令

在Redis中,Key是一种用于标识存储在Redis中的数据的唯一标识符。Redis提供了一系列Key命令,用于对Key进行操作。本文将详细介绍Redis的Key命令。

Key命令的分类

Redis的Key命令可以分为以下几类:

  1. 键查询命令。 用于查询Key是否存在、查询Key的类型等。
  2. 键管理命令。 用于对Key进行管理,如重命名Key、删除Key等。
  3. 键过期命令。 用于设置Key的过期时间、查询Key的剩余生存时间等。
  4. 键持久化命令。 用于将Key持久化,以便在Redis重启后还原数据。

下面分别介绍这四类Key命令。

键查询命令

EXISTS

判断Key是否存在。

EXISTS key

如果Key存在,返回1;否则返回0。

TYPE

查询Key的类型。

TYPE key

可以返回以下几种类型:

  • string:字符串类型。
  • list:列表类型。
  • set:集合类型。
  • zset:有序集合类型。
  • hash:哈希类型。

KEYS

查询符合给定模式的Key列表。

KEYS pattern

其中,pattern是一个匹配模式,可以包含通配符“*”和“?”。例如,查询所有以“foo”开头的Key:

KEYS foo*

注意:在生产环境中,应尽量避免使用KEYS命令,因为查询符合给定模式的Key列表可能会导致Redis服务器的性能下降。

RANDOMKEY

随机返回一个Key。

RANDOMKEY

如果Redis中没有任何Key,返回nil。

键管理命令

RENAME

重命名Key。

RENAME key newkey

其中,key是要重命名的Key,newkey是重命名后的Key。如果newkey已经存在,那么将会覆盖它。

RENAMENX

原子性地重命名Key。

RENAMENX key newkey

如果newkey已经存在,那么不会重命名key,返回0;否则会将key重命名为newkey,返回1。

DEL

删除Key。

DEL key [key ...]

可以同时删除多个Key。

UNLINK

异步删除Key。

UNLINK key [key ...]

与DEL命令类似,可以同时删除多个Key。但是,UNLINK命令是异步执行的,不会阻塞客户端。 注意:如果Redis服务器的版本低于4.0,那么UNLINK命令不可用。

键过期命令

EXPIRE

设置Key的过期时间(单位:秒)。

EXPIRE key seconds

如果Key不存在,返回0;否则设置Key的过期时间为seconds秒,并返回1。

PEXPIRE

设置Key的过期时间(单位:毫秒)。

PEXPIRE key milliseconds

如果Key不存在,返回0;否则设置Key的过期时间为milliseconds毫秒,并返回1。

TTL

查询Key的剩余生存时间(单位:秒)。

TTL key

如果Key不存在或者没有设置过期时间,返回-1;否则返回Key的剩余生存时间。

PTTL

查询Key的剩余生存时间(单位:毫秒)。

PTTL key

如果Key不存在或者没有设置过期时间,返回-1;否则返回Key的剩余生存时间。

PERSIST

移除Key的过期时间,使Key永久有效。

PERSIST key

如果Key不存在或者没有设置过期时间,返回0;否则移除Key的过期时间,并返回1。

键持久化命令

SAVE

将数据同步保存到磁盘上。

SAVE

该命令会阻塞Redis服务器,直到数据保存完成为止。在数据量较大时,可能会导致Redis服务器的性能下降。

BGSAVE

将数据异步保存到磁盘上。

BGSAVE

该命令会启动一个后台线程,将数据保存到磁盘上。在数据量较大时,可以避免阻塞Redis服务器。

BGREWRITEAOF

将AOF日志文件进行压缩和重写。

BGREWRITEAOF

该命令会启动一个后台线程,将AOF日志文件进行压缩和重写。在AOF日志文件较大时,可以减小文件大小,提高Redis服务器的性能。

总结

Redis的Key命令是对Key进行操作的命令,包括键查询命令、键管理命令、键过期命令和键持久化命令。通过了解这些命令的用法,可以更好地管理Redis中的Key,提高Redis服务器的性能和可靠性。