七天玩转Redis | Day1 Redis认识与环境配置

Posted diviner_s

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了七天玩转Redis | Day1 Redis认识与环境配置相关的知识,希望对你有一定的参考价值。

文章目录

一、Redis是啥?

Redis是一个非关系型数据库!!!
跟NMongeDB一样都是非关系数据库。
而我们熟悉的mysql、SQL Server则是关系型数据库!


小概念:关系型数据库与非关系型数据库的区别

  1. 存储方式不同:关系数据库喂表格形式,非关系数据库为文档或图结构
  2. 扩展方式不同:关系数据库可纵向扩展,可提高处理能,非关系数据库喂天然分布式,通过更多的数据服务器来分担负载
  3. 事务处理支持不同:关系数据库善于处理事务原子性细粒控制,方便事务回滚,非关系数据库着重于处理大数据。且一般不保证遵循ACID原则(即原子性、一致性、隔离性、持久性)

概念是啥?直接上百度到的概念 /手打狗头

REmote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。
Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API。
Redis 通常被称为数据结构服务器,因为值(value)可以是字符串(String)、哈希(Hash)、列表(list)、集合(sets)和有序集合(sorted sets)等类型。

哎呦,看的我都头晕,直接上我的理解吧。。。
顾名思义,翻译到的意思:

他之所以叫远程字典服务器是因为他可以像我们查字典那样,先去找这个字对应的索引,一个索引对应一个字,而Redis的数据存储方式就类似于使用字典一样通过键查找值,结构是以key-value的形式存储的,key(键)–>“字典索引”,value(值)–>字典的字”。

Redis中数据的存储原理,其实就是一个一个的key-value键值对。因此Redis也被称为key-value数据库

非关系型数据库主要有四种数据存储类型:键值对存储(key-value),列存储数据库(column-oriented),文档型数据库(document store),图形数据库(graph database)。

Redis主要使用场景

Redis的使用场景往往是根据它的特点进行使用:

  1. 高性能高并发
    1)做数据缓存,在查询数据库之前,先去Redis中查找缓存,可以减少查阅数据库的时间
    2)秒杀系统
  2. 丰富的数据格式
    1)省市区表、字典表、地图站点
    2)Set集合,可用于查找两个人的共同好友
  3. 单线程
    1)分布式锁
  4. 自动过期
    1)做短信验证码
    2)具有时间限制的商品显示

二、基于Windows环境安装Redis

下载地址:
https://github.com/tporadowski/redis/releases
我们下载zip格式压缩包

解压后:

在Redis目录下打开cmd窗口:

输入如下命令:

redis-server.exe redis.windows.conf

启动,出现以下界面表示Redis安装成功!

注意!!!!这个命令窗口不能关闭,关闭则Redis服务停止!!
之后在Redis的相关操作时,上面这个窗口需要一直开着。

三、Redis常用命令

1)启动Redis客户端

依旧在Redis目录下再打开一个新的cmd窗口,运行下面命令:

redis-cli.exe -h 127.0.0.1 -p 6379
  • redis-cli.exe -p 6379 表示我们的Redis客户端界面
  • -h 表示IP地址,127.0.0.1为本地地址的意思
  • -p表示端口号,6379为Redis的默认地址

2) Redis常用命令解析

  • Redis数据库切换
    Redis默认是16个数据库,我们启动后,默认从第0个数据库开始,因此如果我们需要切换数据库,可以通过select index指令切换数据库
    我们输入select 5切换到5号数据库,如图操作:

  • 输入与获取数据
    由于Redis数据库是以key-value形式存储数据的,因此我们在输入数据的时候,需要以键值对形式输入。
    输入数据指令: SET key value

    key表示输入的值对应的索引
    value表示输入的值

    获取值的指令:GET key

    key表示之前输入的值对应的索引

    输入错误则返回null

  • 获取全部数据
    KEYS *
    注意该方法只能够获得所有数据的索引,不会显示对应的值

  • 清楚部分或全部数据
    只删除一个数据库中的全部数据:
    先使用select切换到对应的数据库,然后使用FLUSHDB指令即可

    清除所有数据库的数据:FLUSHALL指令,慎用!!!

  • 随机获取一个key
    在当前数据库中随意返回一个存在的key:
    RANDOMKEY指令

  • 获取指定key对应值的类型
    Redis中有五种基本数据类型,分别是Sting型、List型、Hash型、Set型、Zset型
    TYPE key指令
    比如我们现在要删除key为mykey2的索引,及其所对应的value,那么就可以直接使用下面的命令,如果删除成功,那么就会返回删除的键值对的个数,再次获取这个key就会返回null,如果这个key根本就不存在的话,则返回0.

  • 删除指定key及其value
    DEL key

以上是关于七天玩转Redis | Day1 Redis认识与环境配置的主要内容,如果未能解决你的问题,请参考以下文章

七天玩转Redis | Day1 Redis认识与环境配置

七天玩转Redis | Day1Redis认识与安装

七天玩转Redis | Day1Redis认识与环境配置

七天玩转Redis | Day1Redis认识与环境配置

七天玩转Redis | Day7 Redis常见面试题及课程总结

七天玩转Redis | Day7 Redis常见面试题及课程总结