目录
Redis
简介
一个开源的基于内存的数据存储系统
支持的数据类型
redis支持五种数据结构和五种高级数据类型
使用方式
redis的使用方式主要包含三种类型
1.CLI 命令行界面
就是通过Redis-CLI命令行工具来使用Redis
2.API 应用程序接口
就是通过Java或python等常用编程语言通过编程代码的方式来使用redis
3.图形用户界面GUI
就是通过一些图形化工具来使用redis 比如RedisInsight
优势
主要是redis性能极高,和其他数据库相比,性能差了一个数量级
安装配置
安装方式
Mac、Linux
使用Homebrew或者apt这种包管理器来执行一条Install命令即可
brew install redis
or
yum install redis
Windows
3种方式
1.WSL
在Windows里面通过WSL功能安装一个Linux系统,然后在linux系统中安装Redis
2.通过Docker安装
安装Docker,从DockerHub或者其他地方下载一个Redis的镜像,然后通过镜像来运行Redis
docker search redis
docker pull redis
3.通过传统的Windows安装文件来安装(最简单,但是版本老5.0。最新版推荐前两种方式)
Redis-x64-5.0.141.msi
启动服务
Mac、Linux
打开终端窗口,输入redis-server命令即可
redis-server
Windows
打开PowerShell或者命令终端窗口,执行redis-erver.exe命令即可
redis-erver.exe
回车后即可看见redis的版本号和端口号,表明redis启动成功。
redis启动之后就会一直在后台运行,直到手动停止它。
停止方法:ctrl+c 或者直接关闭终端
然后打开一个新的终端,启动一个redis的客户端来连接到redis服务
启动客户端的命令式redis-cli,回车后,可以看见redis客户端的界面了
redis-cli
前面127.0.0.1 是redis的服务器地址 后面6379是默认的端口号
然后就可以输入各种命令执行操作,比如数据的设置、获取、删除等
GUI工具RedisInsight的使用
好处:
可以直观看到Redis的内存使用情况
自带所有命令的说明文档
可以在本地连接远程的Redis服务等
安装打开之后
点击后弹出配置窗口,来配置要连接的Redis的地址和端口号
本地Redis服务—>直接默认即可
点击右下角Add Redis Database,本地的Redis服务就添加成功
点击左侧连接按钮就可连接到这个Redis服务
最下面:
左下角的命令行窗口:点击打开一个命令行窗口,和打开终端执行redis-cli命令一样
右侧是一个各种命令的帮助文档
最后侧是一个执行日志工具,查看rdis的执行日志
字符串String
1.设置数据SET
SET 键名 值
如何设置数据:可以用set命令来设置一个键值对,键和值之间用空格分隔
redis中的数据是以键值对形式存储
需要指定一个键和一个值,键和值之间用空格分隔
可以用set命令来设置一个键值对
2.获取数据GET
GET 键名
注意:Redis中的键是区分大小写的
注意:
Redis中默认都是使用字符串来存储数据而且是二进制安全意味着可以把很多类型的数据存储到redis中,比如数字、布尔值、序列化之后的对象等
3.删除数据DEL
DEL 键名
返回值nil,表示这个键已经被删除掉了
4.判断键是否存在EXISTS
EXISTS 键名
返回值:0—>被删除 1—> 存在
5.查看数据库中存在哪些键KEYS
KEYS pattern模式匹配的字符串参数
*:星号表示查找所有键
*me:表示查找所有以me结尾的键
6.删除所有数据库里的键 FLUSHALL
FLUSHALL
注意:
redis中的所有键和值都是以二进制形式存储的,所以默认不支持中文
中文以二进制显示:
若以中文显示:
1.quit命令退出redis客户端2.重新登录,但登录时加上一个–raw的参数,表示以原始地形式来显示内容
3.获取数据
完整过程:
7.清空屏幕clear
clear
8.设置一个带有过期时间的键值对TTL
TTL命令来查看那一个键的过期时间
TTL:Tine To Live,表示这个键还有多久过期
返回值:
-1—>没有设置过期时间
1—>有设置过期时间
-2—>已经过期了
1.查看键的过期时间
TTL 键名
2.设置过期时间EXPIRE
EXPIRE 键名 过期时间(默认秒为单位)
小窍门:使用键盘上下键来切换上下条命令
3.设置过期时间的键值对SETEX
SETEX 键名 过期时间 值
9.当键不存在时设置键的值SETNX
SETNX:只有键不存在时设置键的值,否则SETNX不做任何动作
列表List
列表List:一般用来存储和操作一组有顺序的数据,元素可重复
可以使用LPUSH或者RPUSH命令来讲元素添加列表的头部或者尾部
1.添加
在列表头部添加元素LPUSH
LPUSH key element[element]
LPUSH 列表名 元素名
注意:顺序是反着的
在列表尾部添加元素RPUSH
RPUSH key element[element]
2.获取列表内容LRANGE
LRANGE key start stop
LANGE 列表名 起始位置 结束位置
(起始位置和结束位置都以0开始 -1表示最后一个元素)
LRANGE letter 0 -1
0 -1表示第一个到最后一个元素
表示获取列表的所有元素
3.删除元素
从列表头部删除元素LPOP
LPOP key [count]
LPOP 列表名 数字
数字:要删除元素的个数
从列表尾部删除元素RPOP
RPOP key [count]
返回被删除的元素