Redis数据库系列(一)、Redis 入门

article/2025/11/1 17:22:35

第一章、Redis 入门

1.1、Redis简介

问题现象

  • 海量用户
  • 高并发(无法同时处理海量请求)

罪魁祸首——关系型数据库

  • 性能瓶颈:磁盘IO性能低下
  • 扩展瓶颈:数据关系复杂,扩展性差,不便于大规模集群

解决思路(引用Nosql型数据库)

  • 降低磁盘IO次数,越低越好 —— 内存存储
  • 去除数据间关系,越简单越好 —— 不存储关系,仅存储数据

1.2、Nosql型数据库

  • NoSQL:即Not-Only SQLF(f泛指非关系型的数据库),作为关系型数据库的补充。
  • 作用:应对基于海量用户和海量数据前提下的数据处理问题。
  • 特征:
  • 可扩容、可伸缩
  • 大数据量下高性能
  • 灵活的数据模型
  • 高可用
  • 常见的NoSQL数据库:
  • Redis
  • memcache
  • HBase
  • MongoDB

1.3、电商应用场景及解决方案

在这里插入图片描述

基本固定信息存放在MySQL中;
商品附加信息量过大存放在MongoDB中;
高频波动性信息(实时变动信息)存放在Redis中。

1.4、Redis概念及特征

  • 概念:
    Redis(Remote Dictionary Server)是用C语言开发的一个开源的高性能键值对(key-value)数据库。

  • 特征:

    • 数据间没有必然的关联关系
    • 内部采用单线程机制进行工作
    • 高性能。官方提供测试数据,50个并发执行100000 个请求,读的速度是110000 次/s,写的速度是81000次/s。
  • 多数据类型支持
     字符串类型 string
     列表类型 list
     散列类型 hash
     集合类型 set
     有序集合类型 sorted_set

  • 持久化支持。可以进行数据灾难恢复

1.5、Redis的应用

  • 为热点数据加速查询(主要场景),如热点商品、热点新闻、热点资讯、推广类等高访问量信息等
  • 任务队列,如秒杀、抢购、购票排队等
  • 即时信息查询,如各位排行榜、各类网站访问统计、公交到站信息、在线人数信息(聊天室、网站)、设 备信号等
  • 时效性信息控制,如验证码控制、投票控制等
  • 分布式数据共享,如分布式集群架构中的 session 分离
  • 消息队列
  • 分布式锁

1.6、Redis的下载与安装

  • Linux 版(适用于企业级开发)
     Redis 高级开始使用
     以4.0 版本作为主版本
     下载地址:http://redis.io/download,下载最新稳定版本。

  • Windows 版本(适合零基础学习)
     Redis 入门使用
     以 3.2 版本作为主版本
     下载地址:https://github.com/MSOpenTech/redis/tags

  • 安装
    Redis是绿色免安装的,下载后将压缩包解压到D盘(解压后最好将文件夹重命名为redis,为了方便起见)
    在这里插入图片描述

  • 其中核心文件:
    redis-server.exe —服务器启动命令
    redis-cli.exe —命令行客户端
    redis.windows.conf —redis核心配置文件
    redis-benchmark.exe —性能测试工具
    redis-check-aof.exe —AOF文件修复工具
    redis-check-dump.exe —RDB文件检查工具(快照持久化文件)

  • 启动Redis
    打开cmd窗口,cd 命令切换目录到 D:\redis 运行如下命令:

    redis-server.exe redis.windows.conf
    

    也可以创建一个集群,将该命令存入startRedis.bat中(放在redis解压目录中),这样以后启Redis就不用再输命令,直接双击startRedis.bat即可
    在这里插入图片描述
    如果想方便的话,也可以把 redis 的路径加到系统的环境变量里,这样就省得再输路径了,后面的那个 redis.windows.conf 可以省略,如果省略,会启用默认的服务器。启动之后,会显示如下界面:
    在这里插入图片描述
    这时候另启一个 cmd 窗口,上面的窗口不要关闭,不然就无法访问服务端了。
    切换到 redis 目录下运行:

    redis-cli.exe -h 127.0.0.1 -p 6379
    

    -h 代表连接服务器地址
    -p 端口号

    此时连接的是默认的Redis服务器,一般我们为了安全起见,会设置一个连接密码用于权限认证,在redis解压目录中找到redis.windows.conf配置文件用Notepad++打开,大概在443行,我们可以自定义一个密码,此处我设置为123456
    在这里插入图片描述
    此时关闭上面的窗口再次重新启动,可用命令redis-server.exe redis.windows.conf启动服务器,也可双击startRedis.bat启动,启动后如下图:
    在这里插入图片描述
    然后这时候再另启一个 cmd 窗口,上面的窗口不要关闭,不然就无法访问服务端了。
    切换到 redis 目录下运行:

    redis-cli.exe -h 127.0.0.1 -p 6379 -a 123456
    

    -h 代表连接服务器地址
    -p 端口号
    -a 密码
    在这里插入图片描述
    出现上述127.0.0.1:6379就说明客户端成功连接redis服务器。

