Redis | 非关系型数据库Redis的初步认识

news2024/9/22 15:36:12

本节内容相对理论,着重看基础通用命令这一节

Redis 非关 kv型{字典}

    • 概念
    • 应用
    • ubuntu安装
      • 配置
    • windows
      • 添加密码
    • 可能问题【ubuntu】
      • 远程连接
    • 基础通用命令 ⭐

概念

  • 特点:
    1、开源的,使用C编写,基于内存且支持持久化
    2、没有表 支持数据类型丰富,字符串strings,散列hashes,列表lists集合sets,有序集合sorted sets等等
    3、支持多种编程语言(C C++Python Java PHP.)
    4、单进程单线程

1、持久化
将内存中数据保存到磁盘中,保证数据安全,方便进行数据备份
和恢复
2、过期键功能
为键设置一个过期时间,让它在指定时间内自动删除 <节省内存空间>

音乐播放器,日播放排名,过期自动删除

3、事务功能
弱事务型的数据库,只是具备简单的事务功能
4、主从复制
如何让redis保持高可用状态,官方提供主从搭建方案
5、Sentinel哨兵
在搭配了基础的主从结构后,哨兵可做到自动故障转移

每秒处理请求的数量是衡量服务器性能的一个指标

  • 对比

​ 1、MySQL:关系型数据库,表格,基于磁盘,慢
​ 2、MongoDB:键值对文档型数据库,值为类似JSON文档,数据结构相对单一
​ 3、Redis的诞生是为了解决什么问题??解决硬盘IO带来的性能瓶颈

应用

1.缓存
做为缓存存储介质,此业务场景最为常见;查询优先走redis,没有则走mysql;可有效的降低mysqla查询压力
2.并发计数
由于redis本身是单进程单线程的,可以有效解决并发请求计数场景;例如微博点赞
3.排行榜
各大实时排行榜-如电商/游戏中的排行
4.生产者消费者模型
从当生产者消费者模型的中间层;生产者可将任务分发给redis,消费者从redis中获取任务

ubuntu安装

在这里插入图片描述

配置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

windows

在这里插入图片描述

  • 要点
    ·redis.windows.conf·修改完自己想要的配置后,【如 增加密码】一定要进行服务重启
    在这里插入图片描述

添加密码

在这里插入图片描述

每次修改 重新启动服务

在这里插入图片描述

可能问题【ubuntu】

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

远程连接

在这里插入图片描述

基础通用命令 ⭐

通用命令数据类型没有关系【也就是 字符串strings,散列hashes,列表lists,集合sets,有序集合sorted sets】
redis有数据库的概念 没有表的概念

  • select number
    说明:切换数据库(默认redis有16个数据库,0-15为具体数据库的
    编号,默认进入redis.为db0)

在这里插入图片描述

默认是0库
在这里插入图片描述

  • info
    说明:查看redis服务的整体情况

info CPU

  • keys 表达式

说明:查找所有符合给定模式的key

样例:
KEYS*匹配数据库中所有key.
KEYS h?llo匹配hello,hallo和hxllo等。
KEYS h*llo匹配hllo和heeeeello等。
特殊说明:正式环境中,请勿使用此命令;由于redis单进程单线程当key很多时,当前命令可能阻塞redis

在这里插入图片描述20240822212308154.png&pos_id=img-7HveESQn-1724467710035)

  • type key
    说明:返回当前键的数据类型

  • exists key
    说明:返回当前键是否存在
    返回值:1代表当前key存在;0代表当前key不存在

  • del key
    说明:删除key

  • rename key newkey
    说明:重命名当前key的名字

  • flushdb
    说明:清除当前所在数据库数据

  • flushall
    说明:清除所有数据库数据

在这里插入图片描述

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

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

相关文章

ssrf例题分析

我们第一步先在ubuntu中解压web-ssrfme.zip&#xff0c;更新镜像后重启容器。 我们可以看到代码中成功拉取到ssrfme镜像 ig(preg_match(/file\:\/\/&#xff5c;dict\:\/\/.&#xff5c;\.\.\/&#xff5c;127.0.0.1&#xff5c;localhost/is,$url,$match)) 使用端口访问文件&…

【Linux系列】SH 与 BASH 的区别:深入解析与使用案例

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

Leetcode JAVA刷刷站(93)复原IP地址

一、题目概述 二、思路方向 为了解决这个问题&#xff0c;我们可以使用回溯算法。回溯算法在这里非常适用&#xff0c;因为我们需要尝试在字符串中的不同位置插入点&#xff08;.&#xff09;来分割出可能的IP地址段&#xff0c;并且需要验证每个段是否满足条件&#xff08;即…

如何使用ssm实现铁岭河医院医患管理系统+vue

TOC ssm077铁岭河医院医患管理系统vue 系统概述 进过系统的分析后&#xff0c;就开始记性系统的设计&#xff0c;系统设计包含总体设计和详细设计。总体设计只是一个大体的设计&#xff0c;经过了总体设计&#xff0c;我们能够划分出系统的一些东西&#xff0c;例如文件、文…

从web.xml动态读取sunspringmvc.xml文件

文章目录 1.问题分析1.SunWebApplicationContext.java 中sunspringmvc.xml是写死的2.但是web.xml已经配置了init-param&#xff0c;所以应该是可以读取的 2.具体实现1.SunDispatcherServlet.java 得到ServletConfig传递给Spring容器完成初始化2.SunWebApplicationContext.java …

