redis安装已经在我博客一篇文章中讲了,这理解不介绍了
菜鸟教程,讲的还不错:有安装和各种命令
-
Redis指令:
redis客户端可以通过help来查看redis指令和帮助
help后加空格,按tab键就会看到命令的分组和命令,继续按tab可以切换。
主要分组有:
- @generic:通用指令
- @String:字符串类型指令 java中的Map<String,String>
- @List:队列结构指令Map<String,List<String>>
- @set:set接口指令Map<String,Set<String>>
- @sorted_set:可排序
- hash:哈希结构指令(map)Map<String,Map<String,String>>
redis中的类型都和java中的map一样,redis中类型不同,其实就是map的值类型不同。
下面根据分组开始学习一些常用命令
通用指令
keys:
通过help keys可以看到下面介绍,后面这部分都是通过help查看的
KEYS pattern
summary: Find all keys matching the given patternkeys可以获取符合规则的键名称,pattern就是规则(正则表达式)
可以使用keys * 查看所有的键
注意:生产环境下要禁用这个指令。因为生产环境下数据很多,执行keys很耗时,redis又是单线程的,执行这个指令就会阻塞其他的操作。
禁用:配置文件禁用
exists
EXISTS key
summary: Determine if a key exists判断一个键是否存在
语法:exists key
del
DEL key [key ...]
summary: Delete a key删除key,可以删除一个或者多个空格间隔,返回成功删除的个数
select
SELECT index
summary: Change the selected database for the current connection切换redis库,redis中默认有16个库,集群通常设置为1个
expire
EXPIRE key seconds
summary: Set a key's time to live in seconds设置key的生存时间,设置成功返回1(存在的才能设置)
不存在或者不能设置就返回0
ttl
TTL key
summary: Get the time to live for a key查看key的剩余存活时间,返回
正数:就是剩余存活时间
-1:永不过期
-2:已过期或者不存在
persist
PERSIST key
summary: Remove the expiration from a key将key设置为永久存活,成功返回1
不存在,或者key没有设置存活时间返回0
字符串命令
字符串结构是redis中最基础的k-v结构,键和值都是字符串,类似java中的Map<String>,他能够存储任何形式的字符串,包括二进制数据,json化对象,字节数组等,一个json类型的键允许存储数据最大容量512MB
常用指令
语法 | 作用 |
SET key value | 设置指定key的值 |
GET key | 获取指定key的值 |
GETRANGE key start end | 返回key中字符串的子字符串 |
INCR key | 将key存储的数字值增一 |
INCRBY key increment | 将key存储的值加上给定的增量值 |
DECR key | 将key的值减一 |
DECRBY key increment | 将key存储的值减上给定的值 |
APPEND key value | 如果key存在,并且值是一个字符串,append命令将value增加到原来值的后面 |
STRLEN key | 返回key存储的字符串长度 |
MGET k1 k2 k3... | 同时获取多个给的key的值 |
MSET k1 v1 k2 v2 | 同时设置多个k-v值 |
hash结构命令
哈希结构指令(map)Map<String,Map<String,String>>,键是字符串,值是另一个映射。结构如下
常用命令:
HSET ,HSETNX,HGET ,HGETALL key,HKEYS key
1. 存储: hset key field value
2. 获取:
- hget key field: 获取指定的field对应的值
- hgetall key:获取所有的field和value
- KKEYS key :获取所有的field
3. 删除: hdel key field 删除一个字段field
注意使用通过指令DEL会把整个哈希表删除
其他。。。。。