reids键命令

数据库 waitig 388℃ 百度已收录 0评论

1、del命令-用于在key存在时删除key
如果键存在则删除,不存在则无任何影响。
例子在前面几篇redis命令介绍以及列举过,这里就不列举了。

2、dump命令-序列化给定key,并返回被序列化后的值
语法:dump key_name
版本:2.6.0及以上
返回值:如果key不存在,那么返回nil。否则,返回序列化之后的值。
eg:

127.0.0.1:6379> get mynumber
"yournumber"
127.0.0.1:6379> dump mynumber
"\x00\nyournumber\a\x00\xf6\xcd!\x9a\x0e\xcc\xb3\x8d"
127.0.0.1:6379> dump xxx
(nil)
127.0.0.1:6379>

3、exists命令-检查给定key是否存在
语法:

exists key_name

版本:1.0.0及以上
返回值:如果key存在返回1,否则返回0
eg:

127.0.0.1:6379> exists mynumber
(integer) 1
127.0.0.1:6379> exists xxx
(integer) 0

4、expire命令-为给定key设置过期时间
注意:过期后将不再可用
语法:
expire key_name time_in_seconds
版本:1.0.0及以上
返回值:设置成功返回1。当key不存在或者不能试着过期时间时返回0。
eg:

127.0.0.1:6379> set testexpire "abc"
OK
9>  expire testexpire 10
(integer) 1
127.0.0.1:6379> exists testexpire
(integer) 1
127.0.0.1:6379> exists testexpire
(integer) 0
127.0.0.1:6379> expire xxx 10
(integer) 0

5、expireat命令 -给key设置过期时间
expireat命令和expire命令类似,不同点在于expireat命令接受的时间参数是unix时间戳。
注意:key过期后将不再可用。
语法:
expireat key_name time_in_unix_timestamp
版本:1.0.0及以上
返回值:成功1,失败0

6、pexpireat命令-设置key的过期时间以毫秒计算
用于设置key的过期时间,以毫秒计,注意key过期后不再可用。
语法:

pexpireat key_name TIME_IN_MILLISECONDS_IN_UNIX_TIMESTAMP

版本:1.0.0及以上
返回值:设置成功1,失败0

7、keys命令-查找所以符合给定模式(pattern)的key
语法:

keys pattern

版本:1.0.0及以上
返回值:符合给定模式key列表。
eg:

127.0.0.1:6379> keys my*
1) "mynum"
2) "mynumber"
3) "myzset"
4) "mylist"
5) "myset"

8、move命令-将当前数据库的key移动到给定的数据库中
语法:
move key_name destination_database
版本:1.0.0及以上
返回值:移动成功返回1,失败返回0。
eg:

127.0.0.1:6379> move mynum 10
(integer) 1
127.0.0.1:6379> exists mynum
(integer) 0
127.0.0.1:6379> select 10
OK
127.0.0.1:6379[10]> exists mynum
(integer) 1
127.0.0.1:6379[10]> move mynum 100
(error) ERR index out of range

9、persist命令-移除key的过期时间,key将持久保持。
persist命令用于移除给定key的过期时间,使key永不过期。
语法:

persist key_name

版本:2.2.0及以上
返回值:当过期时间移除成功时,返回1。如果key不存在或key没有设置过期时间,返回0。
eg:

127.0.0.1:6379> set mynumber "100"
OK
127.0.0.1:6379> persist mynumber
(integer) 0
127.0.0.1:6379> ttl mynumber
(integer) -1
127.0.0.1:6379> expire mynumber 1000
(integer) 1
127.0.0.1:6379> ttl mynumber
(integer) 995
127.0.0.1:6379> persist mynumber
(integer) 1
127.0.0.1:6379> ttl mynumber
(integer) -1

10、pttl命令-以毫秒为单位返回key的剩余过期时间。
语法:

pttl key_name

版本:2.6.0
返回值:当key不存在时,返回-2。当key存在但是没有设置剩余生存时间时,返回-1。否则,以毫秒为单位,返回key的剩余生存时间。
eg:

127.0.0.1:6379> ttl mynumber
(integer) -1
127.0.0.1:6379> pttl mynumber
(integer) -1
127.0.0.1:6379> pttl xxx
(integer) -2
127.0.0.1:6379> expire mynumber 1000
(integer) 1
127.0.0.1:6379> pttl mynumber
(integer) 995249

11、ttl命令-以秒为单位,返回给定key的剩余生存时间
语法:

ttl key_name

版本:1.0.0及以上
返回值:和pttl一致

12、randomkey命令-从当前数据库中随机返回一个key
语法:

randomkey

版本:1.0.0及以上
返回值:当数据库不为空时,返回一个key,当数据库为空时,返回nil。
eg:

127.0.0.1:6379> randomkey
"yourlist"
127.0.0.1:6379> select 8
OK
127.0.0.1:6379[8]> randomkey
(nil)

13、rename命令-修改key的名称
语法:

rename old_keyname new_keyname

版本:1.0.0及以上
返回值:改名成功时候提示ok,失败时返回一个错误。
当 OLD_KEY_NAME 和 NEW_KEY_NAME 相同,或者 OLD_KEY_NAME 不存在时,返回一个错误。 当 NEW_KEY_NAME 已经存在时, RENAME 命令将覆盖旧值。
eg:

127.0.0.1:6379[8]> set testnumber "123"
OK
127.0.0.1:6379[8]> set mynumber "321"
OK
127.0.0.1:6379[8]> get mynumber
"321"
127.0.0.1:6379[8]> rename testnumber mynumber
OK
127.0.0.1:6379[8]> get mynumber
"123"
127.0.0.1:6379[8]> rename xxx aaa
(error) ERR no such key

14、renamenx命令-仅当newkey不存在的时候,将key改名为newkey。
语法:

renamenx old_keyname new_keyname

版本:1.0.0及以上
返回值:修改成功时,返回1,如果new_keyname已经存在,返回0。
eg:

127.0.0.1:6379[8]> renamenx aaa xxx
(error) ERR no such key
127.0.0.1:6379[8]> rename testnumer mynumber
OK
127.0.0.1:6379[8]> set testnumber "300"
OK
127.0.0.1:6379[8]> renamenx testnumber mynumber
(integer) 0
127.0.0.1:6379[8]> renamenx testnumber aaa
(integer) 1

15、type命令-返回key所在存储的值的类型
语法:

type key_name

版本:1.0.0及以上
返回值:返回key的数据类型:
none (key不存在)
string (字符串)
list (列表)
set (集合)
zset (有序集)
hash (哈希表)


本文由【waitig】发表在等英博客
本文固定链接:reids键命令
欢迎关注本站官方公众号,每日都有干货分享!
等英博客官方公众号
点赞 (0)分享 (0)