五:Redis配置深入解析

五:Redis配置的深度剖析

目录

  • 五. Redis配置内容(详细配置说明)
    1. Units单位相关配置
    1. INCLUDES(包含)配置
    1. NETWORK(网络)配置
    2. 3.1 bind(配置访问范围)
    3. 3.2 protected-mode(保护模式设置)
    4. 3.3 port(端口)配置
    5. 3.4 timeout(客户端超时)配置
    6. 3.5 tcp-keepalive(心跳检测)配置
    1. GENERAL 通用配置
    2. 4.1 daemonize(后台运行)配置
    3. 4.2 pidfile(pid文件路径)配置
    4. 4.3 loglevel(日志级别)配置
    5. 4.4 logfile(日志文件)配置
    6. 4.5 databases 16(数据库数量)配置
    1. SECURITY 安全配置
    2. 5.1 在redis.conf中设置密码(永久生效)
    3. 5.3 在命令行设置密码
    1. LIMITS 限制配置
    2. 6.1 maxclients(客户端连接数)配置
    3. 6.2 maxmemory(Redis最大内存)配置
    4. 6.3 maxmemory-policy(内存不足策略)配置
    5. 6.4 maxmemory-samples(内存算法样本)配置
    1. 总结:
    1. 最后:

1. Units单位相关配置

在这里插入图片描述

:set number   # 在vim编辑器中,用于显示行号
  1. 配置中的大小单位,起始定义了一些基本的度量单位,仅支持字节(bytes),不支持比特(bit),这是默认设定,可依据实际需求自行调整。
  2. 默认情况下不区分大小写,对于命令而言,也可自行对配置进行调整。

2. INCLUDES(包含)配置

在这里插入图片描述

该配置信息表示:多实例情况下可将公用配置文件提取出来,通过include进行导入

3. NETWORK(网络)配置

3.1 bind(配置访问范围)

在这里插入图片描述

 bind 127.0.0.1 -::1
  1. 默认状态下 bind 127.0.0.1 意味着仅能接收本地(本机)的访问请求,其他主机无法进行访问。
  2. 若服务器需要远程访问,需将其注释掉。
  3. 在此处,可启动redis,查看当前允许连接的状况。

在这里插入图片描述

注销bind配置,重新启动redis,再查看当前允许连接的情形。

在这里插入图片描述

注意: 需将Redis服务器关闭后再重启,配置方能生效。

[root@localhost ~]# redis-cli  -p 6379 shutdown

在这里插入图片描述

在这里插入图片描述

3.2 protected-mode(保护模式设置)

在这里插入图片描述

默认处于保护模式,也就是 protected-mode no

若服务器需要远程访问,需将yes设置为no
在这里插入图片描述

3.3 port(端口)配置

在这里插入图片描述

Redis服务默认端口为6379,可自行进行修改,但需留意处于 655535 的范围内。

3.4 timeout(客户端超时)配置

如图默认配置:

在这里插入图片描述

 timeout 0

一个空闲的客户端维持多少秒会被关闭,0表示关闭该功能,即永不超时 。可根据实际需求自行调整。

3.5 tcp-keepalive(心跳检测)配置

在这里插入图片描述

tcp-keepalive 300
  1. tcp-keepalive 是对访问客户端的一种心跳检测机制,每隔n秒进行一次检测,单位为秒。
  2. 若设置为0,则不会进行keepalive检测,建议将其设置为60

为何需要心跳检测机制:

  1. TCP协议存在长连接和短连接的区别。短连接环境下,数据交互完成后,会主动释放连接。
  2. 在长连接环境中,进行一次数据交互后,若长时间无数据交互,客户端可能意外断开,这些TCP连接并未得到正常释放,那么连接的另一方并不知晓对端的状况。就会一直保持这个连接,长时间积累会产生大量半打开连接,造成端系统资源的消耗与浪费,还有可能在无效的数据链路层面发送业务数据,导致发送失败。所以服务端要快速感知失败,减少无效连接操作,这就有了TCP的Keepalive(保活探测)机制

在这里插入图片描述

tcp-keepalive 10

配置完成后,需重启Redis服务方能生效。

[root@localhost etc]# redis-cli -p 6379 shutdown

4. GENERAL 通用配置

4.1 daemonize(后台运行)配置

在这里插入图片描述

daemonize yes
  1. 是否为后台进程,设置为yes
  2. 设置为yes后,表示以守护进程方式运行,后台启动

4.2 pidfile(pid文件路径)配置

在这里插入图片描述

 pidfile /var/run/redis_6379.pid

存放pid文件的位置,每个实例会生成不同的pid文件,用于记录redis的进程号

在这里插入图片描述

[root@localhost run]# ps -ef | grep redis



[root@localhost run]# cat redis_6379.pid

在这里插入图片描述

[root@localhost run]# ps -aux | grep sshd

在这里插入图片描述

4.3 loglevel(日志级别)配置

在这里插入图片描述

loglevel notice

