Redis 数据库概述
Redis 是一个开源的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中介。Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
Remote Dictionary Server ( Redis ) 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API,是跨平台的非关系型数据库。Redis 通常被称为数据结构服务器,因为值(value)可以是字符串(String)、哈希(Hash)、列表(list)、集合(sets)和有序集合(sorted sets)等类型。
Redis 主要特点
高性能
:Redis 是基于内存的操作,因此其读写速度非常快。官方测试数据表明,在 100k 个并发连接下,Redis 的读取速度为每秒 110000 次,写入速度为每秒 89000 次。
支持丰富数据类型
:Redis 支持多种数据类型,可以满足不同场景下的数据存储需求。
数据持久化
:Redis 提供了 RDB 和 AOF 两种持久化方式,可以将内存中的数据保存到磁盘中,以防止数据丢失。
主从复制
:通过主从复制,可以实现数据的备份和读写分离,一个主服务器可以有多个从服务器,从服务器可以复制主服务器的数据。
Lua 脚本支持
:Redis 支持使用 Lua 脚本来执行复杂的逻辑,这可以提高处理效率。
简单易用
:Redis 提供了简单 API,使得开发者可以快速上手。
Redis 应用场景
数据缓存
:Redis 可以将常用的数据存储在内存中,以提高数据访问速度,减轻后端数据库的压力。
消息队列
:Redis 支持发布 / 订阅模式,可以用作消息队列系统,实现异步通信。
会话存储
:Redis 可以用来存储用户会话信息,实现分布式会话管理。
实时分析
:Redis 支持多种数据结构,可以用于实时数据分析和统计。
分布式锁
:Redis 提供了分布式锁的实现方式,可以用来控制并发访问。
Redis 官网:https://redis.io/
windows 安装 Redis 数据库
Github下载地址:https://github.com/MicrosoftArchive/redis/releases
Github下载地址(推荐):https://github.com/tporadowski/redis/releases
选择 .msi 可执行安装文件 Redis-x64-5.0.14.1.msi
下载
MSI 文件是 Windows Installer 的数据包文件,是 Windows 操作系统中用于安装、修改和卸载软件的常用格式。它是一种基于 XML 的数据库文件,包含了软件安装过程中所需的所有信息和指令。MSI 文件通过 Windows Installer 服务来执行安装、更新和卸载操作,可以确保软件安装的完整性和一致性。
开始安装 Redis on Windows
Redis 安装目录
启动 Redis 服务
redis-server.exe redis.windows.conf
Redis 开启成功
注意:这样启动的话,需要得一直开着该命令行窗口,关闭该窗口,Redis 服务就断了。双击安装目录下的 redis-server.exe 也可以启动 Redis 服务。
启动常见问题
问题说明:当 Redis on Windows 安装包执行安装,安装完成立即启动可能会报如下错误,这是因为 redis 安装完成后自动启动服务了。
E:\Environment\Redis>redis-server.exe
[20888] 16 Jun 16:14:12.669 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
[20888] 16 Jun 16:14:12.670 # Redis version=5.0.14.1, bits=64, commit=ec77f72d, modified=0, pid=20888, just started
[20888] 16 Jun 16:14:12.670 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server.exe /path/to/redis.conf
[20888] 16 Jun 16:14:12.673 # Could not create server TCP listening socket *:6379: bind: 在一个非套接字上尝试了一个操作 。
如何手动关闭服务?
E:\Environment\Redis>redis-cli.exe shutdown
redis-cli 客户端连接
测试 Redis,不要关闭上面的服务窗口,另外打开一个 cmd 窗口,因为没有配置环境变量,所以需要先切换目录到 Redis 的安装目录下,输入命令 redis-cli,然后输入 ping,结果如下图。
关闭 redis-server.exe 无法连接
E:\Environment\Redis>redis-cli.exe
Could not connect to Redis at 127.0.0.1:6379: 由于目标计算机积极拒绝,无法连接。
配置 Redis 环境变量
编辑系统环境变量:redis 安装目录
任意位置打开 cmd 输入 redis-cli 下图表示配置成功
配置 Redis 守护进程启动
Redis 守护进程启动
在 Windows 操作系统中,设置 Redis 为守护进程启动,以确保在系统启动时自动运行。控制台 cmd 切换到 Redis 的安装目录, 将 Redis 绑定为 Windows 服务,并设置为后台启动。
redis-server --service-install redis.windows.conf --loglevel verbose
redis-server --service-install redis.windows-service.conf --loglevel verbose
services.msc
快捷键 Win + R 输入 services.msc,打开服务列表就会发现多出来一个 Redis 的服务,我们把它的启动类型设置为自动启动,右键它启动该服务。
常见问题
问题说明:当 Redis on Windows 安装包执行安装,安装完成立即启动可能会报如下错误,这是因为 redis 安装完成后自动启动服务了。
E:\Environment\Redis>redis-server --service-install redis.windows.conf --loglevel verbose
[18448] 16 Jun 15:31:59.464 # HandleServiceCommands: system error caught. error code=1073, message = CreateService failed: 指定的服务已存在。
注意:既然这样 若 redis 指定的服务已存在就不需要重复开启了!
安装 Redis 可视化工具
Redis Insight 可视化工具下载地址:https://redis.io/insight/
安装 Redis Insight
启动 Redis Insight
Cloud Redis 云数据库
Cloud Redis redis 提供云数据库
链接地址:https://app.redislabs.com/#/new-customer/free-db
管理数据库