Redis数据库常用命令和数据类型

news2025/1/10 20:12:19

文章目录

    • 一、Redis数据库常用命令
      • 1、set/get
      • 2、keys
      • 3、exists
      • 4、del
      • 5、type
      • 6、rename
        • 6.1 重命名
        • 6.2 覆盖
      • 7、renamenx
      • 8、dbsize
      • 9、密码设置
      • 10、密码验证
      • 11、查看密码
      • 12、取消密码
      • 13、Redis多数据库常用命令
        • 13.1 多数据库间切换
        • 13.2 多数据库间移动数据
        • 13.3 清除数据库数据
    • 二、Redis数据类型
      • 1、String数据类型
      • 2、List 数据类型
      • 3、Hash数据类型 (散列类型)
      • 4、set数据类型(无序集合)
      • 5、Sorted Set数据类型 (zset、有序集合)

一、Redis数据库常用命令

1、set/get

  • set:存放数据,命令格式为set key value
  • get:获取数据,命令格式为get key
redis-cli
#登录本地redis

set name liu
#存放数据

get name
#获取数据

image-20240401205514227

2、keys

  • keys命令可以取符合规则的键值列表,通常情况可以结合*、?等选项来使用
keys *
#查询Redis数据库中所有键的列表

image-20240401210139626

set k1 1
set k2 2
set k3 3
set v1 1
set v2 3
set v3 5
set v11 7
#创建键

keys *
#查询Redis数据库中所有键的列表

keys v*
#查询当前数据库中以v开头的数据

keys *1
#查询当前数据库中以1结尾的数据

keys ??1
#查询数据库中以1结尾并且1前面包含任意两位的数据

image-20240401210355164

image-20240401210803647

3、exists

  • exists命令可以判断键值是否存在
exists name
#判断name键是否存在,存在会返回1

exists qq
#判断qq键是否存在,存在会返回0

image-20240401211317325

4、del

  • del命令可以删除当前数据库的指定key
del name
#删除name键

exists name
#此时查询name键是否存在,返回0

image-20240401211651560

5、type

  • type命令可以获取key对应的value值类型
type k1
#查询k1存储的值是的类型

image-20240401212413576

6、rename

  • rename命令是对已有key进行重命名(覆盖)

命令格式

rename 源key 目标key
  • 使用rename命令进行重命名时,无论目标key是否存在都进行重命名,且源key的值会覆盖目标key的值。在实际使用过程中,建议先用exists命令查看目标key是否存在,然后再决定是否执行rename命令,以避免覆盖重要数据。
6.1 重命名
keys v*
#查询当前数据库中以v开头的数据

rename v11 v4
#将v11改名为v4

keys v*
#查询当前数据库中以v开头的数据

image-20240401213658205

6.2 覆盖
get v1
#获取v1键的值

get v2
#获取v2键的值

rename v1 v2
#覆盖v2原来的值,变成v1值

keys v*
#查询当前数据库中以v开头的数据

get v2
#获取v2键的值,v2原来的值被v1值所覆盖

get v1
#获取v1键的值

image-20240401213544345

7、renamenx

  • renamenx命令的作用是对已有key进行重命名,并检测新名是否存在,如果目标key存在则不进行重命名(不覆盖)

命令格式

renamenx 源key 目标key
keys v*
#查询当前数据库中以v开头的数据

renamenx v4 v1
#将v4重命名为v1,因为v1不存在,所以重命名成功

keys v*
#查询当前数据库中以v开头的数据

renamenx v3 v1
#将v3重命名为v1,因为v1已经存在,所以重命不会成功

keys v*
#查询当前数据库中以v开头的数据

image-20240401214309542

8、dbsize

  • dbsize命令的作用是查看当前数据库中key的数目
keys *
#查询Redis数据库中所有键的列表

dbsize
#查看当前数据库中key的数目

image-20240401214842924

9、密码设置

  • 使用"config set requirepass password"命令设置密码
config set requirepass 123456
#设置密码

image-20240401214954770

10、密码验证

  • 使用auth命令验证密码,一旦设置密码,每次登陆后必须先验证通过密码,否则所有操作不可用
auth 123456
#验证密码后,再对redis数据库进行操作

image-20240401215340927

  • 也可在登录时使用-a选项,输入密码
redis-cli -a 123456
#在登录时,直接使用-a选项输入密码

image-20240401215658470

11、查看密码

config get requirepass
#查询redis数据库密码

image-20240401220328997

12、取消密码

  • 使用"config set requirepass ‘’"命令通过重定义空密码的方式,清空密码并取消密码验证
config set requirepass ''
#设置密码为空

config get requirepass
#查看密码

redis-cli
#登录redis

keys *
#查看redis数据库中所有键的列表,不需要密码,可以操作

image-20240401220743076

13、Redis多数据库常用命令

  • Redis支持多数据库,Redis默认情况下包含16个数据库,数据库名称是用数字0-15来依次命名的。
  • 多数据库相互独立,互不干扰。
13.1 多数据库间切换

