Redis五种数据类型及命令操作(一)

🎈个人公众号:🎈 :✨✨✨ 可为编程✨ 🍟🍟
🔑个人信条:🔑 知足知不足 有为有不为 为与不为皆为可为🌵
🍉本篇简介:🍉 本篇记录Redis五种数据类型及命令操作,如有出入还望指正。

概述

回我们介绍了Redis的部署及简单的原理性介绍,今天总结一下Redis的数据类型以及操作命令包括String、List、Set,下一篇为Hash和ZSet,喜欢的记得点赞收藏。这里说的数据类型是value的数据类型,key的类型都是字符串。

5种数据类型:

  • redis字符串(String)

  • redis列表(List)

  • redis集合(Set)

  • redis哈希表(Hash)

  • redis有序集合(Zset)

这里我采用的Docker容器化部署Redis,后面会单独出一篇文章详细介绍容器化Redis的部署和操作文章。首先连接并登录Redis,执行以下命令:

redis-cli -h host -p port -a passwordredis-cli -h 192.168.30.198 -p 6379 -a 1234 //这是我本地IP
root@391f6fd11521:/data# redis-cli -h 192.168.30.198 -p 6379 -a 1234Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.192.168.30.198:6379>

提示我们直接使用密码形式是不安全的,直接忽略即可,因为我们一般操作Redis都是在程序中采用,将密码配置在项目的配置文件当中,诚然在实际的生产环境中不能将Redis密码设置的这么简单,因为很可能被不法分子将你的Redis当成肉鸡,攻击者可以通过向Redis发送大量的请求,导致其负载过高,进而使Redis崩溃。

Redis通用命令

通用Redis操作命令

  • keys *:查看当前库所有的key

  • exists key:判断某个key是否存在 0表示不存在 1表示存在

192.168.30.198:6379> exists kewei(integer) 0192.168.30.198:6379> set kewei keweibianchengOK192.168.30.198:6379> exists kewei(integer) 1
  • type key:查看你的key是什么类型

192.168.30.198:6379> type keweistring192.168.30.198:6379>
  • del key:删除指定的key数据

  • unlink key:根据value删除非阻塞删除,仅仅将keys从keyspace元数据中删除,真正的删除会在后续异步中操作。

192.168.30.198:6379> unlink kewei(integer) 1192.168.30.198:6379> get kewei(nil)192.168.30.198:6379>
  • expire key 10:为指定的key设置有效期10秒

  • ttl key:查看指定的key还有多少秒过期,-1:表示永不过期,-2:表示已过期

192.168.30.198:6379> set kewei keweibianchengOK192.168.30.198:6379> ttl kewei(integer) -1192.168.30.198:6379> ttl kewei(integer) -1192.168.30.198:6379> expire kewei 10(integer) 1192.168.30.198:6379> ttl kewei(integer) 7192.168.30.198:6379> ttl kewei(integer) 6192.168.30.198:6379> ttl kewei(integer) 5192.168.30.198:6379> ttl kewei(integer) 4192.168.30.198:6379> ttl kewei(integer) 3192.168.30.198:6379> ttl kewei(integer) 2192.168.30.198:6379> ttl kewei(integer) 1192.168.30.198:6379> ttl kewei(integer) 0192.168.30.198:6379> ttl kewei(integer) -2
  • select dbindex:切换数据库【0-15】,默认为0

192.168.30.198:6379> select 6OK192.168.30.198:6379[6]>
  • dbsize:查看当前数据库key的数量

192.168.30.198:6379> dbsize(integer) 3532192.168.30.198:6379>
  • flushdb:清空当前库

  • flushall:通杀全部库

Redis字符串(String)

简介

String是Redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。String类型是二进制安全的。意味着Redis的string可以包含任何数据。比如jpg图片或者序列化的对象。同时String类型是Redis最基本的数据类型,一个Redis中字符串value最多可以是512M大小的字符串。

这篇文章将近2W字,我真的不想再排版了,需要的小伙伴直接看我公众号上的这篇文章:Redis五种数据类型及命令操作(一),都快把我写废了,整理不易,望点赞、关注、收藏。干就完了!!

图片

Redis概述和安装

IOC容器创建bean实例的4种方式

由表及里分析Spring-IOC容器始末

Spring中的核心概念

关于高并发你必须知道的几个概念

线程的创建方式对比与线程池相关原理剖析

图片

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

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

相关文章

[BJDCTF2020]Easy MD5 1

题目环境: 尝试了SQL注入、命令执行等都不行 点击提交并burp进行抓包Repeater进行重放这里看到了内置的SQL语句select * from admin where passwordmd5($pass,true) 发现传进去的值会进行md5加密 这里看了大佬们的解释 ffifdyop绕过,绕过原理是&#xff…

计算机网络期末复习-Part3

1、rdt1.0,rdt2.0,rdt3.0的底层信道模型 RDT 1.0: 完全可靠的底层信道,没有比特差错,也没有分组丢失。 RDT 2.0: 具有比特差错的底层信道,有比特差错,但没有分组丢失。 RDT 3.0: 具有差错和丢包的底层信道…

聊聊性能测试的左移右移

前面的文章中,分享过我对于测试左移右移的一些思考和实践方法。有同学在后台留言问我:常规的性能测试一般都是在测试阶段集成测试时候才开始介入,很容易测试时间不够,可不可以借鉴测试左移右移的思路,更早的介入和发现…

