Redis之基础-2 Redis2.6.16版本之redis.conf配置文件详细说明

本文详细介绍了Redis 2.6.16版本的配置文件redis.conf,包括daemonize选项的解析,帮助读者理解并设置Redis服务器的各项参数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下面根据Redis之基础-1 Redis2.6.16版本安装介绍之redis.conf配置文件详细说明

daemonize:

# 是否以后台Daemon方式运行

pidfile:
# Pid文件位置

port:
# 监听的端口号

bind:
# 绑定的IP
# 例如:
# bind 0.0.0.0   监听本机所有的IP,远程主机也可以连接上
# bind 127.0.0.1 指定Redis 只接收来自于该IP 地址的请求,如果不进行设置,那么将处理所有请求,在生产环境中
# 如果考虑设置安全,最好设置该项
# 建议:bind 127.0.0.1或者unixsocket /tmp/redis.sock

unixsocket:
# 指定Socket文件路径,使用Socket进行Redis连接

unixsocketperm: 
# 指定Socket文件的文件权限

timeout:
# 请求超时时间

tcp-keepalive:
# 当客户端闲置多长时间后关闭连接,如果指定为0,表示关闭该功能 

loglevel:
# log信息级别
# log 等级分为4 级,debug, verbose, notice, 和warning。生产环境下一般开启notice

logfile:
# log文件位置

databases:
# 开启数据库的数量
# 可用数据库数,默认值为16,默认数据库存储在DB 0号ID库中,无特殊需求,建议仅设置一个数据库 databases 1
# 查询数据库使用  SELECT <dbid>
# dbid介于 0 到 'databases'-1 之间

save * *:
# 保存快照的频率,第一个*表示多长时间,第二个*表示执行多少次写操作。在一定时间内执行一定数量的写操作时,自动保存快照,可设置多个条件
# 下面的例子将会进行把数据写入磁盘的操作:
# save 900 1
# save 300 10
# save 60 10000
# 900秒(15分钟)之后,且至少有1个key(次)变更
# 300秒(5分钟)之后,且至少有10个key(次)变更
# 60秒之后,且至少有10000个key(次)变更
# 注意:如果不需要写磁盘,则把所有 "save"设置注释掉,即实现全内存服务器。

stop-writes-on-bgsave-error:
# 后台存储错误是否停止写,yes和no选项

rdbcompression:
# 是否使用压缩,yes和no选项
# 当导出到 .rdb 数据库时是否用LZF压缩字符串对象
# 默认设置为 "yes",
# 如果想节省CPU的话,可以把这个设置为 "no",但是如果有可以压缩的key却没有压缩的话,那数据文件就会变得更大

rdbchecksum:
# 是否进行校验,yes和no选项

dbfilename:
# 数据快照文件名(只是文件名,不包括目录)

dir:
# 工作目录,本地数据库会写到这个目录下,文件名就是上面的 "dbfilename"的值。累加文件也放这里
# 注意你这里指定的必须是目录,不是文件名。数据快照的保存目录

slaveof:
# 指定从服务器地址

masterauth:
# 指定主服务器的密码(若主服务器设置了登录密码)

slave-serve-stale-data:
# slave行为状态,yes和no选项
# 当一个slave失去和master的连接,或者同步正在进行中,slave的行为有两种可能:
# 1) 如果 slave-serve-stale-data 设置为 "yes" (默认值),slave会继续响应客户端请求,可能是正常数据,也可能是还没获得值的空数据。
# 2) 如果 slave-serve-stale-data 设置为 "no",slave会回复"正在从master同步(SYNC with master in progress)"来处理各种请求,除了 INFO 和 SLAVEOF 命令。

slave-read-only:
# 设置slave实例属性,yes和no选项
# 如果为yes,slave实例只读,如果为no,slave实例可读可写

slave-priority:
# 设置从节点的优先级
# 大致意思就是通过设置从节点的优先级,来决定从节点是否能扮演主节点的角色。优先级是0的将不会成为主节点

requirepass:
# 设置客户端连接后进行任何其他指定前需要使用的密码

appendonly:
# 是否开启appendonlylog,开启的话每次写操作会记一条log,这会提高数据抗风险能力,但影响效率
# 不使用AOF,AOF是另一种持久化方式,我没有使用的原因是这种方式并不能在服务器或磁盘损坏的情况下,保证数据可用性。
# 默认情况下,Redis 会在后台异步的把数据库镜像备份到磁盘,但是该备份是非常耗时的,而且备份也不能很频繁,如果发生诸如拉闸限电、拔插头等状况,那么将造成比较大范围的数据丢失。所以redis 提供了另外一种更加高效的数据库备份及灾难恢复方式。开
# append only 模式之后,redis 会把所接收到的每一次写操作请求都追加到appendonly.aof 文件中,当redis 重新启动时,会从该文件恢复出之前的状态。但是这样会造成appendonly.aof 文件过大,所以redis 还支持了BGREWRITEAOF 指令,对appendonly.aof 进行重新整理,包括yes和no选项。

