redis基础知识(快速入门)

redis入门

概述

首先redis是一个基于内存的key-value型数据库。

例如

keyvalue
id1
namesfes
  • 基于内存存储,读写性能高

  • 适合存储一些热点数据(热点商品,新闻等),也就是说一些在短时间内有大量用户访问的数据

命令行

服务端启动命令

redis-server.exe redis.windows.conf

客户端启动命令

redis-cli.exe //不带参数启动
redis-cli.exe -h localhost -p 6379 -a password 
//-h指定IP -p指定端口号 -a指定密码

查询里边有哪些数据

keys *

redis常用数据类型

  • 字符串string

  • 哈希hash

  • 列表list

  • 集合set

  • 有序集合 sorted set/zset

    字符串

    普通字符串,redis中最简单的数据类型

    哈希hash

    也叫散列,类似于java中的hashmap,基本就有点面向对象的思想了

    列表

    按照插入顺序进行排序,里边可以有重复元素

    集合

    无序集合,没有重复元素

    有序集合

    集合中每个元素关联一个分数(score),根据分数升序排序,没有重复元素

    redis常用命令

    插入数据要看数据类型,不同的数据类型的插入命令也是不一样的。

    字符串操作命令

    插入

    set key value //这是格式
    

    比如我要插入一个名字是sfes

    set name sfes
    

    取值

    get key
    

    比如我要把刚才插入的取出来

    get name
    

    插入的同时指定过期时间

    最简单的应用场景就是获取验证码,比如获取的验证码有效期是1分钟,就可以给他设置一分钟的过期时间

    setex key seconds value//格式
    set code 60 1234//实例
    

    当某个key不存在的时候再去设置他的值

    setnx key value
    
    哈希操作命令

    hash是一个string类型的field和value的映射表,适合存储对象

    hset key field value //将哈希表中key中字段field的值设置为value
    hget key field // 取出哈希表中key中字段field的值
    hdel key field // 删除哈希表中key中的field字段
    hkeys key //获取哈希表中key的所有字段
    hvals key // 获取哈希表中key的所有值
    
    列表操作命令

    redis列表是最简单的字符串列表,按照插入的顺序进行排序。

    lpush key value1 [value2] //从左侧插入数据
    lrange key start stop //获取列表中指定范围内的元素
    rpop key// 移除并获取列表的最后一个元素
    llen key // 获取列表长度
    
    //给mylist插入三个数据a b c
    lpush mylist a b c
    
    lrange mylist 0 -1 //获取列表中所有元素
    
    集合操作命令

    redis中的set是string类型的无序集合,集合成员是唯一的,不重复

    sadd key member1 [member2]//向集合中插入一个或多个元素
    smembers key //返回集合中的所有成员
    scard key //获取集合中成员数量
    sinter key1 [key2] //返回给定集合的交集
    sunion key1 [key2] //返回给定集合的并集
    srem key member1 [member2] //删除集合中的一个或多个元素
    
    有序集合操作命令

    redis中的有序集合是string类型元素的集合,不允许有重复元素,每个元素会关联一个double类型的分数。

    zadd key score1 member1 [score2 member2]//向有序集合中添加一个或多个元素
    zrange key start stop[withscores]//返回指定区间的元素[要不要带上分数]
    zincrby key increment member //有序集合中对指定成员的分数加上increment
    zrem key member [member...] //移出集合中一个或多个元素
    
    通用命令

    redis通用命令就是不分数据类型都可以使用的命令

    keys pattern //返回能匹配到pattern的key
    exists key //返回key是否存在
    type key //返回key的类型
    del key //删除某个key

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

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

相关文章

【C++】哈希(位图、布隆过滤器)

一、哈希的应用(位图和布隆过滤器) 1、位图(bitset) (1)位图概念 【题目】 给 40亿 个不重复的无符号整数,没排过序。给一个无符号整数,如何快速判断一个数是否在这 40亿 个数中。…

mysql 行转列 GROUP_CONCAT 试验

