Redis的安装与配置

一、Redis简介

Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。

Redis 与其他 key - value 缓存产品有以下三个特点:

  • Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
  • Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
  • Redis支持数据的备份,即master-slave模式的数据备份。

Redis的优势:

  • 性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。
  • 丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。
  • 原子 – Redis的所有操作都是原子性的,意思就是要么成功执行要么失败完全不执行。单个操作是原子性的。多个操作也支持事务,即原子性,通过MULTI和EXEC指令包起来。
  • 丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等等特性。

Redis与其他key-value存储有什么不同?

  • Redis有着更为复杂的数据结构并且提供对他们的原子性操作,这是一个不同于其他数据库的进化路径。Redis的数据类型都是基于基本数据结构的同时对程序员透明,无需进行额外的抽象。
  • Redis运行在内存中但是可以持久化到磁盘,所以在对不同数据集进行高速读写时需要权衡内存,因为数据量不能大于硬件内存。在内存数据库方面的另一个优点是,相比在磁盘上相同的复杂的数据结构,在内存中操作起来非常简单,这样Redis可以做很多内部复杂性很强的事情。同时,在磁盘格式方面他们是紧凑的以追加的方式产生的,因为他们并不需要进行随机访问。

二、下载Redis

官网直接下载对应安装压缩包。
在这里插入图片描述

三、Windows环境安装

3.1 Windows安装redis

  1. 根据本地Windows环境选择32或者64位,从https://github.com/microsoftarchive/redis/releases 上下载对应Redis-x64-xxx.zip压缩包,解压到本地。
  2. 运行中输入cmd,进入到解压后的redis目录,执行
    redis-server redis.windows.conf
    

3.2 Windows设置Redis服务

上述3.1 中一旦关闭黑窗口,redis服务就停了。所以我们把它做成一个服务。

执行命令

redis-server –service-install redis.windows-service.conf –loglevel verbose

输入命令之后没有报错,表示成功了,刷新服务,会看到多了一个redis服务。
在这里插入图片描述
卸载服务:redis-server –service-uninstall
开启服务:redis-server –service-start
停止服务:redis-server –service-stop

四、Linux环境安装

4.1 上传解压缩方式

将下载好的redis压缩包上传到Linux服务器,参考4.2的步骤

4.2 联网下载安装方式

  1. 进入官网找到下载地址 https://redis.io/download,右键Download按钮,选择复制链接。

  2. 执行如下命令远程联网下载

    wget http://download.redis.io/releases/redis-6.0.6.tar.gz
    
  3. 解压缩

    tar -zvxf redis-6.0.6.tar.gz
    
  4. 一般我们都会将redis安装目录放置到 /usr/local/redis目录,

    mv ../redis-6.0.6 /usr/local/redis
    
  5. cd到/usr/local/redis目录,输入命令make执行编译命令

    make
    

    如果出现报错问题,参考4.3 安装报错问题
    编译成功后如下图所示:
    在这里插入图片描述

  6. 编译成功后,进入src文件夹,执行make install进行安装。

    make install
    

    执行成功如下图:
    在这里插入图片描述

  7. 启动。进入src目录下,执行

    ./redis-server
    

4.3 redis安装报错问题汇总

4.3.1 编译失败——gcc版本问题

如果在执行make命令编译的时候出现如下所示错误:

  1. cc1: error: unrecognized command line option "-std=c11"
  2. server.c:xxxx:xx: error: ‘xxxxxxxx’ has no member named ‘xxxxx’(比如:server.c:5188:19: error: ‘struct redisServer’ has no member named ‘sofd’)

这一般都是 gcc的版本 不够引起的问题。
最新的redis6.0版本貌似需要gcc版本是5.3以上的。
采用如下方式升级gcc版本,或者自行下载指定版本安装(gcc官网地址

yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
scl enable devtoolset-9 bash

注意:
scl命令启用只是临时的,推出xshell或者重启就会恢复到原来的gcc版本。
如果要长期生效的话,执行如下:

echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile

这时候你可以再看一下gcc的版本号
在这里插入图片描述

五、配置文件简单说明

5.1 redis.conf配置文件

Windows环境中名为 redis.windows.conf

可以直接使用cat、vim、less等Linux内置的读取命令读取该文件,或者也可以通过redis-cli命令进入redis控制台后通过CONFIG GET * 的方式读取所有配置项。

这里列举一些比较重要的配置项

配置项名称配置项值范围说明
daemonizeyes、noRedis 默认不是以守护进程的方式运行,可以通过该配置项修改,使用 yes 启用守护进程(Windows 不支持守护线程的配置为 no )
port6379指定 Redis 监听端口,默认端口为 6379
bind绑定的主机地址,如果需要设置远程访问则直接将这个属性备注下或者改为bind * 即可,这个属性和下面的protected-mode控制了是否可以远程访问 。
protected-modeyes 、no保护模式,该模式控制外部网是否可以连接redis服务,默认是yes,所以默认我们外网是无法访问的,如需外网连接rendis服务则需要将此属性改为no。
timeout300当客户端闲置多长时间后关闭连接,如果指定为 0,表示关闭该功能
logleveldebug、verbose、notice、warning日志级别,默认为 notice
databases16设置数据库的数量,默认的数据库是0。整个通过客户端工具可以看得到
rdbcompressionyes、no指定存储至本地数据库时是否压缩数据,默认为 yes,Redis 采用 LZF 压缩,如果为了节省 CPU 时间,可以关闭该选项,但会导致数据库文件变的巨大。
dbfilenamedump.rdb指定本地数据库文件名,默认值为 dump.rdb
dir指定本地数据库存放目录
requirepass设置 Redis 连接密码,如果配置了连接密码,客户端在连接 Redis 时需要通过 AUTH < password> 命令提供密码,默认关闭
maxclients0设置同一时间最大客户端连接数,默认无限制,Redis 可以同时打开的客户端连接数为 Redis 进程可以打开的最大文件描述符数,如果设置 maxclients 0,表示不作限制。当客户端连接数到达限制时,Redis 会关闭新的连接并向客户端返回 max number of clients reached 错误信息。
maxmemoryXXX < bytes>指定 Redis 最大内存限制,Redis 在启动时会把数据加载到内存中,达到最大内存后,Redis 会先尝试清除已到期或即将到期的 Key,当此方法处理 后,仍然到达最大内存设置,将无法再进行写入操作,但仍然可以进行读取操作。Redis 新的 vm 机制,会把 Key 存放内存,Value 会存放在 swap 区。配置项值范围列里XXX为数值。

更多配置可以参考 https://www.runoob.com/redis/redis-conf.html

六、Redis 命令

6.1 redis服务查看相关命令

6.1.1 查看Redis是否正在运行

  1. 采取查看进程方式

    ps -aux | grep redis
    

    在这里插入图片描述

  2. 采取端口监听查看方式

    netstat -lanp | grep 6379
    

    在这里插入图片描述

6.2 redis操作命令

此处暂时先不写了,后边专门写一篇相关命令。

七、Redis桌面可视化工具安装

7.1 redis desktop manager

Redis Desktop Manager官网地址

在这里插入图片描述
目前这个工具是收费的了。

7.2 Redis Client

项目地址: https://github.com/caoxinyu/RedisClient

7.3 Redis Studio

项目地址: https://github.com/cinience/RedisStudio

  • 94
    点赞
  • 95
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

RabbitsInTheGrass

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值