首页 web前端 css教程 Redis配置文件redis.conf详细配置说明

Redis配置文件redis.conf详细配置说明

Mar 06, 2018 pm 05:16 PM
redis 配置文件

本文列出了Redis的配置文件redis.conf的各配置项的详细说明,简单易懂,有需要的盆友可以参考哦。

redis.conf 配置项说明如下

redis配置文件详解

# vi redis.conf
daemonize yes #是否以后台进程运行
pidfile /var/run/redis/redis-server.pid  #pid文件位置
port 6379#监听端口
bind 127.0.0.1  #绑定地址,如外网需要连接,设置0.0.0.0
timeout 300   #连接超时时间,单位秒
loglevel notice #日志级别,分别有:
# debug :适用于开发和测试
# verbose :更详细信息
# notice :适用于生产环境
# warning :只记录警告或错误信息
logfile /var/log/redis/redis-server.log  #日志文件位置
syslog-enabled no  #是否将日志输出到系统日志
databases 16#设置数据库数量,默认数据库为0
############### 快照方式 ###############
save 900 1  #在900s(15m)之后,至少有1个key发生变化,则快照
save 300 10  #在300s(5m)之后,至少有10个key发生变化,则快照
save 60 10000 #在60s(1m)之后,至少有1000个key发生变化,则快照
rdbcompression yes  #dump时是否压缩数据
dir /var/lib/redis  #数据库(dump.rdb)文件存放目录
############### 主从复制 ###############
slaveof <masterip> <masterport> #主从复制使用,用于本机redis作为slave去连接主redis
masterauth <master-password>  #当master设置密码认证,slave用此选项指定master认证密码
slave-serve-stale-data yes   #当slave与master之间的连接断开或slave正在与master进行数据同步时,如果有slave请求,当设置为yes时,slave仍然响应请求,此时可能有问题,如果设置no时,slave会返回"SYNC with master in progress"错误信息。但INFO和SLAVEOF命令除外。
############### 安全 ###############
requirepass foobared  #配置redis连接认证密码
############### 限制 ###############
maxclients 128#设置最大连接数,0为不限制
maxmemory <bytes>#内存清理策略,如果达到此值,将采取以下动作:
# volatile-lru :默认策略,只对设置过期时间的key进行LRU算法删除
# allkeys-lru :删除不经常使用的key
# volatile-random :随机删除即将过期的key
# allkeys-random :随机删除一个key
# volatile-ttl :删除即将过期的key
# noeviction :不过期,写操作返回报错
maxmemory-policy volatile-lru#如果达到maxmemory值,采用此策略
maxmemory-samples 3  #默认随机选择3个key,从中淘汰最不经常用的
############### 附加模式 ###############
appendonly no  #AOF持久化,是否记录更新操作日志,默认redis是异步(快照)把数据写入本地磁盘
appendfilename appendonly.aof #指定更新日志文件名
# AOF持久化三种同步策略:
# appendfsync always  #每次有数据发生变化时都会写入appendonly.aof
# appendfsync everysec #默认方式,每秒同步一次到appendonly.aof
# appendfsync no    #不同步,数据不会持久化
no-appendfsync-on-rewrite no  #当AOF日志文件即将增长到指定百分比时,redis通过调用BGREWRITEAOF是否自动重写AOF日志文件。
############### 虚拟内存 ###############
vm-enabled no   #是否启用虚拟内存机制,虚拟内存机将数据分页存放,把很少访问的页放到swap上,内存占用多,最好关闭虚拟内存
vm-swap-file /var/lib/redis/redis.swap  #虚拟内存文件位置
vm-max-memory 0  #redis使用的最大内存上限,保护redis不会因过多使用物理内存影响性能
vm-page-size 32  #每个页面的大小为32字节
vm-pages 134217728 #设置swap文件中页面数量
vm-max-threads 4  #访问swap文件的线程数
############### 高级配置 ###############
hash-max-zipmap-entries 512  #哈希表中元素(条目)总个数不超过设定数量时,采用线性紧凑格式存储来节省空间
hash-max-zipmap-value 64   #哈希表中每个value的长度不超过多少字节时,采用线性紧凑格式存储来节省空间
list-max-ziplist-entries 512 #list数据类型多少节点以下会采用去指针的紧凑存储格式
list-max-ziplist-value 64  #list数据类型节点值大小小于多少字节会采用紧凑存储格式
set-max-intset-entries 512  #set数据类型内部数据如果全部是数值型,且包含多少节点以下会采用紧凑格式存储
activerehashing yes    #是否激活重置哈希
登录后复制

总结:

1、redis提供几种持久化机制

a). RDB持久化

工作方式 :根据时间的间隔将redis中数据快照(dump)到dump.rdb文件

优势 :备份恢复简单。RDB通过子进程完成持久化工作,相对比AOF启动效率高

劣势 :服务器故障会丢失几分钟内的数据

b). AOF持久化

