七天玩转Redis | Day1 Redis认识与环境配置
Posted diviner_s
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了七天玩转Redis | Day1 Redis认识与环境配置相关的知识,希望对你有一定的参考价值。
文章目录
一、Redis是啥?
Redis是一个非关系型数据库!!!
跟NMongeDB一样都是非关系数据库。
而我们熟悉的mysql、SQL Server则是关系型数据库!
小概念:关系型数据库与非关系型数据库的区别
- 存储方式不同:关系数据库喂表格形式,非关系数据库为文档或图结构
- 扩展方式不同:关系数据库可纵向扩展,可提高处理能,非关系数据库喂天然分布式,通过更多的数据服务器来分担负载
- 事务处理支持不同:关系数据库善于处理事务原子性细粒控制,方便事务回滚,非关系数据库着重于处理大数据。且一般不保证遵循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)做数据缓存,在查询数据库之前,先去Redis中查找缓存,可以减少查阅数据库的时间
2)秒杀系统 - 丰富的数据格式
1)省市区表、字典表、地图站点
2)Set集合,可用于查找两个人的共同好友 - 单线程
1)分布式锁 - 自动过期
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认识与环境配置的主要内容,如果未能解决你的问题,请参考以下文章