实战Leetcode(三)

Practice makes perfect! 实战一: 带环问题其实我们小学时就接触过,就比如在操场上比赛跑步的追击问题,这里也是一样,如果我们定义两个指针,一个快指针,一个慢指针,快指针走的快&…

Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException:

错误描述如下所示: 我们将错误拉到最下面如下所示为导致异常的原因: Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type com.example.reviewmybatisplus.Service.UserService available: expec…

基于Mahony互补滤波的IMU数据优化_学习笔记整理

这周自己被安排进行优化软件 IMU 姿态解算项目,之前自己只简单了解四元数,对IMU数据处理从未接触,通过这一周的学习感觉收获颇丰,在今天光棍节之际,,,用大半天的时间对这一周的收获进行整理&…

SwiftUI 如何保证 Text 中字符数量相等的字符串显示宽度一定相同?

0. 问题现象 在 SwiftUI 中我们往往需要将内容相似的字符串展列出来给用户比较,这些字符串内容各有不同但字符数量始终是相等的,我们希望它们的显示宽度始终保持一致: 如上图所示:即使是等宽字符组成的字符串在字符数量相等时它们的显示宽度仍然可能不一致。但演示中最底部…

迷雾系统-人物驱散迷雾

使用linerRender,将人物移动数据动态添加进去,同样是特殊层级让FogCamera渲染 EndCapVertices的数量越多,矩形就变为一个椭圆形的形状,更适合圆形视野探索 当拐点的两个点距离太近,LineRender会发生扭曲,解决方案是在…

14 # 手写 debounce 防抖方法

什么是防抖 防抖: n 秒后再去执行该事件,若在 n 秒内被重复触发,则重新计时,这个效果跟英雄联盟里的回城技能差不多。 本质上是优化高频率执行代码的一种手段,目的就是降低回调执行频率、节省计算资源。 应用场景: …

灵活用工仿boss直聘招聘系统劳务系统源码

灵活用工仿boss直聘招聘系统劳务系统 开发语言: 后台:phpmysql,fastadmin框架 前端:vue,Uniapp 功能介绍: 1.登录 账号密码登录,微信手机号授权登录 2.首页:定位功能&#xf…

2023最新软件测试面试300问

一、Linux系统应用和环境配置 1、Linux系统的操作命令给我说10个,一般用什么工具远程连接Linux服务器? 2、Linux中的日志存储在哪里?怎么查看日志内容? 3、Linux中top和ps命令的区别? 4、Linux命令运行的结果如何写…

《013.Springboot+vue之旅游信息推荐系统》【前后端分离有开发文档】

《013.Springbootvue之旅游信息推荐系统》【前后端分离&有开发文档】 项目简介 [1]本系统涉及到的技术主要如下: 推荐环境配置:idea jdk1.8 maven MySQL 前后端分离; 后台:SpringBootMybatisMySQL; 前台:Vue; [2]功能模块展…

暖手宝+充电宝设计方案 可实现快速升温和充电 低成本充电电流可选

充电暖手宝因为它的便携性,既能供暖又能当充电宝使用而备受人们喜爱。是冬天暖手供暖的必备神器。 目前,市场常见的暖手宝大致有三个类型,分别是加热水的热水袋、通过化学反应放热的铁粉袋子和锂电供电的智能暖手宝。与常见的暖手宝不同&…

如何将BMP图片批量转为PNG透明图片,并去掉BMP黑色背景

将BMP图片批量转为PNG透明图片,并去掉BMP黑色背景,这里推荐一款软件bmp2png,关键是免费的。截图如下: 这个小软件不仅可以将bmp图片批量转为png图片,而且还增加了压缩功能,导出png图片时压缩导出图片&#…

order by的注入与Insert ,update和delete注入

order by的注入 Insert ,update和delete注入

告别龟速,从GitHub快速下载项目的技巧分享,简单又高效!

《博主简介》 小伙伴们好,我是阿旭。专注于人工智能AI、python、计算机视觉相关分享研究。 ✌更多学习资源,可关注公-仲-hao:【阿旭算法与机器学习】,共同学习交流~ 👍感谢小伙伴们点赞、关注! 《------往期经典推荐--…

Linux中的粘滞位

目录 粘滞位1、作用2、为什么添加粘滞位3、演示粘滞位的使用方法和效果 粘滞位 1、作用 为了多人协作写进行文件创作时,other用户没有办法将文件删除,只有超级管理员、该目录的所有者、该文件的所有者他们可以删除。 2、为什么添加粘滞位 你想在进行…

Leetcode-145 二叉树的后序遍历

递归 /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { this.val val; }* TreeNode(int val, TreeNode left, TreeNode right) {* this…

开源绘画krita中的笔刷压感开启技巧

一、问题描述 之前用过高漫的绘图板,在krita中没有效果, 原来是因为压感没有开启。方法如下。 二、解决方法 如下图点击笔刷设置按钮,打开 笔刷编辑器,之后如图顺序,从左栏点击笔刷控制属性“大小”,之…

Python学习笔记--自定义类型的枚举

三、自定义类型的枚举 但有些时候我们需要控制枚举的类型,那么我们可以 Enum 派生出自定义类来满足这种需要。通过修改上面的例子: #!/usr/bin/env python3 # -*- coding: UTF-8 -*- from enum import Enum, uniqueEnum(Month, (Jan, Feb, Mar, Apr, M…