本文记录下redis中常用的一些命令,便于对于redis的操作记录。
序号 | 命令 | 说明 |
1 | select index | 切换到指定的数据库 |
2 | keys * | 显示所有key,如果键值对多不建议使用,keys会遍历所有key,可以在从节点使用;时间复杂度O(N) |
3 | dbsize | 算出所有的key的数量,只是数量;时间复杂度O(1) |
4 | exists key | key是否存在,存在返回1,不存在返回0;时间复杂度O(1) |
5 | incr key | 将key的值加一,是原子操作 |
6 | decr key | 将key的值加一,会出现复数,是原子操作 |
7 | del key | 删除key,删除成功返回1,失败返回0;时间复杂度O(1) |
8 | expire key seconds | 设置过期时间,过期之后就不存在了;时间复杂度O(1) |
9 | ttl key | 查看key剩余的过期时间,key不存在返回-2;key存在没设置过期时间返回-1;(TTL Time To Live) |
10 | persist key | 去掉key的过期时间,再查看ttl key,返回值是-1,表示key存在并且没有设置过期时间 |
11 | type key | 查看类型;时间复杂度O(1) |
12 | config get * | 获取配置信息 |
13 | set key value | 插入值 |
14 | sadd myset 1 2 3 4 | 插入set |
15 | get key | 获取值 |
16 | del key | 删除key |
17 | cat redis.conf | grep -v "#" | grep -v "^$" | 查看配置文件,去除所有的#,去除所有的空格 |
18 | setnx key value | #key不存在,才设置 |
19 | mget key1 key2 key3 | 批量获取 1次mget=1次网络时间+n次命令时间;时间复杂度O(n) |
20 | mset key1 value1 key2 value2 | 批量插入;时间复杂度O(n) |
21 | getset key newvalue | set key newvalue并返回旧的value |
22 | append key value | 将value追加到旧的value |
23 | strlen key | 获取value的长度,中文占2个字节 |
24 | incrbyfloat key 3.5 | 增加key对应的值 |
25 | getrange key start end | 获取value从start到end的值 |
26 | setrange key index value | 设置指定下标为一个新的值 |
27 | hset key field value | 给key的field设置值 |
28 | hget key field | 获取key的field的值 |
29 | hdel key field | 删除key的field的值 |
30 | hgetall key | 获取key的所有值 |
31 | hexists key field | 判断key的field是否存在 |
32 | hlen key | 获取key field的数量 |
33 | hmset key field1 value1 field2 value2 | |
34 | hmget key field1 field2 | |
35 | lpush key value1 value2...valueN | 从左边插入 |
36 | rpush key value1 value2...valueN | 从右边插入 |
37 | linsert key before|after value newValue | |
38 | rinsert key before|after value newValue | |
39 | lpop key | 从左边弹出一个item |
40 | rpop key | 从右边弹出一个item |
41 | lrem key count value | 若count等于0或者不填,表示删除所有的value值相等的item;若count>0,表示从左到右删除最多count个value相等的item;若count<0,表示从右到左,删除最多Math.abs(count)个value相等的项 |
42 | ltrim key start end | 按照索引范围修剪列表,可以用来慢删除,因为全删除可能会阻塞redis |
43 | lrang key start end | 获取key中从start到end的值 |
44 | lindex key index | 取第index的值 |
45 | llen key | 算出列表的长度 |
46 | lset key index newValue | 修改index的值为newValue |
47 | blpop key timeout | lpop阻塞版本,timeout是阻塞时间,timeout=0表示死等,lpop会立马返回,有时候数据更新不那么及时,或者消息队列中消息未及时处理,我们可以使用这个 |
48 | brpop key timeout | |
49 | sadd key value | 不支持插入重复元素,失败返回0 |
50 | srem key element | 删除集合中的element元素 |
51 | smembers key | 查看集合元素 |
52 | sinter key1 key2 | 取出相同:交集 |
53 | sdiff key1 key2 | 取出key1中key2没有的元素:差集 |
54 | sunion key1 key2 | 取出二者所有的元素:并集 |
55 | sdiff|sinter|sunion store key | 将结果存到key中,有时候计算一次耗时 |
56 | scard key | 计算集合大小 |
57 | sismember key element | 判断element是否在集合中 |
58 | srandmember | 返回所有元素,结果是无序的,小心使用,可能结果很大 |
59 | smembers key | 获取集合中的所有元素 |
60 | spop key | 从集合中随机弹出一个元素 |
61 | scan | |
62 | zadd key score element | 添加score和element O(logN): 使用xx和跳表的数据结构 |
63 | zrem key element | 删除元素 |
64 | zscore key element | 返回元素的分数 |
65 | zincrby key increScore element | 加或减少元素分数 |
66 | zcard key | 返回元素的总个数 |
67 | zrank key element | 获取element的排名 |
68 | zrange key start end [withscores] | 返回指定索引范围内的升序元素 |
69 | zrangebyscore key minScore maxScore [withscore] | 返回分数在minScore和maxScore之间的元素 |
70 | zcount key minScore maxScore | 返回有序集合内在指定分数范围内的个数 |
71 | zremrangebyrank key start end | 删除指定排名内的元素 |
72 | zremrangebyscore key minScore maxScore | 删除指定分数内的元素 |
73 | info replication | 查看分片,能够获取到主从的数量和状态 |
74 | config get databases | 获取所有数据库 |
目前只记录这一部分,后续看还差什么,再进行补充。
还没有评论,来说两句吧...