常用指令
1. key
expire key seconds
- 设置键的过期时间为seconds秒
127.0.0.1:6379> set test test
OK
127.0.0.1:6379> get test
"test"
127.0.0.1:6379> expire test 4
(integer) 1
127.0.0.1:6379> get test
"test"
127.0.0.1:6379> get test
(nil)
pexpire key milliseconds
- 同
expire key seconds,区别在于单位毫秒
expireat key timestamp
- 将键的过期时间设置为timestamp所指定的秒数
127.0.0.1:6379> expireat test 1645024944
(integer) 1
127.0.0.1:6379> get test
"test"
127.0.0.1:6379> ttl test
(integer) 18
ttl key
- 查询键的剩余生存时间
127.0.0.1:6379> expire test 100
(integer) 1
127.0.0.1:6379> ttl test
(integer) 97
persist key
- 移除过期时间
127.0.0.1:6379> set test test
OK
127.0.0.1:6379> EXPIRE test 10
(integer) 1
127.0.0.1:6379> ttl test
(integer) 7
127.0.0.1:6379> persist test
(integer) 1
127.0.0.1:6379> ttl test
(integer) -1
2. String
get key
- 获取指定key的值
set key value [EX seconds|PX milliseconds] [NX|XX]
- EX seconds:将键的过期时间设置为seconds秒
set key value EX seconds等同于setex key seconds value
- PX milliseconds:将键的过期时间设置为milliseconds毫秒
set key value PX milliseconds等同于PSETEX key milliseconds value
incr key
- 将key中存储的数字值加1
- 如果存储的内容非数字类型,会报错:
(error) ERR wrong number of arguments for 'incr' command
127.0.0.1:6379> set num 1
OK
127.0.0.1:6379> get num
"1"
127.0.0.1:6379> incr num
(integer) 2
127.0.0.1:6379> get num
"2"
mget key [key ...]
- 获取一个或多个给定key的值
127.0.0.1:6379> set test1 1
OK
127.0.0.1:6379> set test2 2
OK
127.0.0.1:6379> mget test1 test2
1) "1"
2) "2"
3. Hash
hmset key field value [field value ...]
- 将多个field-value(阈-值)对设置到散列表key中
hset key field value
- 将field-value(阈-值)对设置到散列表key中
hget key field
- 获取key中对应field的值
hmget key field [field ...]
- 获取key中对应(一个或多个)field的值
hgetall key
- 获取key对应的所有field-value
hdel key field [field ...]
- 删除key对应的(一个或多个)field的值
127.0.0.1:6379> hmset map test1 1 test2 2
OK
127.0.0.1:6379> hmget map test1 test2
1) "1"
2) "2"
127.0.0.1:6379> hget map test1
"1"
127.0.0.1:6379> hset map test3 3
(integer) 1
127.0.0.1:6379> hgetall map
1) "test1"
2) "1"
3) "test2"
4) "2"
5) "test3"
6) "3"
127.0.0.1:6379> hdel map test1 test2
(integer) 2
127.0.0.1:6379> hgetall map
1) "test3"
2) "3"
4. List
lpush key value [value ...]
- 将一个或多个值插入队列头部
rpush key value [value ...]
- 将一个或多个值插入队列尾部
lrange key start stop
- 获取列表中指定范围的元素
- start,end:表示区间偏移量,0代表第一个元素,1代表第二个元素,-1表示最后一个元素
lrange key 0 -1:查询所有元素
llen key
- 获取列表长度
lindex key index
- 通过索引获取列表中的元素
- index:偏移量,0代表第一个元素,1代表第二个元素,-1表示最后一个元素
lindex list 0:获取list元素的第一个元素的值lindex list -1:获取list元素的最后一个元素的值
ltrim key start stop
- 对一个列表进行修剪,让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除
- start,end:表示区间偏移量,0代表第一个元素,-1表示最后一个元素
127.0.0.1:6379> rpush list 1 2
(integer) 2
127.0.0.1:6379> lrange list 0 -1
1) "1"
2) "2"
127.0.0.1:6379> lpush list 3 4
(integer) 4
127.0.0.1:6379> lrange list 0 -1
1) "4"
2) "3"
3) "1"
4) "2"
127.0.0.1:6379> lrange list 0 1
1) "4"
2) "3"
127.0.0.1:6379> lrange list -2 -1
1) "1"
2) "2"
127.0.0.1:6379> llen list
(integer) 4
127.0.0.1:6379> lindex list 0
"4"
127.0.0.1:6379> lindex list -1
"2"
127.0.0.1:6379> ltrim list 1 2
OK
127.0.0.1:6379> lrange list 0 -1
1) "3"
2) "1"
5. Set
sadd key member [member ...]
- 向集合中添加一个或多个成员
scard key
- 获取集合的成员数
smembers key
- 返回集合中的所有成员
sismember key member
- 判断member元素是否存在与集合key中
- 0:代表不存在
- 1:代表存在
srem key member [member ...]
- 移除集合中的一个或多个成员
127.0.0.1:6379> sadd set 1 2 3
(integer) 3
127.0.0.1:6379> scard set
(integer) 3
127.0.0.1:6379> smembers set
1) "1"
2) "2"
3) "3"
127.0.0.1:6379> sismember set 1
(integer) 1
127.0.0.1:6379> sismember set 4
(integer) 0
127.0.0.1:6379> srem set 1
(integer) 1
127.0.0.1:6379> smembers set
1) "2"
2) "3"
6. ZSet
// todo
7. Bitmap
// todo
8. HyperLongLog
// todo
9. Geospatial
// todo
10. 其他
select index
- index:切换目标数据库
- 单机服务器默认创建16个服务器,节点数据库只能使用0号数据库
127.0.0.1:6379> set test test
OK
127.0.0.1:6379> get test
"test"
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> get test
(nil)