Redis

Redis入门 Redis简介 Redis是一个基于内存的 key-value 结构数据库。 基于内存存储,读写性能高 适合存储热点数据(热点商品、资讯、新闻) 企业应用广泛 启动Redis 在redis的文件目录下输入cmd,进入控制台

Redis入门

Redis简介

Redis是一个基于内存的 key-value 结构数据库。

  • 基于内存存储,读写性能高

  • 适合存储热点数据(热点商品、资讯、新闻)

  • 企业应用广泛

启动Redis

  1. 在redis的文件目录下输入cmd,进入控制台

  2. 启动server服务

    redis>redis-server.exe redis.windows.conf
  3. 启动客户端(需要另外开一个控制台)

    redis-cli.exe

注意:默认是没有密码的,如需指定密码在开启客户端后输入一下代码

auth password(自己设置的密码)

Redis密码设置

在redis.windows.conf文件中将这里的注释解开,并设置密码,如下

Redis数据类型

字符串 string

普通字符串,Redis中最简单的数据类型

命令

  • SET key value ——设置指定key的值

  • GET key ——获取指定key的值

  • SETEX key seconds value ——设置指定key的值,并将 key 的过期时间设为 seconds 秒

  • SETNX key value ——只有在 key 不存在时设置 key 的值

示例

set name suave
get name
该字段在30s后过期
setex name 30 suave
setnx name suave

哈希 hash

  • 也叫散列,类似于Java中的HashMap结构

  • Redis hash 是一个string类型的 field 和 value 的映射表,hash特别适合用于存储对象

命令

  • HSET key field value ——将哈希表 key 中的字段 field 的值设为 value

  • HGET key field ——获取存储在哈希表中指定字段的值

  • HDEL key field ——删除存储在哈希表中的指定字段

  • HKEYS key ——获取哈希表中所有字段

  • HVALS key ——获取哈希表中所有值

示例

hset user name suave
hget user name
hdel user name
hkeys user
hvals user

列表 list

按照插入顺序排序,可以有重复元素,类似于Java中的LinkedList

命令

  • LPUSH key value1 [value2] ——将一个或多个值插入到列表头部

  • LRANGE key start stop ——获取列表指定范围内的元素

  • RPOP key ——移除并获取列表最后一个元素

  • LLEN key ——获取列表长度

示例

lpush list1 a b c
获取list中所有元素
lrange list1 0 -1
rpop list1
llen list1

集合 set

无序集合,没有重复元素,类似于Java中的Hashset

命令

  • SADD key member1 [member2] ——向集合添加一个或多个成员

  • SMEMBERS key ——返回集合中的所有成员

  • SCARD key ——获取集合的成员数

  • SINTER key1 [key2] ——返回给定所有集合的交集

  • SUNION key1 [key2] ——返回所有给定集合的并集

  • SREM key member1 [member2] ——删除集合中一个或多个成员

示例

sadd set1 a b c
smembers set1
scard set1
sinter set1 set2
sunion set1 set2
srem set1 a b c

有序集合 sorted set/ zset

集合中每个元素关联一个分数(score),根据分数升序排序,没有重复元素

命令

  • ZADD key score1 member1 [score2 member2] ——向有序集合添加一个或多个成员

  • ZRANGE key start stop [WITHSCORES] ——通过索引区间返回有序集合中指定区间内的成员,加上WITHSCORES会返回分数

  • ZINCRBY key increment member ——有序集合中对指定成员的分数加上增量 increment

  • ZREM key member [member ..] ——移除有序集合中的一个或多个成员

示例

zadd zset1 1 a 2 b 3 c
zrange zset1 0 -1
zincrby zset1 5 a
zrem zset1 a b c

通用命令

  • KEYS pattern ——查找所有符合给定模式( pattern)的 key

  • EXISTS key ——检查给定 key 是否存在

  • TYPE key ——返回 key 所储存的值的类型

  • DEL key ——该命令用于在 key 存在是删除 key

返回所有以set开通的key
keys set*
exists set1
type set1
del set1

LICENSED UNDER CC BY-NC-SA 4.0
Comment