一、使用案例:
以淘宝为例,几个人一起登入淘宝,去检索男装,这几个人的访问都得到相同的结果。这时,我们就可以考虑将男装缓存在一个地方,而不是再去访问数据库,这时,就是我们 Redis 缓存数据库发挥作用的时候了。(Redis 类型的数据库有个统称,NoSQL 数据库)
二、Redis 基本概念:
- redis 是一种 key-value 存储结构,它的特点是提供 5 种存储结构,包括 list,set,sortset,string,hash。这种存储结构使得它能比关系型数据库更好地描述数据的结构。
- redis 是一个基于ANSIC(标准C)语言编写的、开源的、基于网络、基于内存同时也有持久化机制的缓存系统,它支持多语言的 API。
- Redis是一个高性能的,开源key-value型数据库。是构建高性能,可扩展的Web应用的完美解决方案,可以内存存储亦可持久化存储。要使用跨进程,跨服务级别的数据缓存,Redis是首选。
三、Redis 的下载和安装
在这部分,我们主要介绍如何通过下载解压编译 Redis 压缩包的方式为 CentOs 虚拟机安装 Redis
-
Redis 压缩包下载地址 http://download.redis.io/releases/
直接拖到最下面找到新版 tar 下载就行 (没必要下载 beta 版本,beta 版本是测试版本的意思)
-
通过 WinSCP 或 Xftp 等虚拟机文件传输软件将压缩包拖到 Linux 系统目录下
查看压缩包是否已经被放到 Linux 系统目录下:
- 解压 redis 压缩包
tar -xzvf redis-7.0.5.tar.gz
- 编译安装 Redis
前序准备: 在安装 Redis 之前,我们需要装一下Redis依赖的软件 (如果在安装过程中,提示缺少xx,大家不要急,去网上搜索一下那个东西的安装方式就行了)
yum install cpp
yum install binutils
yum install glibc
yum install glibc-kernheaders
yum install glibc-common
yum install glibc-devel
yum install gcc
yum install tcl
yum install make
(1)第一步: 切换到 redis 解压目录
cd redis-7.0.5/
(2) 第二步:执行 make 命令编译、
make
(3)第三步:执行安装命令
make install
执行 make install
安装完成后,会在 /usr/local/bin
目录下生成下面几个可执行文件,它们的作用分别是:
- redis-server:Redis服务器端启动程序 ,我们可以使用这个启动 Redis
- redis-cli:Redis客户端操作工具,也可以用- telnet根据其纯文本协议来操作
- redis-benchmark:Redis性能测试工具
- redis-check-aof:数据修复工具
- 配置 Redis
我们通过修改 redsi.conf 配置文件来修改 redis 默认配置
- 第一步: 复制配置文件到/etc/目录:
cp redis.conf /etc/
- 第二步: 打开 redis.conf 文件修改默认配置
vi /etc/redis.conf
这部分要求我们对 vi 编辑器有一定的熟悉,大家没必要纠结用 vi ,使用其他方式修改也行,切换文件打开方式就行了
- 第三步:修改下面的配置项
(1)设置 Redis 可以后台运行
daemonize yes
(2)关闭 redis 保护模式,使得可以远程连接 redis
protected-mode no
(3)将下面的配置项改为你虚拟机的实际地址,注意 后面 -::1
部分不需要修改,修改 ip 地址即可,如果不修改该配置项,就默认只有主机能连接 redis 服务器,不能远程连接操作 redis
bind 127.0.0.1 -::1
- 启动Redis 客户端
使用我们修改好的配置文件启动 redis 客户端,这步要注意,如果启动时不加配置文件,那么就相当于我们白修改配置文件了
cd /usr/local/bin
./redis-server /etc/redis.conf
注: 为什么我的启动需要带上路径,因为我的这个路径不在 centOS 系统路径($PATH 命令查看)下,如果你的在,直接用 redis-server 启动即可
出现下面卡死的状态就说明 redis 客户端启动成功了
测试Redis连接:
(1)查看 redis 运行状态
ps -ef | grep redis
(2)使用 redis-cli 进入 redis 客户端
redis-cli
设置并取出键值对
set name xinyu~
get name
- 停止 redis 客户端(直接在启动位置 Ctr + C 也行)
redis-server stop
- 重启 redis 客户端
redis-server restart
- 远程连接 Redis
输入 ip 地址 和 redis 端口号