配置文件详解
配置文件
Redis的配置文件,在Linux系统和Windows系统上的配置文件是不同的。
- Linux系统:redis.conf
- Windows系统:redis.windows.conf
Redis启动时,通过读取配置文件启动。
本文的讲解,基于Windows系统下,部分图片有文字解释。
文件开头部分
这里面详细介绍了单位换算的方式。
Includes
includes的作用就是:进行链接其他conf文件。
Network——网络
绑定的IP地址和主机号
保护模式,默认开启
端口号
客户端空闲时间长度后断开链接,0表示关闭该功能。
General——通用配置
是否以守护线程的方式运行,默认是no,通过修改为yes,启用守护线程。
但是在Windows系统上查看,似乎是不支持的。
当Redis以守护线程运行时,会把pid写入到/var/run/redis.pid文件中,可以通过pidfile指定,但似乎在Windows上同样不支持。
loglevel notice指定日志级别;
Redis日志中的四个级别:
- debug
- verbose
- notice
- warning
指定记录的位置
设置数据库个数,默认16个,可以通过select index选择数据库。
Snapshotting——快照
快照和持久化相关,使用的是RDB。
持久化有两种:一种是RDB,还有一种是AOF,后面会做详细介绍。
持久化:save < seconds > < changes >
Redis持久化配置文件提供的三个条件:
如果在持久化出错了,是否继续工作,默认是开启的。
是否要压缩RDB文件,压缩过程需要消耗CPU资源,并且默认是开的。
保存RDB文件,是否要进行错误校验检查,默认是开启的。
指定持久化的文件名称默认的名称:dump.rdb
指定rdb文件的保存目录
Security——安全
设置Redis的连接密码,如果配置密码,在客户端连接是需要通过命令提供密码,默认是没有密码的。
Limits——限制
默认的最大内存容量,这里是默认关闭的。
内存到达上限的的策略
Windows上的策略有限,有以下几个:
- volatile-lru:只对设置了过期的key进行LRU算法删除
- allkeys-lru:删除使用了LRU算法的key
- volatile-random:随机删除即将过期的key
- allkeys-random:随机删除所有key
- volatile-ttl:删除即将过期的key
- noeviction:不删除,仅仅返回错误。
Append Only Mode——AOF持久化模式
默认不开启AOF持久化模式,默认使用的RDB持久化方式。
AOF持久化方式的文件名称,默认是appendonly.aof
持久化策略:
- always:每次修改都会进行同步,消耗性能,数据安全性最高。
- everysec:每秒执行一次进行同步,可能会丢失数据。
- no:不执行同步,数据安全性最低。
默认是每秒执行一次同步。