运维之道 | Redis 命令解析大全

Redis 命令解析大全

一、Redis keys 命令

如果命令执行成功,则命令执行后输出 (integer) 1,否则将输出 (integer) 0
  • 新建key set keyname redis
192.168.182.10:6379> set villian redis
OK
  • 删除key del keyname
192.168.182.10:6379> del villian
(integer) 1
  • 清空当前数据库所有keyflushdb
192.168.182.10:6379> flushdb
OK
192.168.182.10:6379> randomkey			///返回key值
(nil)
  • 序列化给定 key ,并返回被序列化的值dump keyname
192.168.182.10:6379> dump villian
"\x00\x05redis\x06\x00S\xbd\xc1q\x17z\x81\xb2"
  • 检查给定 key 是否存在 exists keyname
192.168.182.10:6379> exists villian
(integer) 1
  • 为给定 key 设置过期时间,以秒计,时间一到,自动删除 EXPIRE keyname seconds
192.168.182.10:6379> expire villian 10
(integer) 1
192.168.182.10:6379> keys *
1) "villian"
192.168.182.10:6379> keys *
(empty list or set)
  • 设置过期时间戳EXPIREAT keyname timestamp

是记录日期时间的,例如,在用相机拍照时设置选择时间戳,拍摄的照片就会自动添加拍照时的日期。

192.168.182.10:6379> expireat villian 1293840000
(integer) 1
192.168.182.10:6379> exists villian
(integer) 0
  • 设置 key 的过期时间以毫秒计PEXPIRE keyname milliseconds
192.168.182.10:6379> pexpire villian 10       ///10毫秒存活
(integer) 1
192.168.182.10:6379> exists villian
(integer) 0
  • 设置 key 过期时间的时间戳(unix timestamp) 以毫秒计PEXPIREAT key milliseconds-timestamp
192.168.182.10:6379> pexpireat villian 1555555555005
(integer) 1
192.168.182.10:6379> exists villian
(integer) 0
  • 移除 key 的过期时间,key 将持久保持PERSIST key
192.168.182.10:6379> set villian redis 			///新建villian
OK
192.168.182.10:6379> keys *
1) "villian"
2) "villian3"
3) "villian2"
192.168.182.10:6379> expire villian 100			///设置100秒过期时间
(integer) 1
192.168.182.10:6379> ttl villian				///查看当前剩余时间
(integer) 97
192.168.182.10:6379> persist villian			///移除过期时间
(integer) 1
192.168.182.10:6379> ttl villian				///查看当前剩余时间,-1为永久存在
(integer) -1
  • 以秒为单位,返回给定 key 的剩余生存时间TTL key
192.168.182.10:6379> expire villian 100			///设置100秒过期时间
(integer) 1
192.168.182.10:6379> ttl villian				///查看当前剩余时间
(integer) 97
  • 以毫秒为单位,返回给定 key 的剩余生存时间PTTL key
192.168.182.10:6379> expire villian 100
192.168.182.10:6379> pttl villian
(integer) 85171
  • 查找所有符合给定模式( pattern)的 keyKEYS pattern
192.168.182.10:6379> set villian1 redis
OK
192.168.182.10:6379> set villian2 mysql
OK
192.168.182.10:6379> set villian3 nginx
OK
192.168.182.10:6379> keys villian*
1) "villian3"
2) "villian1"
3) "villian2"
192.168.182.10:6379> keys *
1) "villian3"
2) "villian1"
3) "villian2"
  • 将当前数据库的 key 移动到给定的数据库 db 当中MOVE key db
    redis 数据库中默认设有16个库(0-15)
192.168.182.10:6379> keys *
1) "villian3"
2) "villian1"
3) "villian2"
192.168.182.10:6379> move villian1 1	///移动至库1
(integer) 1
192.168.182.10:6379> exists villian1
(integer) 0
192.168.182.10:6379> select 1
OK
192.168.182.10:6379[1]> keys * 			///库1中查询
1) "villian1"
  • 从当前数据库中随机返回一个 keyRANDOMKEY
192.168.182.10:6379> mset fruit "apple" drink "beer" food "cookies"
OK
192.168.182.10:6379> randomkey
"fruit"
192.168.182.10:6379> randomkey
"food"
192.168.182.10:6379> randomkey
"drink"
192.168.182.10:6379> keys * 		///查看数据库内所有key,证明 RANDOMKEY 并不删除 key
1) "food"
2) "fruit"
3) "drink"
  • 修改 key 的名称RENAME key newkey
192.168.182.10:6379> keys *
1) "villian"
192.168.182.10:6379> rename villian zwl
OK
192.168.182.10:6379> keys *
1) "zwl"
  • 返回 key 所储存的值的类型TYPE key
192.168.182.10:6379> type zwl
string


二、Redis 字符串(String)

  • 设置指定 key 的值SET key value
192.168.182.10:6379> set villian "hello world"
OK
  • 获取指定 key 的值GET key
192.168.182.10:6379> get villian
"hello world"
  • 返回 key 中字符串值的子字符GETRANGE key start end
192.168.182.10:6379> set villian "This is my test key"
OK
192.168.182.10:6379> get villian
"This is my test key"
192.168.182.10:6379> getrange villian 0 3
"This"
192.168.182.10:6379> getrange villian 0 -1
"This is my test key"
  • 将给定 key 的值设为 value ,并返回 key 的旧值(old value)(更换key值)GETSET key value
192.168.182.10:6379> set villian redis 
OK
192.168.182.10:6379> get villian
"redis"
192.168.182.10:6379> getset villian nginx
"redis"
192.168.182.10:6379> get villian
"nginx"
  • 返回所有(一个或多个)给定 key 的值, 如果给定的 key 里面,有某个 key 不存在,那么这个 key 返回特殊值 nil MGET key1 [key2..]
192.168.182.10:6379> set key1 "hello"
OK
192.168.182.10:6379> set key2 "nihao"
OK
192.168.182.10:6379> mget key1 key2 someotherkey
1) "hello"
2) "nihao"
3) (nil)
  • 将 key 中储存的数字值增一INCR key
192.168.182.10:6379> set page_view 10
OK
192.168.182.10:6379> incr page_view
(integer) 11
192.168.182.10:6379> get page_view
"11"
  • 将 key 所储存的值加上给定的增量值INCRBY key increment
192.168.182.10:6379> set rank 50
OK
192.168.182.10:6379> incrby rank 20
(integer) 70
192.168.182.10:6379> get rank
"70"
  • 将 key 中储存的数字值减一DECR key
192.168.182.10:6379> set page_view 20
OK
192.168.182.10:6379> decr page_view 
(integer) 19
192.168.182.10:6379> get page_view
"19"
  • key 所储存的值减去给定的减量值DECRBY key decrement
192.168.182.10:6379> set page_view 100
OK
192.168.182.10:6379> decrby page_view 20
(integer) 80
192.168.182.10:6379> get page_view
"80"
192.168.182.10:6379> exists page 			///对不存在值的进行加减
(integer) 0
192.168.182.10:6379> decrby page 10
(integer) -10

转载至:https://www.runoob.com/redis/redis-commands.html

发布了97 篇原创文章 · 获赞 10 · 访问量 3377

猜你喜欢

转载自blog.csdn.net/VillianTsang/article/details/103908142