redis安装已经在我博客一篇文章中讲了,这理解不介绍了

菜鸟教程,讲的还不错:有安装和各种命令

 

  1. 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>>,键是字符串,值是另一个映射。结构如下

redis存储数据分组 redis 分组_字符串

常用命令:

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会把整个哈希表删除

其他。。。。。