redis key操作的相关命令

目录

1、del key        

2、dump key        

3、exists key        

4、expire key seconds        

5、expireat key timestamp

6、pexpire key milliseconds        

7、pexpireat key milliseconds-timestamp        

8、keys pattern        

9、move key db        

10、persist key        

11、pttl key        

12、ttl key        

13、randomkey        

14、rename key newkey        

15、renamenx key newkey        

16、scan cursor [MATCH pattern] [COUNT count]        

17、type key        

18、select db        

19、dbsize        

20、flushdb        

21、flushall        

22、echo        


1、del key        

        该命令用于在 key 存在时删除 key

127.0.0.1:6379> keys *
 1) "zset"
 2) "mybit"
 3) "sb1"
 4) "wsite"
 5) "zkey2"
 6) "zkey3"
 7) "mykey"
 8) "mykey1"
 9) "zkey1"
10) "zkey4"
11) "hset1"
127.0.0.1:6379> del sb1 zset
(integer) 2

2、dump key        

        序列化给定 key ,并返回被序列化的值

127.0.0.1:6379> dump mybit
"x00x01xa0tx00eHxeaxaagx00Txdd"

3、exists key        

        检查给定 key 是否存在,存在返回1,否则返回0

127.0.0.1:6379> exists zset
(integer) 0
127.0.0.1:6379> exists mybit
(integer) 1

4、expire key seconds        

        为给定 key 设置过期时间,以秒计

127.0.0.1:6379> expire wsite 30
(integer) 1
127.0.0.1:6379> keys wsite
1) "wsite"
127.0.0.1:6379> keys wsite
1) "wsite"
127.0.0.1:6379> keys wsite
1) "wsite"
127.0.0.1:6379> keys wsite
(empty list or set)    #过了30秒后就清空了

5、expireat key timestamp

        EXPIREAT 的作用和 EXPIRE 类似,都用于为 key 设置过期时间。不同在于 EXPIREAT 命令接受的时间参数是 UNIX 时间戳


Unix 时间戳是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒


127.0.0.1:6379> expireat zkey4 169218010
(integer) 1
127.0.0.1:6379> keys zkey4
(empty list or set)
127.0.0.1:6379> exists zkey4
(integer) 0

6、pexpire key milliseconds        

        设置 key 的过期时间以毫秒计

127.0.0.1:6379> pexpire zkey3 3000
(integer) 1
127.0.0.1:6379> exists zkey3
(integer) 1
127.0.0.1:6379> exists zkey3
(integer) 0

7、pexpireat key milliseconds-timestamp        

        设置 key 过期时间的时间戳(unix timestamp) 以毫秒计

127.0.0.1:6379> pexpireat zkey2 169218010000
(integer) 0
127.0.0.1:6379> exists zkey2
(integer) 0

8、keys pattern        

        查找所有符合给定模式( pattern)的 key

127.0.0.1:6379> keys *
1) "mybit"
2) "mykey"
3) "mykey1"
4) "zkey1"
5) "zkey"
6) "hset1"
127.0.0.1:6379> keys my*
1) "mybit"
2) "mykey"
3) "mykey1"

9、move key db        

        将当前数据库的 key 移动到给定的数据库 db 当中

127.0.0.1:6379> select 0
OK
127.0.0.1:6379> set name "zhangsan"
OK
127.0.0.1:6379> move name 1
(integer) 1
127.0.0.1:6379> exists name
(integer) 0
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> exists name
(integer) 1

10、persist key        

        移除 key 的过期时间,key 将持久保持

127.0.0.1:6379> expire hset1 100
(integer) 1
127.0.0.1:6379> ttl hset1
(integer) 94
127.0.0.1:6379> persist hset1
(integer) 1
127.0.0.1:6379> ttl hset1
(integer) -1

11、pttl key        

        以毫秒为单位返回 key 的剩余的过期时间

127.0.0.1:6379> pexpire zkey1 10000
(integer) 1
127.0.0.1:6379> pttl zkey1
(integer) 5890
127.0.0.1:6379> pttl zkey1
(integer) 3453
127.0.0.1:6379> pttl zkey1
(integer) 879
127.0.0.1:6379> pttl zkey1
(integer) -2

12、ttl key        

        以秒为单位,返回给定 key 的剩余生存时间(TTL, time to live)

127.0.0.1:6379> expire mybit 5
(integer) 1
127.0.0.1:6379> ttl mybit
(integer) 2
127.0.0.1:6379> ttl mybit
(integer) -2

13、randomkey        

        从当前数据库中随机返回一个 key

127.0.0.1:6379> randomkey
"mybit"

14、rename key newkey        

        修改 key 的名称

127.0.0.1:6379> rename mykey1 mykey
OK

15、renamenx key newkey        

        仅当 newkey 不存在时,将 key 改名为 newkey

        修改成功时,返回 1 ; 如果 newkey 已经存在,返回 0 。

127.0.0.1:6379> set key1 v1
OK
127.0.0.1:6379> exists key2
(integer) 0
127.0.0.1:6379> renamenx key1 key2
(integer) 1

16、scan cursor [MATCH pattern] [COUNT count]        

        迭代数据库中的数据库键        

  • cursor:游标
  • MATCH pattern:查询 Key 的条件
  • Count:返回的条数
127.0.0.1:6379> keys *
1) "mykey2"
2) "mykey"
3) "mykey1"
4) "mykey3"
5) "key2"
6) "hset1"
127.0.0.1:6379> scan 0 match *my* count 2
1) "5"
2) 1) "mykey3"
   2) "mykey"
127.0.0.1:6379> scan 0 match *my* count 10
1) "0"
2) 1) "mykey3"
   2) "mykey"
   3) "mykey1"
   4) "mykey2"

17、type key        

        返回 key 所储存的值的类型

127.0.0.1:6379> type mybit
string

18、select db        

        选择数据库  数据库为0-15(默认一共16个数据库)

127.0.0.1:6379> select 0
OK

19、dbsize        

        查看数据库的key数量

127.0.0.1:6379> dbsize
(integer) 6

20、flushdb        

        清空当前数据库

127.0.0.1:6379> flushdb
OK
127.0.0.1:6379> dbsize
(integer) 0

21、flushall        

        清空所有数据库

127.0.0.1:6379> dbsize
(integer) 1
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> dbsize
(integer) 1
127.0.0.1:6379[1]> flushall
OK
127.0.0.1:6379[1]> dbsize
(integer) 0
127.0.0.1:6379[1]> select 0
OK
127.0.0.1:6379> dbsize
(integer) 0

22、echo        

        打印命令

127.0.0.1:6379> echo 1
"1"
127.0.0.1:6379> echo "nihao"
"nihao"
127.0.0.1:6379> echo "hello world"
"hello world"

说明:
KEYS * 匹配数据库中所有key

KEYS h?llo 匹配hello,hallo,hxllo等

KEYS h*llo 匹配hllo和heeello等

KEYS h[ae]llo 匹配hello和hallo