位置
安装目录下,有一个出厂默认配置文件
,一般修改前,都要拷贝进行修改。
解析
Units单位
- 配置大小单位,开头定义了一些基本的度量单位,只支持bytes,不支持bit。
- 对大小写不敏感
INCLUDES包含
可以通过includes包含,redis.conf可以作为总闸,包含其他配置文件。
GENERAL
daemonize
yes:配置为守护线程,当服务开启后,关闭终端等不会使服务结束,直到kill该线程。
no:退出终端即退出服务。
pidfile
当开启daemonize后,写一个pid文件到/var/run
下。
port
服务开启的监听端口,默认6379。
tcp-backlog
在每秒高请求的环境中,您需要高的backlog以避免缓慢的客户端连接问题。 初学阶段,保持默认。
timeout
客户端空闲N秒后关闭连接(0表示禁用该功能)。
tcp-keepalive
类似于心跳包,保持TCP连接。
loglevel
日志级别,共4个,debug、verbose、notice、warning。
logfile
设置日志文件的名字,空字符串表示输出到标准输出。
syslog-enabled
是否把日志输出到syslog中
syslog-ident
指定syslog里的日志标志
syslog-facility
指定syslog设备,值可以是USER或LOCAL0-LOCAL7
databases
指定redis使用多少个数据库
SNAPSHOTTING(RDB)
save
格式:save <seconds> <changes>
,默认值:
save 900 1
save 300 10
save 60 10000
禁用RDB持久化的策略,只要不设置任何save指令,或者给save传入一个空字符串也可以。
stop-writes-on-bgsave-error
出错了,前台就停止写。
如果配置成no,表示你不在乎数据不一致或者有其他手段发现和控制。
rdbcompression
yes:进行LZF算法进行压缩。
no:不压缩,节省一点CPU资源(没必要)。
rdbchecksum
yes:在存储快照后,可以让redis使用CRC64算法进行数据校验,大约增加10%的性能消耗。
no:不校验。
dbfilename
指定文件名。
dir
指定本地数据库的存放目录,默认为当前目录./
。
APPEND ONLY MODE(AOF)
appendonly
是否启动AOF模式。
appendfilename
AOF模式的文件名。
appendfsync
(1)always:同步持久化,每次发生数据变更会被立即记录到磁盘,性能较差但是数据完整性比较好。
(2)everysec:出厂默认推荐,异步操作,每秒记录一次,如果一秒内宕机,则缓存中的数据丢失。
no-appendfsync-on-rewrite
重写时是否可以运用appendfsync,用默认no即可,保证数据的安全性。
auto-aof-rewrite-percentage
设置重写的基准值,是上次重写的百分之多少。
auto-aof-rewrite-min-size
设置重写的基准值,重写的最小文件大小。
SECURITY
进入Redis客户端后,使用config get requirepass
获取当前的密码,同时可以使用config set requirepass password
进行设置密码。
在设置密码后,每条命令前都需要进行身份验证,使用auth password
进行验证即可。
LIMIT限制
maxclients
最大连接数。
maxmemory
最大内存限制。
maxmemory-policy
- volatile-lru,使用LRU算法移除KEY,只针对设置了过期时间的键
- allkeys-lru,使用LRU算法移除KEY
- volatile-random,在过期集合中移除随机的KEY,只针对设置了过期时间的键
- allkeys-random,随机移除KEY
- volatile-ttlL移除那些TTL值最小的KEY,即将要过期的KEY
- noeviction ,不进行移除,针对写操作,只是返回错误信息
maxmemory-samples
样本大小,5个比较好的结果,10个很精确,3个很快。