C_03 函数学习

函数 优点&#xff1a; 降低代码耦合度降低代码冗余度提高代码复用率提高代码可读性 思想&#xff1a; 封装【包装】 声明&#xff1a; 语法&#xff1a; extern 函数名(形参列表)&#xff1b;// 注意&#xff1a;此时 形参列表中变量名可以忽略不写&#xff1b;定义&#xff1…

2024.8.26

一、对于第三模态加入对于模型性能的影响 yes/no other num 尝试通过 1、删去第一次反向传播时第三模态的梯度更新 &#xff08;1&#xff09;第三次反向传播会再进行一次更新 &#xff08;2&#xff09;阻止模型频繁的学习训练样本 2、取消第三模态共享头部更新时的权重修正&…

Vue.js实战教程:如何一步步构建HSK在线学习平台

✍✍计算机毕业编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java、…

3ds Max 2025新增功能、安装教程及下载

3ds Max 2025 引入了一些新的功能和改进&#xff0c;提升了建模、动画和渲染的效率&#xff1a; 增强的建模工具&#xff1a;增加了新的多边形建模和修改器工具&#xff0c;支持更复杂的几何形状和更高效的建模流程。 改进的材质和渲染&#xff1a;引入了新的材质类型和改进的…

05.C++类和对象(下)

1.再探构造函数 • 之前我们实现构造函数时&#xff0c;初始化成员变量主要使用函数体内赋值&#xff0c;构造函数初始化还有一种方式&#xff0c;就是初始化列表&#xff0c;初始化列表的使用方式是以一个冒号开始&#xff0c;接着是一个以逗号分隔的数据成员列表&#xff0c…

基于springboot+vue+uniapp的短文写作竞赛管理系统小程序

开发语言&#xff1a;Java框架&#xff1a;springbootuniappJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包&#…

Maven的配置文件pom.xml标签详解(含常用plugin)

一、什么是pom.xml pom.xml是Maven项目的核心配置文件&#xff0c;它是 项目对象模型 - Project Object Model&#xff08;POM&#xff09; 的缩写。POM定义了项目的所有属性&#xff0c;包括项目的名称、版本、依赖关系、构建配置等。使用pom.xml&#xff0c;我们可以轻松地管…

pwm子系统

一、系统框架 内核的PWM core&#xff0c;向下对实际pwm控制器驱动&#xff0c;提供了pwm_chip,soc厂商编程控制器驱动&#xff0c;只需注册结构体&#xff0c;配置好private_data&#xff0c;实例化pwm_ops操作&#xff0c;编写具体函数即可。 向上为其他驱动调用提供了统一的…

【Toyota】 Avalon

文章目录 1、外观2、内饰3、2024 款配置对比2024 2.0L CVT 进取版 vs 2024 2.0L CVT 臻选版2024 2.0L CVT 臻选版 vs 2024 2.0L CVT 豪华版2024 2.0L CVT 臻选版 vs 2024 智能电混双擎 2.0L E-CVT 臻选版 &#xff08;纯油 vs 油电混&#xff09;2024 智能电混双擎 2.0L E-CVT …

appium学习记录

免责声明 本文内容仅供参考&#xff0c;将appuim与爬虫技术相结合可能违反某些app的使用条款和法律法规。作者不对因此产生的法律问题或技术风险负责。建议读者在进行爬取操作前&#xff0c;充分了解相关法律法规并确保合规。 1、初识appium 背景&#xff1a;部分APP需要反编译…

云计算第二阶段---DBA Day05-DAY07

DBA Day05 这周的内容涉及到的是各类数据库的服务配置与数据的备份与恢复操作. 环境准备: 设置 ip 地址 和主机名 安装mysql,mysql-server --->启动 yum -y install mysql mysql-server #装mysql环境包 systemclt start mysqld #启动服务 exit …

hackit 2018

源代码 const express require(express) var hbs require(hbs); var bodyParser require(body-parser); const md5 require(md5); var morganBody require(morgan-body); const app express(); var user []; //empty for nowvar matrix []; for (var i 0; i < 3; …

PySide6入门教程之六 | Main Window、Widge、Dtialog三大类型窗口的使用

前言 PySide6 是用于Python的一个跨平台GUI库&#xff0c;它提供了Qt框架的Python绑定。在PySide6中&#xff0c;QMainWindow,QWidget, 和 QDialog 都是非常常用的类&#xff0c;它们各自有特定的应用场景和功能。 &#x1f680;&#x1f680;&#x1f680; Pyside6实战教程专…

存储与传输/大小端字节序的概念、决定因素、给编程带来的困扰

文章目录 概述大小端分歧的类比为什么要关注字节序NET网络字节序什么时候必须转换字节序大小端字节序哪个优秀判断系统字节序类型字节序类型转换大小端内存监视和调试 谁决定了大小端模式CPU架构决定大小端操作系统影响大小端&#xff1f;编译器也影响大小端&#xff1f;可配置…

kafka发送消息-分区策略(消息发送到哪个分区中?是什么策略)

生产者发送消息的分区策略&#xff08;消息发送到哪个分区中&#xff1f;是什么策略&#xff09; 1、默认策略&#xff0c;程序自动计算并指定分区1.1、指定key&#xff0c;不指定分区1.2、不指定key&#xff0c;不指定分区 2、轮询分配策略RoundRobinPartitioner2.1、创建配置…