首页 > 数据库 >day03 Redis

day03 Redis

时间:2023-12-24 12:11:20浏览次数:41  
标签:key day03 Redis value 列表 哈希 集合

day03 Redis

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

1.1 Redis服务启动与停止

  • 服务启动命令

    redis-server.exe redis.windows.conf

  • 修改Redis配置文件

    设置Redis服务密码,修改redis.windows.con

  • 重启Redis后,再次连接Redis时,需加上密码,否则连接失败。

    redis-cli.exe -h localhost -p 6379 -a 1234

1.2 五种常见数据类型介绍

  • 字符串 string
  • 哈希 hash
  • 列表 list
  • 集合 set
  • 有序集合 sorted set / zset

1.2.1 字符串操作命令

  • SET key value 设置指定key的值
  • GET key 获取指定key的值
  • SETEX key seconds value 设置指定key的值,并将 key 的过期时间设为 seconds 秒
  • SETNX key value 只有在 key 不存在时设置 key 的值

1.2.2 哈希操作命令

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

  • HSET key field value 将哈希表 key 中的字段 field 的值设为 value
  • HGET key field 获取存储在哈希表中指定字段的值
  • HDEL key field 删除存储在哈希表中的指定字段
  • HKEYS key 获取哈希表中所有字段
  • HVALS key 获取哈希表中所有值

1.2.3 列表操作命令

Redis 列表是简单的字符串列表,按照插入顺序排序,常用命令:

  • LPUSH key value1 [value2] 将一个或多个值插入到列表头部
  • LRANGE key start stop 获取列表指定范围内的元素
  • RPOP key 移除并获取列表最后一个元素
  • LLEN key 获取列表长度
  • BRPOP key1 [key2 ] timeout 移出并获取列表的最后一个元素, 如果列表没有元素会阻塞列表直到等待超 时或发现可弹出元素为止

1.2.4 集合操作命令

Redis set 是string类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据,常用命令:

  • SADD key member1 [member2] 向集合添加一个或多个成员
  • SMEMBERS key 返回集合中的所有成员
  • SCARD key 获取集合的成员数
  • SINTER key1 [key2] 返回给定所有集合的交集
  • SUNION key1 [key2] 返回所有给定集合的并集
  • SREM key member1 [member2] 移除集合中一个或多个成员

1.2.5 有序集合操作命令

Redis有序集合是string类型元素的集合,且不允许有重复成员。每个元素都会关联一个double类型的分数。常用命令:

  • ZADD key score1 member1 [score2 member2] 向有序集合添加一个或多个成员
  • ZRANGE key start stop [WITHSCORES] 通过索引区间返回有序集合中指定区间内的成员
  • ZINCRBY key increment member 序集合中对指定成员的分数加上增increment
  • ZREM key member [member ...] 移除有序集合中的一个或多个成员

1.2.5 通用命令

  • KEYS pattern 查找所有符合给定模式( pattern)的 key
  • EXISTS key 检查给定 key 是否存在
  • TYPE key 返回 key 所储存的值的类型
  • DEL key 该命令用于在 key 存在是删除 key

Spring Data Redis中提供了一个高度封装的类:RedisTemplate,对相关api进行了归类封装,将同一类型操作封装为operation接口,具体分类如下:

  • ValueOperations:string数据操作
  • SetOperations:set类型数据操作
  • ZSetOperations:zset类型数据操作
  • HashOperations:hash类型的数据操作
  • ListOperations:list类型的数据操作

标签:key,day03,Redis,value,列表,哈希,集合
From: https://www.cnblogs.com/bai1013/p/17924229.html

相关文章

  • Redis_实战2
    Redis_实战2秒杀优化异步秒杀流程将判断库存&判断重复下单逻辑交给Redis将耗时长的写数据库操作交给异步线程。Redis:Key-stock:优惠券id,value-库存String(判断库存充足)Redis:Key-order:优惠券id,value-用户idSet(判断重复下单)流程1交给Lua脚本流程2交给阻塞队列数据库-......
  • redis数据类型及指令
    ......1、list----------队列(先进先出)2、set-----------无序、两端取值、可遍历3、zset-----------有序set、两端取值、可遍历 String常用指令1、setkeyvalue2、getkey3、msetkey1val1key2val2.....4、mgetkey1key2.....5、setkey5----------设置字符......
  • 【Redis】BigKey问题
    面试题海量数据里查询某一固定前缀的key生产上如何限制keys*/flushdb/flushall等危险命令以防止误删误用?MEMORYUSAGE命令用过吗?BigKey问题,多大算big?如何发现?如何删除?如何处理?BigKey你做过调优吗?惰性释放lazyfree了解过吗?MoreKey问题,生产上Redis数据库有1000万条记......
  • Shiro 框架中如何更新Redis的超时登录时间?
    在Shiro框架中,可以通过实现SessionDAO接口来将会话信息保存到Redis中,并且可以通过实现SessionValidationScheduler接口来定期检查会话是否过期。因此,要更新Redis中的超时登录时间,可以按照以下步骤进行操作:实现SessionDAO接口,将会话信息保存到Redis中。在实现SessionDAO接口时,可以使......
  • 【Java 进阶篇】Jedis 操作 Hash:Redis中的散列类型
    在Redis中,Hash是一种存储键值对的数据结构,它适用于存储对象的多个属性。Jedis作为Java开发者与Redis交互的工具,提供了丰富的API来操作Hash类型。本文将深入介绍Jedis如何操作Redis中的Hash类型数据,通过生动的代码示例和详细的解释,助你轻松掌握Jedis中Hash的各种操作。Jedis中Hash的......
  • redis配置
    1、redis-server配置文件名&------------------以哪个配置文件启动,不知道配置文件名以默认配置启动(默认配置≠redis.conf),可以复制redis.conf启动过个redis服务。  配置:1、daemonizeno|yes------------配置redis服务为守护模式2、pidfile/var/run/redis_6379.pid---......
  • Redis 哨兵集群搭建并使用 RedisTemplate 实现读写分离
    上篇博客介绍的Redis主从集群搭建,有一个缺点就是master和slave的角色是固定的,不会发生变化。一旦master节点宕机,那么集群就只能提供读服务,无法提供写服务。本篇博客介绍Redis哨兵集群的搭建,可以监控Redis集群的master和slave节点,最重要的是一旦master宕机,哨兵集......
  • Redis7 数据双写一致性
    1、缓存双写一致性如果redis中有数据,需要和数据库中的值相同如果redis中无数据,数据库中的值要是最新值,且准备回写redis缓存细分1、只读缓存2、读写缓存2.1、同步直写策略写数据库后也同步写redis缓存,缓存和数据库中的数据一致对于读写缓存来说,要想保证缓存和数据库中的数据......
  • Redis_实战
    Redis_实战部署:前端:部署在Nginx后端:部署在tomcat短信登录session原理:每一个session都有一个id,当你访问tomcat服务器时,id就自动写到coockie中了,以后请求就带着id,就可以根据id找到session。(每一个浏览器再发请求时都有一个独立的session)session在服务器端,coockie在客户端。......
  • RedissonLock 使用场景以及优缺点分析
    RedissonLock是Redisson库提供的一种基于Redis实现的分布式锁。以下是如何使用RedissonLock以及其优缺点:使用RedissonLock:初始化Redisson客户端:Configconfig=newConfig();config.useSingleServer().setAddress("redis://localhost:6379");RedissonClientredisson......