从上到下,依次:
网络
bind 127.0.0.1 # 绑定的ip
protected-mode yes # 保护模式
port 6379 # 端口设置
通用general
daemonize yes 以守护进程的方式运行,默认是no ,改为yes 之后则可以后台运行。
pidfile /var/run/redis_6379.pid 如果是后台运行,则需要指定一个pid 文件。
日志:
loglevel notive
logfile "" 日志的文件位置 为空则直接打印
database 16 数据库的数量,默认为16个数据库
always-show-logo yes 是否总是显示logo.
快照
持久化,在规定时间内,执行了多少次操作,则会持久化到文件rdb,aof
redis 是内存数据库,如果没有持久化,name数据断电即失。
save 3600 1 900s 内,至少有一个key 进行了修改,就进行持久化操作
save 300 100 300s内,至少有10个key 进行了修改,就进行持久化操作
save 60 10000 60s内,至少有10000个key 进行了修改,就进行持久化操作
stop-writes-on-bgsave-error yes # 持久化如果出错,是否还需要继续工作!
rdbcompression yes # 是否压缩 rdb 文件,需要消耗一些cpu资源!
rdbchecksum yes # 保存rdb文件的时候,进行错误的检查校验!
dir ./ # rdb 文件保存的目录!
安全:
设置密码
获取redis 的密码 get requirepass
设置redis 的密码:config set requirepass "123456"
使用密码登录:auth 123456
获取密码:config get requirepass
限制clients:
maxclients 10000 设置能连接上redis 的最大客户端的数量
maxmemory <bytes> redis 配置最大的内存容量
maxmemory-policy noeviction # 内存到达上限之后的处理策略
1、volatile-lru:只对设置了过期时间的key进行LRU(默认值)
2、allkeys-lru : 删除lru算法的key
3、volatile-random:随机删除即将过期key
4、allkeys-random:随机删除
5、volatile-ttl : 删除即将过期的
6、noeviction : 永不过期,返回错误
append only 模式,aof 配置
appendonly no # 默认是不开启aof模式的,默认是使用rdb方式持久化的,在大部分所有的情况下, rdb完全够用!
appendfilename "appendonly.aof" # 持久化的文件的名字
appendfsync always # 每次修改都会 sync。消耗性能
appendfsync everysec # 每秒执行一次 sync,可能会丢失这1s的数据!
appendfsync no # 不执行 sync,这个时候操作系统自己同步数据,速度最快!
以上是重要的配置。