工作方式 :以日志的形式记录所有更新操作到AOF日志文件,在redis服务重新启动时会读取该日志文 件来重新构建数据库,以保证启动后数据完整性。

优势 :AOF提供两种同步机制,一个是fsync always每次有数据变化就同步到日志文件和fsync everysec每秒同步一次到日志文件,最大限度保证数据完整性。

劣势:日志文件相对RDB快照文件要大的多

AOF日志重写功能

AOF日志文件过大,redis会自动重写AOF日志,append模式不断的将更新记录写入到老日志文件中,同时redis还会创建一个新的日志文件用于追加后续的记录。

c). 同时应用AOF和RDB

对于数据安全性高的场景,可同时使用AOF和RDB,这样会降低性能。

d). 无持久化

禁用redis服务持久化功能。

2、AOF日志文件出错后,修复方法

redis-check-aof --fix appendonly.aof #--fix参数为修复日志文件,不加则对日志检查

3、不重启redis从RDB持久化切换到AOF持久化

redis-cli> CONFIG SET appendonly yes   #启用AOF
redis-cli> CONFIG SET save ""     #关闭RDB
登录后复制

redis配置文件详解列出了redis基础配置项都是比较常用的,使用redis一定要了解这些配置项

相关推荐:

Redis配置文件redis.conf 详解

【Redis笔记】第4篇:redis.conf中Replication配置项说明

为何在redis.conf中注释了save配置项,重启服务器之后redis内还存有上一次写入的数据?


以上是Redis配置文件redis.conf详细配置说明的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它们
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

redis集群模式怎么搭建 redis集群模式怎么搭建 Apr 10, 2025 pm 10:15 PM

Redis集群模式通过分片将Redis实例部署到多个服务器,提高可扩展性和可用性。搭建步骤如下:创建奇数个Redis实例,端口不同;创建3个sentinel实例,监控Redis实例并进行故障转移;配置sentinel配置文件,添加监控Redis实例信息和故障转移设置;配置Redis实例配置文件,启用集群模式并指定集群信息文件路径;创建nodes.conf文件,包含各Redis实例的信息;启动集群,执行create命令创建集群并指定副本数量;登录集群执行CLUSTER INFO命令验证集群状态;使

redis指令怎么用 redis指令怎么用 Apr 10, 2025 pm 08:45 PM

使用 Redis 指令需要以下步骤:打开 Redis 客户端。输入指令(动词 键 值)。提供所需参数(因指令而异)。按 Enter 执行指令。Redis 返回响应,指示操作结果(通常为 OK 或 -ERR)。

redis数据怎么清空 redis数据怎么清空 Apr 10, 2025 pm 10:06 PM

如何清空 Redis 数据:使用 FLUSHALL 命令清除所有键值。使用 FLUSHDB 命令清除当前选定数据库的键值。使用 SELECT 切换数据库,再使用 FLUSHDB 清除多个数据库。使用 DEL 命令删除特定键。使用 redis-cli 工具清空数据。

redis怎么读源码 redis怎么读源码 Apr 10, 2025 pm 08:27 PM

理解 Redis 源码的最佳方法是逐步进行:熟悉 Redis 基础知识。选择一个特定的模块或功能作为起点。从模块或功能的入口点开始,逐行查看代码。通过函数调用链查看代码。熟悉 Redis 使用的底层数据结构。识别 Redis 使用的算法。

redis怎么使用单线程 redis怎么使用单线程 Apr 10, 2025 pm 07:12 PM

Redis 使用单线程架构,以提供高性能、简单性和一致性。它利用 I/O 多路复用、事件循环、非阻塞 I/O 和共享内存来提高并发性,但同时存在并发性受限、单点故障和不适合写密集型工作负载的局限性。

redis怎么读取队列 redis怎么读取队列 Apr 10, 2025 pm 10:12 PM

要从 Redis 读取队列,需要获取队列名称、使用 LPOP 命令读取元素,并处理空队列。具体步骤如下:获取队列名称:以 "queue:" 前缀命名,如 "queue:my-queue"。使用 LPOP 命令:从队列头部弹出元素并返回其值,如 LPOP queue:my-queue。处理空队列:如果队列为空,LPOP 返回 nil,可先检查队列是否存在再读取元素。

redis怎么查看所有的key redis怎么查看所有的key Apr 10, 2025 pm 07:15 PM

要查看 Redis 中的所有键,共有三种方法:使用 KEYS 命令返回所有匹配指定模式的键;使用 SCAN 命令迭代键并返回一组键;使用 INFO 命令获取键的总数。

redis底层怎么实现 redis底层怎么实现 Apr 10, 2025 pm 07:21 PM

Redis 使用哈希表存储数据,支持字符串、列表、哈希表、集合和有序集合等数据结构。Redis 通过快照 (RDB) 和追加只写 (AOF) 机制持久化数据。Redis 使用主从复制来提高数据可用性。Redis 使用单线程事件循环处理连接和命令,保证数据原子性和一致性。Redis 为键设置过期时间,并使用 lazy 删除机制删除过期键。

See all articles