命令格式

select 序号
  • 使用redis-cli连接Redis数据库后,默认使用的是序号为0的数据库
select 8
select 12
#多数据库间切换

Redis默认支持16个数据库,索引从0-15

image-20240401221201968

13.2 多数据库间移动数据

命令格式

move 键值 序号
move name 7
#将当前数据库的name键移动到数据库7中,要确认数据库7中没有那个键

image-20240401221846037

13.3 清除数据库数据
  • flushdb:清空当前数据库数据
  • flushall:清空所有数据库的数据(谨慎使用)
flushdb
#清空当前数据库信息

flushall
#清空所有数据库信息(谨慎操作)

image-20240401222449716

image-20240401222640869

二、Redis数据类型

1、String数据类型

  • String是 redis 最基本的类型,最大能存储 512MB 的数据,String类型是二进制安全的,即可以存储任何数据、比如数字、图片、序列化对象等

2、List 数据类型

  • 列表的元素类型为string,按照插入顺序排序,在列表的头部或尾部添加元素

3、Hash数据类型 (散列类型)

  • hash用于存储对象。可以采用这样的命名方式(hash格式):对象类别和ID构成键名,使用字段表示对象的属性,而字段值则存储属性值。

4、set数据类型(无序集合)

  • 无序集合,元素类型为string类型,元素具有唯一性, 不允许存在重复的成员。多个集合类型之间可以进行并集、交集和差集运算

5、Sorted Set数据类型 (zset、有序集合)

  • 有序集合,元素类型为Sting,元素具有唯一性, 不能重复。
  • 每个元素都会关联–个double类型的分数score(表示权重),可以通过权重的大小排序,元素的score可以相同。

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

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

相关文章

TSINGSEE青犀智慧工厂视频汇聚与安全风险智能识别和预警方案

在智慧工厂的建设中,智能视频监控方案扮演着至关重要的角色。它不仅能够实现全方位、无死角的监控,还能够通过人工智能技术,实现智能识别、预警和分析,为工厂的安全生产和高效运营提供有力保障。 TSINGSEE青犀智慧工厂智能视频监…

【Leetcode】331. 验证二叉树的前序序列化

文章目录 题目思路代码复杂度分析时间复杂度空间复杂度 结果总结 题目 题目链接🔗 序列化二叉树的一种方法是使用 前序遍历 。当我们遇到一个非空节点时,我们可以记录下这个节点的值。如果它是一个空节点,我们可以使用一个标记值记录&#x…

前端 - 基础 表单标签 - 表单元素 input - (name Value checked maxlength )属性详解

目录 name 属性 Value 属性 Checked 属性 Maxlength 属性 场景问答 # <input> 标签 除了 type 属性外&#xff0c;还有其他常用属性 >>> name 属性 在上一节 我们遇到的 单选按钮 &#xff0c;为什么 本应该 多选一 结果成了 多选多的问题 就…

HashMap考点相关源码解析

参考资料&#xff1a; HashMap超详细源码解析 - 掘金 HashMap常见面试题_hashmap面试题-CSDN博客 详解&#xff1a;HashMap红黑树的阈值为什么是8&#xff1f;_hashmap 红黑树阈值为什么是8-CSDN博客 史上最全HashMap源码整理-CSDN博客 HashMap源码和实现原理_hashmap源码…

10个最佳3D角色下载站

每个人都喜欢免费的东西。 无论是免费的 3D 角色还是游戏资产&#xff0c;我们都喜欢它们。 以下是可以为你的游戏获取免费 3D 角色的前 10 个网站的列表。 你可以将它们用于多种用途&#xff0c;例如 3D 打印或动画剪辑。 如果需要将下载的3D角色转化为其他格式&#xff0c;可…

基于springboot的房屋租赁系统平台

功能描述 流程&#xff1a;房主登陆系统录入房屋信息》发布租赁信息&#xff08;选择房屋&#xff09;》租客登陆系统浏览租赁信息》和房主联系、看房&#xff08;根据租赁信息单的电话线下沟通&#xff09;》房主发起签约&#xff08;生成邀请码&#xff09;》租客登陆系统根…

大模型实时打《街霸》捉对PK,GPT-4居然不敌3.5,新型Benchmark火了

源自&#xff1a;量子位 作者&#xff1a;陈哲涵 黎学臻 考验AI的动态决策力 第一个挑战是定位人物在场景中的位置&#xff0c;通过检测像素颜色来判断。 正如开发者所说&#xff0c;想要赢&#xff0c;要在速度和精度之间做好权衡。 “人工智能技术与咨询” 发布

朵米3.5客服系统源码,附带系统搭建教程

朵米客服系统是一款全功能的客户服务解决方案&#xff0c;提供多渠道支持&#xff08;如在线聊天、邮件、电话等&#xff09;&#xff0c;帮助企业建立与客户的实时互动。该系统具有智能分流功能&#xff0c;可以快速将客户请求分配给适当的客服人员&#xff0c;提高工作效率。…

RabbitMQ高级笔记

