Redis教程

news/2024/10/13 11:51:43

(原创)Redis教程😄


1.定义与特性

基于内存的key-value结构数据库。(key是字符串类型,value有五种常用的数据类型)

redis是单线程的,但是因为是基于内存的,所以读写速度非常快。
redis支持持久化,可以将内存中的数据持久化到硬盘上。
redis支持主从复制,可以实现数据的备份和负载均衡。
redis支持事务,可以保证数据的一致性。
redis支持发布/订阅,可以实现消息的实时推送。
redis支持Lua脚本,可以实现复杂的业务逻辑。
redis支持多种编程语言的客户端,如java、python、php等。

不区分大小写。

2.五种常用的数据类型

  1. String(字符串)
  2. Hash(哈希,类似java的hashmap)
  3. List(列表,可以有重复元素,类似java的linkedlist)
  4. Set(集合,没有重复元素,类似java的hashset)
  5. ZSet/soorted set(有序集合,没有重复元素,每个元素对应一个分数,根据分数升序排序)

3.常用命令

1. 字符串操作命令

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

2. 哈希操作命令

HSET key field value 设置指定key的field字段的value值
HGET key field 获取指定key的field字段的value值 
HDEL key field 删除指定key的field字段
HKEYS key 获取指定key的所有field字段
HVALS key 获取指定key的所有value值

3. 列表操作命令

LPUSH key value1 [value2] 将一个或多个值插入到列表头部
LRANGE key start stop 获取列表指定范围内的元素
RPOP key 移除并返回列表最后一个元素
LLEN key 获取列表长度

4. 集合操作命令

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

5. 有序集合操作命令

ZADD key score member 添加一个或多个成员,或者更新已存在成员的分数
ZRANGE key start stop [WITHSCORES] 获取有序集合中指定范围内的成员 //默认升序排列
ZREM key member 移除有序集合中的一个或多个成员
ZCARD key 获取有序集合中成员的个数
ZSCORE key member 获取有序集合中指定成员的分数
ZINCRBY key increment member 有序集合中指定成员的分数增加increment

6. 通用命令

KEYS pattern 查找所有符合给定模式pattern的key
EXISTS key 检查给定key是否存在 //1表示存在,0表示不存在
DEL key 删除指定key
TTL key 获取指定key的过期时间(秒)
PERSIST key 移除指定key的过期时间,使其成为永久key
TYPE key 获取指定key的数据类型

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/71030.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

WGCLOUD使用笔记 - 监测主机的Crontab定时任务信息

Crontab定时任务监测,是WGCLOUD v3.5.5 新增的一个功能模块可以实时监测Linux的Crontab设置信息,如下图

高级程序语言设计课程第三次个人作业

班级的链接:https://edu.cnblogs.com/campus/fzu/2024C/ 作业要求的链接:https://edu.cnblogs.com/campus/fzu/2024C/homework/13284 学号:102400228 姓名:吴昊 第四章作业: 第二题:本题在b.d要求读题时有部分困难,最后通过网上查询解决自己的困难 第三题:本题没什么大…

golong下载

https://www.cnblogs.com/se6c/p/17890974.html#gallery-2 目录中文网官网编译器下载额外步骤:加速访问配置 GOPROXY 环境变量,以下三选一给你们看下我的这一步步骤(我选的阿里) 中文网首页 - Go语言中文网 - Golang中文社区官网The Go Programming Language编译器下载1.我…

通过LambdaQueryWrapper配置实现查询指定的字段值

如果是自己写sql语句,可以很自由的实现查询哪些字段值,但是在使用 MybatisPlus 提供的CRUD方法的时候我们该如何实现这一效果呢? 可以通过 LambdaQueryWrapper 和 QueryWrapper 的 select 方法来做到这一点public IPage<Customer> page(int current, int size) {log.i…

Scratch列表的知识与应用

列表及应用1 列表及应用2 练习题1

2024-2025-3-计算机基础与程序设计

学期(如2024-2025-3) 学号(20241404) 《计算机基础与程序设计》第3周学习总结 作业信息这个作业属于哪个课程 <计算机基础程序与设计>这个作业要求在哪里 https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP/homework/13265这个作业的目标 <帮助我们更深刻理…

硬件设计很简单?合宙低功耗4G模组Air780E—开机启动及外围电路设计

​ Air780E是合宙低功耗4G-Cat.1模组经典型号之一,上期我们解答了大家关心的系列问题,并讲解了选型的注意要点。 有朋友问:能不能讲些硬件设计相关的内容? 模组的上电开机,是硬件设计调试的第一步。本期特别分享——Air780E开机启动及外围电路设计。Air780E开机启动及外围…