Redis日志分为4个级别,默认设置为notice,开发测试阶段可使用debug(日志内容较多,不建议生产环境使用),生产模式一般选用notice

Redis日志级别如下4种

  1. debug :会打印大量信息,适用于开发和测试阶段。
  2. verbose(冗长的) :包含较多不太有用的信息,但比debug清爽些。
  3. notice :适用于生产模式。
  4. warning :警告信息。

在这里插入图片描述

127.0.0.1:6379> config get loglevel

4.4 logfile(日志文件)配置

在这里插入图片描述

logfile ""
  1. logfile ""表示默认在控制台打印,不会生成日志文件
  2. 可为redis.conf的logfile指定配置项。例如:

    logfile "/var/log/redis/redis.log"

在这里插入图片描述

修改配置文件后,需重启redis才能生成日志文件。
在这里插入图片描述

127.0.0.1:6379> config get logfile

4.5 databases 16(数据库数量)配置

在这里插入图片描述

databases 16
  1. 设定库的数量,默认是16个,默认数据库为0号,数据库索引从0开始
  2. 可使用 select<dbid> 命令在连接上指定数据库id

在这里插入图片描述

5. SECURITY 安全配置

SECURITY安全配置是为Redis客户端登录时设置密码。

在Redis中,设置密码有两种方式:

5.1 在redis.conf中设置密码(永久生效)

在这里插入图片描述

# requirepass foobared

此处进行测试,将注释取消,使用 foobared 作为密码。

 requirepass foobared

在这里插入图片描述

修改配置后,需重启Redis服务方能生效。

在这里插入图片描述

在这里插入图片描述

127.0.0.1:6379> auth foobared 
127.0.0.1:6379> auth 密码   # 登录redis客户端,使用密码

在这里插入图片描述

在这里插入图片描述

127.0.0.1:6379> acl list
# 注意:需进入Redis客户端

![在这里插入图片描述](https://img2024.cnblogs.com/blog/3084824/202501/3084824-202

文章整理自互联网,只做测试使用。发布者:Lomu,转转请注明出处:https://www.it1024doc.com/12527.html

(0)
LomuLomu
上一篇 2025 年 6 月 18 日 下午5:42
下一篇 2025 年 6 月 18 日

相关推荐

  • 2025年最新DataGrip永久破解教程(附激活码/注册码)

    本教程适用于JetBrains全家桶(IDEA/PyCharm/DataGrip/Goland等) 先看破解成果!成功激活至2099年,亲测可用! 下面将详细介绍DataGrip的完整破解流程,该方法同样适用于旧版本,支持全平台操作系统。 下载DataGrip官方安装包 已安装用户可跳过此步骤 访问官网下载:https://www.jetbrains.com…

    2025 年 5 月 8 日
    27900
  • 实战指南:理解 ThreadLocal 原理并用于Java 多线程上下文管理

    目录 一、ThreadLocal基本知识回顾分析 (一)ThreadLocal原理 (二)既然ThreadLocalMap的key是弱引用,GC之后key是否为null? (三)ThreadLocal中的内存泄漏问题及JDK处理方法 (四)部分核心源码回顾 ThreadLocal.set()方法源码详解 ThreadLocalMap.get()方法详解 Th…

    2024 年 12 月 30 日
    31200
  • 国产数据库KingbaseES:一次新奇的初始尝试

    国产数据库KingbaseES:一场别样的初次探索 数据库管家KingbaseES:我的国产数据库初遇 🌟嘿,我是LucianaiB! 🌍 人间总有一缕风,可慰万千梦。 🚀 路漫修远,吾将上下探寻。 目录 引言 平台初识与注册登录 环境搭建与功能总览 核心功能体验:SQL操作 1. 查询(SELECT)操作 2. 插入(INSERT)操作 3. 更新(UPD…

    2025 年 7 月 9 日
    4900
  • 🔥2025年最新PyCharm激活码永久破解教程(亲测有效2099年)

    还在为PyCharm的激活问题发愁吗?😫 本教程将手把手教你如何永久破解PyCharm至2099年!适用于Jetbrains全家桶(IDEA、PyCharm、DataGrip、Goland等),无论你是Windows、Mac还是Linux系统,统统都能搞定!💪 先来看看最新PyCharm版本破解成功的截图,有效期直接拉到2099年,简直不要太爽!🎉 📥 第一…

    PyCharm激活码 2025 年 7 月 1 日
    25100
  • 数据结构之图形概览

    一、概念 由非空的顶点有限集合 ( V )(包含 ( n>0 ) 个顶点)以及边的集合 ( E )(表示顶点之间的关系)所构成的结构。其形式化定义为 ( G=(V,E) )。 顶点(Vertex) :图中的数据元素一般被称作顶点,在下面的示意图里用圆圈来代表顶点。 边(Edge) :图中两个数据元素之间的关联关系通常叫做边,在示意图中用连接两个顶点的线…

    2025 年 7 月 25 日
    3600

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信