视频链接&#xff1a;【黑马程序员RabbitMQ入门到实战教程】 文章目录 1.发送者的可靠性1.1.生产者重试机制1.2.生产者确认机制1.3.实现生产者确认1.3.1.开启生产者确认1.3.2.定义ReturnCallback1.3.3.定义ConfirmCallback 2.MQ的可靠性2.1.数据持久化2.1.1.交换机持久化2.1.2.…

Python疑难杂症(14)---Numpy知识集合(二)学习Python的NUMpy模块的定向取值、聚合分析函数、矩阵运算等

4、索引取值 像对 python 列表那样进行切片&#xff0c;对 NumPy 数组进行任意的索引和切片&#xff0c;取得数组或者单个的元素值。 arr1np.array([1,2,3,4,5,6,7]) print(arr1) print(arr1[5]) print(arr1[2:4]) 输出&#xff1a;[1 2 3 4 5 6 7] 6 [3 4] B np.arra…

如何分析现货白银的行情?2个工具的介绍

现在给投资者拿出一段现货白银行情&#xff0c;投资者会如何分析&#xff1f;怎么找到其中的机会呢&#xff1f;相信有不少人对此还是不甚了解。有的投资者平常看书学得头头是道&#xff0c;但是一碰到实际行情就懵了&#xff0c;这都是没有好好掌握如何分析现货白银行情的方法…

VScode debug python(服务器)

方法一&#xff1a; 创建launch.json文件&#xff1a; launch.json文件地址&#xff1a; launch.json文件内容&#xff1a; {"version": "0.2.0", //指定了配置文件的版本"configurations": [{"name": "Python: Current File&…

WordPress外贸建站Astra免费版教程指南(2024)

在WordPress的外贸建站主题中&#xff0c;有许多备受欢迎的主题&#xff0c;如Avada、Astra、Hello、Kadence等最佳WordPress外贸主题&#xff0c;它们都能满足建站需求并在市场上广受认可。然而&#xff0c;今天我要介绍的是一个不断颠覆建站人员思维的黑马——Astra主题。 原…

【Javascript 漫游】【050】数据类型 Symbol

文章简介 本篇文章为【JavaScript 漫游】专栏的第 050 篇文章&#xff0c;对 ES6 规范新增的 Symbol 数据类型的知识点进行了记录。 概述 ES5 的对象属性名都是字符串&#xff0c;这容易造成属性名的冲突。比如&#xff0c;我们使用了一个他人提供的对象&#xff0c;但又想为…

ts 中数据约束类型

在 swagger 等接口文档中&#xff0c;查看 json代码&#xff0c;复制 将其导入到 json.cn&#xff0c;便于查看 在api文件夹下&#xff0c;新建一个定义ts类型的文件 type.ts。 定义数据类型 ---> export interface Bbb {} 调用数据类型----> export type Xxx Bbb[]…

多导购分摊业绩比例

业务场景&#xff1a; 开单是多个销售参与开单的&#xff0c;但是每个人贡献不一致&#xff0c;所以分摊的业绩比例不一致&#xff0c;总业绩比为100%。 //点击按钮&#xff0c;弹窗 <image bindtap"handleAddsales" src"/images/add.png" style"…

mongodb sharding分片模式的集群数据库,日志治理缺失导致写入数据库报错MongoWriteConcernException的问题总结(下)

一、接着上文 上文介绍了mongodb sharding的分片集群搭建&#xff0c;本文侧重于讲述日志治理。 这里使用linux自带的日志治理工具logrotate&#xff0c;无论是哪个端口的进程&#xff0c;其日志治理方式类似。 查看/data目录下的文件大小&#xff0c; du -hs *二、Logrota…

应用方案 | 内置ALC的音频前置放大器D2538A和D3308芯片

一、应用领域 D2538A和D3308是芯谷科技推出的两款内置ALC&#xff08;音频限幅器&#xff09;的前置音频放大器芯片&#xff0c;其中D2538A为单通道&#xff0c;D3308为双通道&#xff0c;它特别适用于胎心仪、个人医疗防护、立体声收录机、盒式录音机等涉及音频放大与限幅的产…

算法——矩阵,被围绕的区域

. - 力扣&#xff08;LeetCode&#xff09; 最开始也是考虑使用dfs&#xff0c;对于矩阵中的每个点&#xff0c;如果能到达边界的O&#xff0c;则跳过继续dfs。否则如果上下左右四个方向都无法到达边界的O&#xff0c;则说明当前的无法到达&#xff0c;在一个set中记录他的行数…

聚焦后成本时代赢销之道 纷享销客2024西北客户大会西安成功举办

纷享销客2024年西北客户大会西安站成功举办&#xff01;此次大会以《后成本时代的赢销之道》为主题&#xff0c;吸引了百余位客户及合作伙伴参会。 纷享销客创始人兼CEO罗旭发表演讲&#xff0c;呼吁一起凝心聚力&#xff0c;共创未来。纷享销客产品副总裁&制造行业中心总…