redis命令

Redis Keys 命令用于查找所有符合给定模式 pattern 的 key 

  1. redis 127.0.0.1:6379> SET w3c1 redis
  2. OK
  3. redis 127.0.0.1:6379> SET w3c2 mysql
  4. OK
  5. redis 127.0.0.1:6379> SET w3c3 mongodb
  6. OK
  1. redis 127.0.0.1:6379> KEYS w3c*
  2. 1) "w3c3"
  3. 2) "w3c1"
  4. 3) "w3c2"
  1. redis 127.0.0.1:6379> KEYS *
  2. 1) "w3c3"
  3. 2) "w3c1"
  4. 3) "w3c2"

Redis Type 命令 - 返回 key 所储存的值的类型。

返回 key 的数据类型,数据类型有:

  • none (key不存在)
  • string (字符串)
  • list (列表)
  • set (集合)
  • zset (有序集)
  • hash (哈希表)
127.0.0.1:6379> type jonner
string

Redis Setnx(SET if Not eXists) 命令在指定的 key 不存在时,为 key 设置指定的值。 设置成功,返回 1 。 设置失败,返回 0 。

redis Setnx 命令基本语法如下:

  1. redis 127.0.0.1:6379> SETNX KEY_NAME VALUE
127.0.0.1:6379> setnx jonner nonner
(integer) 1
127.0.0.1:6379> 
127.0.0.1:6379> get jonner
"nonner"
127.0.0.1:6379> set jonner bb
OK
127.0.0.1:6379> get jonner 
"bb"
127.0.0.1:6379> 

Redis SET 命令用于设置给定 key 的值。如果 key 已经存储其他值, SET 就覆写旧值,且无视类型。

redis SET 命令基本语法如下:

redis 127.0.0.1:6379> SET KEY_NAME VALUE
127.0.0.1:6379> set jonner keyb
OK
127.0.0.1:6379> get jonner
"keyb"
127.0.0.1:6379> 

Redis Get 命令用于获取指定 key 的值。如果 key 不存在,返回 nil 。如果key 储存的值不是字符串类型,返回一个错误。

Redis Mset 命令用于同时设置一个或多个 key-value 对。

redis 127.0.0.1:6379> MSET key1 "Hello" key2 "World"
OK
redis 127.0.0.1:6379> GET key1
"Hello"
redis 127.0.0.1:6379> GET key2
1) "World"

Redis Setex 命令 - 将值 value 关联到 key ,并将 key 的过期时间设为 seconds (以秒为单位)。

Redis Setex 命令为指定的 key 设置值及其过期时间。如果 key 已经存在, SETEX 命令将会替换旧的值。

redis 127.0.0.1:6379> SETEX mykey 60 redis
OK
redis 127.0.0.1:6379> TTL mykey
60
redis 127.0.0.1:6379> GET mykey
"redis

Redis DEL 命令用于删除已存在的键。不存在的 key 会被忽略。

redis 127.0.0.1:6379> SET w3ckey redis
OK
redis 127.0.0.1:6379> DEL w3ckey
(integer) 1

Redis EXISTS 命令用于检查给定 key 是否存在。

redis 127.0.0.1:6379> set w3cschoolcc-new-key newkey
OK
redis 127.0.0.1:6379> EXISTS w3cschoolcc-new-key
(integer) 1
redis 127.0.0.1:6379>

  

Redis PERSIST 命令用于移除给定 key 的过期时间,使得 key 永不过期。

redis> SET mykey "Hello"
OK
 
redis> EXPIRE mykey 10  # 为 key 设置生存时间
(integer) 1
 
redis> TTL mykey
(integer) 10
 
redis> PERSIST mykey    # 移除 key 的生存时间
(integer) 1
 
redis> TTL mykey
(integer) -1

Redis TTL 命令以秒为单位返回 key 的剩余过期时间。(Redis Pttl 命令以毫秒为单位返回 key 的剩余过期时间。)

# 不存在的 key
 
redis> FLUSHDB
OK
 
redis> TTL key
(integer) -2
 
 
# key 存在,但没有设置剩余生存时间
 
redis> SET key value
OK
 
redis> TTL key
(integer) -1
 
 
# 有剩余生存时间的 key
 
redis> EXPIRE key 10086
(integer) 1
 
redis> TTL key
(integer) 10084

 Redis Rename 命令用于修改 key 的名称 。

# key 存在且 newkey 不存在
 
redis> SET message "hello world"
OK
 
redis> RENAME message greeting
OK
 
redis> EXISTS message               # message 不复存在
(integer) 0
 
redis> EXISTS greeting              # greeting 取而代之
(integer) 1

Redis MOVE 命令用于将当前数据库的 key 移动到给定的数据库 db 当中。

# key 存在于当前数据库
 
redis> SELECT 0                             # redis默认使用数据库 0,为了清晰起见,这里再显式指定一次。
OK
 
redis> SET song "secret base - Zone"
OK
 
redis> MOVE song 1                          # 将 song 移动到数据库 1
(integer) 1
 
redis> EXISTS song                          # song 已经被移走
(integer) 0
 
redis> SELECT 1                             # 使用数据库 1
OK
 
redis:1> EXISTS song                        # 证实 song 被移到了数据库 1 (注意命令提示符变成了"redis:1",表明正在使用数据库 1)
(integer) 1

 Redis RANDOMKEY 命令从当前数据库中随机返回一个 key 。

# 数据库不为空
 
redis> MSET fruit "apple" drink "beer" food "cookies"   # 设置多个 key
OK
 
redis> RANDOMKEY
"fruit"
 
redis> RANDOMKEY
"food"

Redis DUMP 命令用于序列化给定 key ,并返回被序列化的值。

redis> SET greeting "hello, dumping world!"
OK
redis> DUMP greeting
"x00x15hello, dumping world!x06x00Exa0Zx82xd8rxc1xde"
 
redis> DUMP not-exists-key
(nil)

  

原文地址:https://www.cnblogs.com/mafy/p/14004056.html