当然上述客户端连接命令也可以做成批处理文件linkRedis.bat中(放在redis解压目录中),每次用的时候,先启动Redis服务器,然后在双击linkRedis.bat就可连接客户端进行操作了。
在这里插入图片描述

1.7、Redis的最基本操作

  • 功能:设置 key,value 数据(键值对)
    #信息添加格式
    set key value
    #设置键值(信息添加)
    set username zs
    #获取键值(信息查询)
    get username
    
    在这里插入图片描述
  • 清屏操作命令
    clear
    
  • 退出客户端命令
    quit
    exit
    <Esc>
    
  • 功能:获取命令帮助文档,获取组中所有命令信息名称
    help 命令名称
    help @组名
    help set 
    

http://chatgpt.dhexx.cn/article/90fk1Ox7.shtml

相关文章

如何学习Redis

掌握数据结构和缓存的基本使用方法 要想会用一种系统&#xff0c;我们首先要会一些基本操作。我们平时在开发业务系统时&#xff0c;或多或少地会把 Redis 当作数据库或缓存使用。Redis 也提供了非常丰富的数据结构&#xff0c;这也给我们的开发提供了极大的便利。 所以&…

Redis数据库✧入门篇

Redis数据库&#xff08;入门篇&#xff09; Redis数据库&#xff1a;非关系型数据库&#xff0c;即NoSql数据库&#xff0c;基于内存存储系统&#xff08;内存磁盘&#xff09;&#xff0c;其中有常用的五个数据类型&#xff1a;String&#xff0c;Hash&#xff08;键值对集合…

详细Redis入门教程

目录 1 Redis的前世今生 1.1 简介 1.2 应用场景 2 Redis下载及安装 2.1 下载及安装 3 Redis使用 3.1 数据类型 3.2 持久化 3.3 事务 3.4 脚本 语法 4 Redis集群 4.1 主从模式 4.2 Sentinel模式 1.哨兵模式集群架构 2.哨兵模式作用 3.哨兵模式工作过程 4.3 Cl…

Redis详解

转载&#xff1a;Redis 详解_罗志宏的博客-CSDN博客_redis详解 1. 什么是 Redis   Redis 是一个基于内存的高性能 key-value 数据库。是完全开源免费的&#xff0c;用C语言编写的&#xff0c;遵守BSD协议。 Redis 特点&#xff1a; Redis 是基于内存操作的&#xff0c;吞吐量…

Redis入门一:Redis实战读书笔记

Redis提供5种不同类型的数据结构&#xff0c;并存储键与5种不同类型的值之间的映射&#xff0c;各式各样的问题都可以自然地映射到这些数据结构上。通过复制、持久化和客户端分片等特性&#xff0c;可以将存储在内存的键值对数据持久化到硬盘&#xff0c;可以使用复制特性来扩展…

Redis数据库介绍

1 Redis简介 Redis&#xff0c;全称远程字典服务&#xff08;REmote DIctionary Server&#xff09;&#xff0c;是一个开源、基于内存、高性能、可数据持久化的key-value存储系统&#xff0c;遵守BSD协议&#xff0c;可用作数据库、缓存和消息中间件。 在Redis中文官网上是这…

redis详解(全)

学前小故事 数据库和缓存保证一致性小故事 windows && linux 安装redis redis 持久化 redis API 学前小故事 [我是redis] 你好&#xff0c;我是Redis&#xff0c;一个叫Antirez的男人把我带到了这个世界上。 说起我的诞生&#xff0c;跟关系数据库MySQL还挺有渊…

Redis 详解

文章目录 Redisredis 简介1. Redis 中的事务1.1 什么是事务&#xff1f;1.2 Redis 中的事务是怎么实现的&#xff1f;1.3 Redis 事务为什么不支持回滚&#xff1f;1.3.1 语法错误情况下的事务回滚状态1.3.2 类型错误情况下的事务回滚状态1.3.3 Redis事务不回滚总结 2. Redis 中…

