首页 > 数据库 >Redis

Redis

时间:2023-07-23 13:33:22浏览次数:20  
标签:key 数据库 Redis value 列表 哈希 集合

什么是Redis?

Redis是一个开源的使用C语言编写、遵守BSD协议、支持网络、可基于内存、分布式、可选持久性的键值对(key-value)存储数据库,提供了多种语言的API,也被称为NoSQL数据库。

NoSQL,不仅仅是SQL,泛指非关系型数据库。NoSQL数据库并不是要取代关系型数据库,而是关系型数据库的补充。

关系型数据库(RDBMS)

  • MySQL
  • Oracle
  • DB2
  • SQLServer

非关系型数据库(NoSQL)

  • Redis
  • Mongo db
  • MemCached

应用场景

缓存
任务队列
消息队列
分布式锁

五种常用数据类型

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

字符串 string 常用命令

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

哈希 hash 常用命令

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

列表 list 常用命令

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

集合 set 常用命令

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

有序集合 sorted set 常用命令

通过socre来为集合中的成员进行从小到大排序

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

通用命令

KEYS pattern	# 查找所有符合给定模式(pattern)的key
EXISTS key		# 检查给定key是否存在
TYPE key		# 返回key所存储的值的类型
TTL key			# 返回给定key的剩余生存时间(TTL,time to live),以秒为单位
DEL key			# 删除key

标签:key,数据库,Redis,value,列表,哈希,集合
From: https://www.cnblogs.com/bobowww/p/17574915.html

相关文章

  • Java操作Redis
    介绍Redis的Java客户端有多种,官方推荐使用的有三种:JedisLettuceRedissonSpring对Redis客户端进行了整合,提供了SpringDataRedis,在SpringBoot项目中还提供了对应的Starter,即spring-boot-starter-data-redis。使用Jedis操作Redis的步骤:获取链接执行操作关闭连接导入......
  • Redis解决网络抖动问题
    Redis解决网络抖动问题所谓网络抖动问题,简单来说就是防止用户短暂的时间内对同一个接口多次点击访问这里利用的是redis锁的原子性和withStatement上下文管理器实现,另外该类还支持协程,可使用asyncwith调用1.源码FuncDefine.pydefclear_all_lock(PREFIX='lock'):......
  • Redis 入门
    Redis入门教程0x01概述Redis(RemoteDictionaryServer)是一个开源的基于内存的数据存储系统,可以用作数据库缓存和消息队列等场景,是一种NoSQL数据类型基本数据类型字符串String列表List集合Set有序集合SortedSet哈希Hash高级数据类型消息队列Stream地......
  • redis del namespace
    RedisDel命令解析与示例简介在Redis中,DEL命令被用来删除一个或多个键。这个命令可以用于删除任何类型的键,包括字符串、列表、哈希表、集合和有序集合。在删除键时,与被删除键关联的数据也会被同时删除。本文将介绍DEL命令的用法、参数、返回值以及示例代码。DEL命令的用......
  • redis dbtree
    RedisDBTree:ExploringtheDataStructureRedisisanopen-source,in-memorydatastructurestorethatiscommonlyusedasadatabase,cache,andmessagebroker.Itsupportsvariousdatastructures,suchasstrings,hashes,lists,sets,andsortedsets,......
  • redis cluster 删除key
    RedisCluster删除Key简介Redis是一个开源的内存数据库,它提供了多种数据结构和丰富的功能。RedisCluster是Redis的分布式解决方案,它允许将数据分布在多个节点上,提高了数据的可用性和性能。在RedisCluster中删除Key是一项常见的操作。本文将介绍如何使用RedisCluster删除Key,并......
  • redis 6.2.6 for windows
    Redis6.2.6forWindowsRedisisanopen-source,in-memorydatastructurestorethatcanbeusedasadatabase,cache,andmessagebroker.Itisknownforitssimplicity,highperformance,andrichsetofdatatypes.Inthisarticle,wewillexplorehowt......
  • redis自动刷新过期时间
    Redis自动刷新过期时间Redis是一个开源的内存数据库,它提供了一些强大的功能,如缓存、消息队列和键值存储等。在缓存应用中,我们经常会遇到一个问题,就是如何处理缓存的过期时间。当缓存过期后,我们需要从数据库中重新加载数据,并将其重新设置到Redis中。为了解决这个问题,我们可以使用Re......
  • redis主从模式修改密码
    Redis主从模式修改密码概述在Redis主从模式中,需要修改密码时,需要在主节点上修改密码,并且同步到所有的从节点上。下面将详细介绍如何实现这个过程。修改密码流程下面是修改Redis主从模式密码的流程:步骤描述步骤1连接到主节点步骤2修改主节点密码步骤3获取从......
  • redis重置过期时间
    Redis重置过期时间Redis是一款开源的高性能键值存储系统,常用于缓存、消息队列等场景。在Redis中,可以为每个键设置过期时间,过期时间到达后,Redis会自动删除该键。但有时候,我们需要动态地重置键的过期时间,以延长其存活时间。本文将介绍如何在Redis中重置键的过期时间,并提供相应的代码......