Redis配置文件详解
程序员文章站
2022-03-10 08:47:36
...
Redis配置文件详解
unit单位 对大小写不敏感
包含 就好比我们学习Spring,Import,jsp中include
网络
bind 127.0.0.1 #绑定ip
protected-mode=yes #安全模式
port 6379 #端口号
通用 GENERAL
daemonize yes #以守护进程的方式运行,默认是no,我们需要自己开启为yes
pidfile /var/run/redis/redis-server.pid #如果以后台方式运行,我们就需要指定一个pid文件
#日志
# 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 /var/log/redis/redis-server.log #日志文件位置名
databases 16 #默认数据库数量
快照
在规定时间内,执行了多少次操作,则会持久化到文件 .rdb .aof
Redis是内存数据库,如果没有持久化,那么数据断电即失。
#In the example below the behaviour will be to save:
# after 900 sec (15 min) if at least 1 key changed
# after 300 sec (5 min) if at least 10 keys changed
# after 60 sec if at least 10000 keys changed
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes #持久化出错后是否继续工作
rdbcompression yes #是否压缩rdb文件,需要消耗一些cpu资源
rdbchecksum yes #保存rdb的时候,进行错误检查校验
dir /var/lib/redis rdb文件保存目录
SECURITY 安全
redis默认是没有密码的。
通过命令行方式修改密码
127.0.0.1:6379> CONFIG GET requirepass
1) "requirepass"
2) ""
127.0.0.1:6379> config set requirepass "123456"
OK
127.0.0.1:6379> CONFIG GET requirepass
(error) NOAUTH Authentication required.
127.0.0.1:6379> ping
(error) NOAUTH Authentication required.
127.0.0.1:6379> AUTH 123456
OK
127.0.0.1:6379> CONFIG GET requirepass
1) "requirepass"
2) "123456"
修改配置文件方式(记得重启redis)
LIMITS 限制
maxclients 10000 #最大客户端连接数量
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 MODE AOF
appendonly no #默认是 不开启aof模式,默认使用rdb方式持久化,在大部分情况下rdb是完全够用的。
appendfilename "appendonly.aof" #持久化文件的名字
# appendfsync always #每次修改都会sync,消耗性能
appendfsync everysec #每秒执行一次 sync,可能会丢失这1s的数据
# appendfsync no #从不sync,这时候操作系统自己同步数据,速度最快