1.概要 很多时候需要用到行专列的方式做数据分析。比如对通讯数据的采集 数据采集结果如下: 变量值采集周期131251132272 我想要看的结果 变量1变量2采集周期351372 就是我想看到相关数据的周期变化情况。 2.试验 2.1创建数据如下(表名 tb5&…

发现有一个会Python的男友魅力值杠杠的!!!

Python能做什么? 可以做日常任务,比如自动备份你的MP3,可以做网站,很多著名的网站像知乎、YouTube就是Python写的, 可以做网络游戏的后台,很多在线游戏的后台都是Python开发的。 上面说的这些本人并没有实…

第98步 深度学习图像目标检测:SSD建模

基于WIN10的64位系统演示 一、写在前面 本期开始,我们继续学习深度学习图像目标检测系列,SSD(Single Shot MultiBox Detector)模型。 二、SSD简介 SSD(Single Shot MultiBox Detector)是一种流行的目标检…

.netcore 获取appsettings

我的开发环境是abpvnext net6.0 。 因为业务需要,从原来老项目net4.5工程里复制了一个报表导出的业务类到net6项目里面,但是他的获取appsettings的代码其实不用想都知道会报错。因为原来framwork时代获取appsettings的方法常见的是 System.Configura…

Dubbo配置注册中心设置application的name使用驼峰命名法可能存在的隐藏启动异常问题

原创/朱季谦 首先,先提一个建议,在SpringBootDubbo项目中,Dubbo配置注册中心设置的application命名name的值,最好使用xxx-xxx-xxx这样格式的,避免随便使用驼峰命名。因为使用驼峰命名法,在Spring的IOC容器…

嵌入式软件基础知识——1

目录 C语言中堆和栈的区别 局部变量和全局变量 指针数组、数组指针、指针函数、函数指针 什么时候使用线程和进程 三次握手 const和#define相比有哪些优点 封装、继承和多态 父进程和子进程 C语言中堆和栈的区别 存储内存不同。 管理方式不同。 空间大小不同。 能够产生…

jmeter使用beanshell

1.使用jar包需要将依赖和脚本放在安装路径下的lib/ext中,这样可以避免很多问题产生 pip3 install -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com allure_pytest-2.13.2-py3-none-any.whl 通过docker安装的Jenkins容器 需要再Jenkins…

ElasticSearch之cat anomaly detectors API

curl -X GET "https://localhost:9200/_cat/ml/anomaly_detectors?vtrue&pretty" --cacert $ES_HOME/config/certs/http_ca.crt -u "elastic:ohCxPHQBEs5*lo7F9"执行结果输出如下: curl -X GET "https://localhost:9200/_cat/ml/ano…

Java核心知识点整理大全13-笔记

Java核心知识点整理大全-笔记_希斯奎的博客-CSDN博客 Java核心知识点整理大全2-笔记_希斯奎的博客-CSDN博客 Java核心知识点整理大全3-笔记_希斯奎的博客-CSDN博客 Java核心知识点整理大全4-笔记-CSDN博客 Java核心知识点整理大全5-笔记-CSDN博客 Java核心知识点整理大全6…

深入ReentrantReadWriteLock(二)

四、读锁分析 4.1 读锁加锁流程概述 1、分析读锁加速的基本流程 2、分析读锁的可重入锁实现以及优化 3、解决ThreadLocal内存泄漏问题 4、读锁获取锁自后,如果唤醒AQS中排队的读线程 4.1.1 基础读锁流程 针对上述简单逻辑的源码分析 // 读锁加锁的方法入口 pub…

激光雷达报告:单月上车提前突破5万台关口!车企真实搭载「去伪存真」

高工智能汽车研究院监测数据显示,截至2023年9月,激光雷达已经连续2个月交付破5万台关口。 这也意味着,这一交付关口早于预期被突破。回溯来看,2023年6月,高工智能汽车研究院在第十四届智驾开发者大会上释放预测&#…

战地5无限序章(无法保存)的解决办法

启动游戏后,目录就会自动变成这样了,也不会无限循环了!

C++类与对象(5)—流运算符重载、const、取地址

目录 一、流输出 1、实现单个输出 2、实现连续输出 二、流输入 总结: 三、const修饰 四、取地址 .取地址及const取地址操作符重载 五、[ ]运算符重载 一、流输出 1、实现单个输出 创建一个日期类。 class Date { public:Date(int year 1, int month 1,…

践行“互联网+中药服务”理念,华润煎配中心打造智能代煎新模式

移动互联网时代,“互联网+”浪潮迭起,中药企业开始探索“互联网+中药服务”模式。 华润湖南医药有限公司(以下简称“华润湖南医药”)作为华润集团旗下华润湖南医药商业集团全资控股的大型医药企业&#xff…

SOEM主站开发篇(4):为APP程序添加人机交互功能

0 工具准备 1.SOEM-1.4.0源码(官网:http://openethercatsociety.github.io/) 2.Linux开发板(本文为正点原子I.MX6U ALPHA开发板) 3.交叉编译工具(arm-linux-gnueabihf-gcc) 4.cmake(版本不得低于3.9,本文为3.9.2) 5.Ubuntu 16.04(用于编译生成Linux开发板的可执行文…

Linux C++网络编程-王健伟

文章目录 1-1课程详细介绍1-2环境搭建详细介绍2-1nginx简介、选择理由、安装和使用2-2nginx整体结构、进程模型3-1学习nginx源码前的准备工作3-2nginx源码学法,终端和进程的关系说3-3信号的概念、认识、处理动作3-4Unix/Linux体系结构、信号编程初步3-5信号编程进阶…

你听过斯大林病毒吗?

相信不少小伙伴看过这种红眼特效,那么你知道这个特效最早出自哪里吗? 其实这个红眼病毒最早出于俄罗斯的电脑病毒斯大林,一旦电脑感染这个病毒,屏幕上就会出现自带一个红眼特效的斯大林人像,同时不断播放苏联国歌。 …

​Spring Boot 分片上传文件

在文件上传功能上,客户经常会问到文件上传大小的是否有限制或是上传大小能否设置,用户经常需要上传好几个G的资料文件,如图纸,视频等,并且需要在上传大文件过程中进行优化实时展现进度条, 进行技术评估后针…

基于侏儒猫鼬算法优化概率神经网络PNN的分类预测 - 附代码

基于侏儒猫鼬算法优化概率神经网络PNN的分类预测 - 附代码 文章目录 基于侏儒猫鼬算法优化概率神经网络PNN的分类预测 - 附代码1.PNN网络概述2.变压器故障诊街系统相关背景2.1 模型建立 3.基于侏儒猫鼬优化的PNN网络5.测试结果6.参考文献7.Matlab代码 摘要:针对PNN神…