|
1、redis的不同之处
Redis拥有其他数据库不具备的数据结构,又拥有内存存储(这使得redis的速度非常快),远程操作(使得redis可以与多个客户端和服务器进行连接)、持久化(使得服务器可以在重启的时候仍然保持重启之前的数据)和可扩展(通过主从复制和分片)。
Redis结构类型:STRING、LIST、SET、HASH、ZSET(有序集合)
STRING:可以存贮字符串、整数、浮点数
LIST:一个链表,每个节点都包含一个字符串
SET:包含字符串的无序收集容器,每个字符串都是独一无二的
HASH:包含键值的无序散列表,即可以存储多个键值对(key唯一)之间的映射【可以理解为关联数组】
ZSET(有序集合):字符串成员(member)与浮点数分值(score)一一映射。元素排列顺序由分值大小决定,每个member是唯一的。
回到顶部
2、key相关操作
适用redis全部类型数据
1、DELkey[key…] 删除某个或者多个key-value
2、KEYS pattern 返回匹配的key
3、RANDOMKEY 从当前数据库返回一个key
4、MOVE key num 将当前数据库中的key移到数据库num中
5、RENAME key newkey 改名,newkey存在时则将会覆盖
6、RENAMENX key newkey 当且仅当newkey不存在的时候才执行
7、TYPE key 返回key数据类型
8、EXPIRE key second 设置key的过期时间、秒
9、EXPIREAT key timestamp 设置key的过期时间、时间戳
10、PEXPIRE key milliseconds 设定多少毫秒内过期
11、PEXPIREAT key timestamp-milliseconds 设置为时间戳,毫秒级
12、TTL key 查看给定键距离过期时间还有多少秒
13、PTTL key 查看给定键距离过期时间还有多少毫秒
14、PERSIST key 移除过期时间
15、EXISTS key 检查key是否存在
16、OBJECT refcount|encoding|idletime key 返回key,引用次数|内部存储编码|空转时间
可编为多种方式编码:
1、字符串可存为raw(一般字符串)、int(小数字)
2、列表可存为ziplist、linkedlist
3、集合可存为inset(数字小集合)、hashtable
4、散列可存为zipmap(小散列)、hashtable
5、有序集合可存为ziplist(小有序集合)、skiplist(任何大小)
17、SORT source-key [BY pattern] [LIMIT offset count] [GET pattern…] [ASC|DESC] [ALPHA] [STORE dest-key]
用于排序,这个排序功能很强大
参数:
1、source-key:排序的key
2、BY pattern:表示可以通过外部权重进行排序(即外部key,需要与排序key有关联)。例如:链表key为list-userID(1,2,3,4…),则外部key名为,goods_1、goods_2…,则BY pattern为(BY goods_*)
3、LIMIT offset count:表示排序后返回的数据行
4、GET pattern…:获取外部数据(参数与BY pattern一样)
5、ASC|DESC:升序|降序
6、ALPHA:采用字符排序,默认是数字排序
7、STORE dest-key:表示将结果存入dest-key中
回到顶部
3、数据库相关命令
1、SELECT db_index 选择数据库,一共有16个数据库,默认在数据库0
2、DBSIZE 返回当前数据库key数量
3、FLUSHDB 删除当前数据库所有key
4、FLUSHALL 删除所有数据库所有key
回到顶部
4、Connection连接
1、设置密码
可以通过redis配置文件进行设置密码requirepass password配置,配置后需要使用auth pass 进行解锁才能使用其他命令
2、QUITE 关闭与服务器连接退出客户端
3、PING 用于测试与服务器端连接是否生效,返回pong
4、ECHO message 打印消息,测试用
回到顶部
5、STRING字符串
1、SET key value/GET key 设置key-value对/获取值
2、MSET key1 value1 key2 value2…./MGET
3、SETNX key value 当且仅当key不存在时才设置
4、SETEX key second value 设置k-v对时并且设置过期时间
5、GETSET key value 获取旧值设置新值
6、STRLEN key 字符串长度
7、APPEMD key value 追加值
8、GETRANGE key-name start end 返回次字符串的start到end之间的字符
9、SETRANGE key-name offset value 将value代替从offset开始的字符串
10、INCR、DECR、INCRBY、DECRBY、INCRBYFLOAT 增加值
11、GETBIT key-name offset 将字符串看做是二进制位串,并返回位串中的偏移量offset的二进制位的值
12、SETBIT key-name offset value 将字符串看做是二进制位串,并将位串中偏移量offset的二进制值设置为value
13、BITCOUNT key-name [start end] 统计二进制位串里面值为1的数量
14、BITOP AND|OR|XOR|NOT dest-key key1 key2… 对多个key执行并或异或非,并将结果存入到dest-key
回到顶部
6、LIST链表
列表允许用户从序列两端推入或者弹出元素
1、LPUSH/RPUSH、LPOP/RPOP
2、LRANGE key start end 返回偏移量中的值
3、LINDEX key offset 返回偏移量为offset中的值
4、LLEN key-name 返回key-name链的长度
5、LREM key count value count=0 删除全部一样的;count>0从左边检索删除count个;count |
|
|
|
|
|
|