Redis该怎么学?其实很简单,这份学习路线+资料+书单我全部贡献出来了!

前言 这绝对不是一篇水文&#xff0c;进来的兄弟们千万不要白嫖&#xff0c;真香警告⚠️。&#xff08;点赞&#xff01;&#xff01;&#xff01;&#xff09; 这篇文章很早前就打算写了&#xff0c;特地留到现在是因为我想把Redis系列的文章全部更完&#xff0c;能让需要的…

Redis入门官方文档

Redis资料 Redis官网:http://redis.io/ Redis官方文档:http://redis.io/documentation Redis教程:http://www.w3cschool.cn/redis/redis-intro.html Redis下载:http://redis.io/download redis英文文档 https://redis.io/topics/data-types redis中文文档 http://www.red…

Redis内存数据库必读的4本书

Redis从一个不为人熟知、只有少量应用的崭新数据库&#xff0c;逐渐变成了内存数据库领域的事实标准。时至今日&#xff0c;经过大量的实践应用&#xff0c;Redis简洁高效、安全稳定的特性已经深入人心。 无论是国内还是国外&#xff0c;从五百强公司到小型初创公司都在使用Re…

【好书推荐】Redis入门必备 | 《Redis实战》

一、Redis入门必备 你好&#xff0c;我是小雨青年&#xff0c;一名程序员。 今天为你推荐的书籍是《Redis实战》。 Redis作为一个内存数据库服务器&#xff0c;本书提供了大量讲解和用例。 本书的大部分用例是用Python编写的&#xff0c;希望你有一些Python语言基础。 本书…

Day768.大佬推荐的经典的Redis学习资料 -Redis 核心技术与实战

大佬推荐的经典的Redis学习资料 Hi&#xff0c;我是阿昌&#xff0c;今天学习记录的是关于经典的Redis学习资料。 一、经典书籍 在学习 Redis 时&#xff0c;最常见的需求有三个方面。 日常使用操作&#xff1a;比如常见命令和配置&#xff0c;集群搭建等&#xff1b;关键技…

qt QSettings

qt QSettings 用法总结 用户对应用程序经常有这样的要求&#xff1a;要求它能记住它的settings&#xff0c;比如窗口大小&#xff0c;位置&#xff0c;一些别的设置&#xff0c;还有一个经常用的&#xff0c;就是recent files&#xff0c;等等这些都可以通过Qsettings来实现。 …

QT中使用QSettings保存应用程序配置信息

一、问题描述 今天遇到一个问题&#xff0c;就是想实现一个软件&#xff0c;我上一次开启软件时候配置的IP地址以及&#xff0c;打开的文件路径&#xff0c;能够在我下一次打开软件时候自动写入上一次配置的信息&#xff0c;不需要再重新设置配置了。 二、解决方法 使用QT中的…

QSettings用法(例子)

用户通常打开程序&#xff0c;希望每次打开程序都能记住跨会话设置&#xff0c;比如&#xff08;窗口的大小位置&#xff0c;选项等&#xff09;; 窗口打开如果没有记住上次打开的记录&#xff0c;每次关闭它都会重复在同样位置同样大小&#xff0c;好比如手机格式化&#xff…

Qt使用QSettings读写ini文件

作者&#xff1a;billy 版权声明&#xff1a;著作权归作者所有&#xff0c;商业转载请联系作者获得授权&#xff0c;非商业转载请注明出处 QSettings 简介 QSettings 类提供了ini文件读写&#xff0c;注册表读写的功能 QSettings::Format有两种: QSettings::NativeFormat 在…

QSettings读写ini文件

QSettings简介 QSettings类提供了持久的独立于平台的应用程序设置。 用户通常希望应用程序能够跨会话记住它的设置(窗口大小和位置&#xff0c;选项等)。在Windows上&#xff0c;这些信息通常存储在系统注册表中&#xff0c;在macOS和iOS上则存储在属性列表文件中。在Unix系统…

Qt中使用QSettings读取配置文件注意事项

QSetting使用中的注意事项 QSetting为Windows、Linux和MacOS系统提供了统一的配置文件/注册表读取方式。 &#xff08;引用QtHelp的一句话&#xff1a;The QSettings class provides persistent platform-independent application settings.&#xff09; 但是在读取配置文件时…