appendfsync:
# appendonlylog如何同步到磁盘(三个选项,分别是每次写都强制调用fsync、每秒启用一次fsync、不调用fsync等待系统自己同步)
# appendfsync always
# appendfsync everysec
# appendfsync no

maxclients:
# 最大并发连接数,默认为一万,这个跟系统本身的 open-file-limit 有关;超过这个限制后,会提示:max number of clients reached

no-appendfsync-on-rewrite:
# 设置日志重新功能,选项为yes和no,默认值是 no
# yes : 在日志重写时,不进行命令追加操作,而只是将其放在缓冲区里,避免与命令的追加造成Disk IO上的冲突。
# no  : 在日志重写时,命令追加操作照常进行。

auto-aof-rewrite-percentage:
auto-aof-rewrite-min-size:
# 自动重写只增文件。  
# Redis可以自动盲从的调用‘BGREWRITEAOF’来重写日志文件,如果日志文件增长了指定的百分比。   
# 它是这样工作的:每次rewrite后redis会记录日志文件的大小。(如果重启后没有重写后的大小,就默认用日志文件大小)  
# 这个基准日志大小和当前日志大小做比较。如果当前大小比指定的百分比,重写机制就会被触发。  
# 同时,你也要制定一个重写下线,用来避免增长百分比够了,但是日志文件还很小的情况。   
# 指定百分比为0可以注掉自动重写日志文件功能。 
# auto-aof-rewrite-percentage的默认值为100
# auto-aof-rewrite-min-size的默认值为64mb

lua-time-limit:
# 一个Lua脚本最长的执行时间为5000毫秒(5秒),如果为0或负数表示无限执行时间 

slowlog-log-slower-than:
# Redis慢查询日志可以记录超过指定时间的查询。运行时间不包括各种I/O时间。
# 例如:连接客户端,发送响应数据等。只计算命令运行的实际时间(这是唯一一种命令运行线程阻塞而无法同时为其他请求服务的场景) 
# 你可以为慢查询日志配置两个参数:一个是超标时间,单位为微妙,记录超过个时间的命令。 
# 另一个是慢查询日志长度。当一个新的命令被写进日志的时候,最老的那个记录会被删掉。 

# 下面的时间单位是微秒,所以1000000就是1秒。注意,负数时间会禁用慢查询日志,而0则会强制记录所有命令。
 
slowlog-max-len:
# 这个长度没有限制。只要有足够的内存就行。你可以通过 SLOWLOG RESET 来释放内存

hash-max-ziplist-entries:
hash-max-ziplist-value:
# 当有大量数据时,适合用哈希编码(需要更多的内存),元素数量上限不能超过给定限制
# 你可以通过以上两个选项来设定这些限制。 

list-max-ziplist-entries:
list-max-ziplist-value:
# 与哈希相类似,数据元素较少的情况下,可以用另一种方式来编码从而节省大量空间。
# 这种方式只有在符合以上限制的时候才可以用。

set-max-intset-entries:
# 还有这样一种特殊编码的情况:数据全是64位无符号整型数字构成的字符串。 
# 上面这个配置项就是用来限制这种情况下使用这种编码的最大上限的。

zset-max-ziplist-entries:
zset-max-ziplist-value:
# 与第一、第二种情况相似,有序序列也可以用一种特别的编码方式来处理,可节省大量空间 
# 这种编码只适合长度和元素都符合上面限制的有序序列。

activerehashing:
# 哈希刷新,每100个CPU毫秒会拿出1个毫秒来刷新Redis的主哈希表(顶级键值映射表) 
# redis所用的哈希表实现(见dict.c)采用延迟哈希刷新机制:你对一个哈希表操作越多,哈希刷新操作就越频繁; 
# 反之,如果服务器非常不活跃那么也就是用点内存保存哈希表而已。 

# 默认是每秒钟进行10次哈希表刷新,用来刷新字典,然后尽快释放内存。 

# 建议: 
# 如果你对延迟比较在意的话就用 "activerehashing no",每个请求延迟2毫秒不太好嘛。 
# 如果你不太在意延迟而希望尽快释放内存的话就设置 "activerehashing yes"。
# 重新哈希the main Redis hash table(the one mapping top-level keys to values),这样会节省更多的空间。

client-output-buffer-limit:
# client-output-buffer-limit normal 0 0 0:
# 对客户端输出缓冲进行限制可以强迫那些就不从服务器读取数据的客户端断开连接。对于normal client,第一个0表示取消hard limit,第二个0和第三个0表示取消soft limit,normal client默认取消限制,因为如果没有寻问,他们是不会接收数据的 

client-output-buffer-limit:
# client-output-buffer-limit slave 256mb 64mb 60:
# 对于slave client和MONITER client,如果client-output-buffer一旦超过256mb,又或者超过64mb持续60秒,那么服务器就会立即断开客户端连接

client-output-buffer-limit:
# client-output-buffer-limit pubsub 32mb 8mb 60:
# 对于pubsub client,如果client-output-buffer一旦超过32mb,又或者超过8mb持续60秒,那么服务器就会立即断开客户端连接

hz:
# 键值使用频率分级 

aof-rewrite-incremental-fsync:
# 间隔写入AOF文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值