Redis-config配置详解
config配置文件详解
1、unit单位对大小写不敏感
# 1k => 1000 bytes
# 1kb => 1024 bytes
# 1m => 1000000 bytes
# 1mb => 1024*1024 bytes
# 1g => 1000000000 bytes
# 1gb => 1024*1024*1024 bytes
#
# units are case insensitive so 1GB 1Gb 1gB are all the same.
2、可以包含多个配置文件
################################## INCLUDES ###################################
# include /path/to/local.conf
# include /path/to/other.conf
3、NETWORK
################################## NETWORK #####################################
bind 127.0.0.1 # 绑定的IP
protected-mode yes # 保护模式
port 6379 #端口
tcp-backlog 511
timeout 0
tcp-keepalive 300
4、GENERAL
################################# GENERAL #####################################
#以守护进程的方式运行,默认是 no,我们需要自己开启为yes
daemonize yes
supervised no
#如果以后台的方式运行,我们就需要指定一个 pid文件
pidfile /var/run/redis_6379.pid
5、日志
# Specify the server verbosity level.
# This can be one of:
# debug (a lot of information, useful for development/testing)
# verbose (many rarely useful info, but not a mess like the debug level)
#生产环境使用
# notice (moderately verbose, what you want in production probably)
# warning (only very important / critical messages are logged)
loglevel notice
#日志文件位置名
logfile ""
#数据库的数量,默认是16个数据库
databases 16
#是否总是显示logo
always-show-logo yes
6、快照 SNAPSHOTTING
################################ SNAPSHOTTING ################################
#
# Save the DB on disk:
save 900 1 #如果900内,如果至少有一个1 key进行了修改,我们及进行持久化操作
save 300 10 #如果300内,如果至少有一个10 key进行了修改,我们及进行持久化操作
save 60 10000 #如果60内,如果至少有一个10000 key进行了修改,我们及进行持久化操作
#持久化如果出错,是否还需要继续工作!
stop-writes-on-bgsave-error yes
#是否压缩 rdb 文件,需要消耗一些cpu资源!
rdbcompression yes
#保存 rdb 文件的时候,进行错误的检查校验!
rdbchecksum yes
# The filename where to dump the DB
dbfilename dump.rdb
rdb-del-sync-files no
#rdb文件保存的目录
dir ./
7、REPLICATION
主从复制配置-后续详细说明
8、SECURITY
安全有关配置
# 密码设置方式
# 1、文件设置 requirepass foobared
# 2、命令设置
127.0.0.1:6379> config set requirepass "123456"
OK
127.0.0.1:6379> config get requirepass
1) "requirepass"
2) "123456"
127.0.0.1:6379> auth 123456 # 使用密码进行登录
OK
127.0.0.1:6379>
9、CLIENTS
################################### CLIENTS ####################################
# 限制最大客户端数量
# maxclients 10000
############################## MEMORY MANAGEMENT ################################
# redis 配置最大的内存容量
# maxmemory <bytes>
# The default is:
# 内存到达上限之后的处理策略
# 移除一些过期的key
# maxmemory-policy noeviction
## noeviction(默认策略):对于写请求不再提供服务,直接返回错误(DEL请求和部分特殊请求除外)
## allkeys-lru:从所有key中使用LRU算法进行淘汰
## volatile-lru:从设置了过期时间的key中使用LRU算法进行淘汰
## allkeys-random:从所有key中随机淘汰数据
## volatile-random:从设置了过期时间的key中随机淘汰
## volatile-ttl:在设置了过期时间的key中,根据key的过期时间进行淘汰,越早过期的越优先被淘汰
## 当使用volatile-lru、volatile-random、volatile-ttl这三种策略时,如果没有key可以被淘汰,则和noeviction一样返回错误
10、APPEND ONLY MODE
############################## APPEND ONLY MODE ###############################
#默认是不开启aof模式的,默认是使用rdb方式持久化的,在大部分所有的情况下,rdb完全够用
appendonly yes
# The name of the append only file (default: "appendonly.aof")
#持久化的文件的名字
appendfilename "appendonly.aof"
# appendfsync always # 每次修改都会 sync 消耗性能
appendfsync everysec # 每秒执行一次 sync,可能会丢失这1s的数据
# appendfsync no #不执行sync,这个时候操作系统自己同步数据,速度最快!
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
aof-load-truncated no
aof-use-rdb-preamble yes