Redis(六)------ Redis.conf详解

Redis(六)------ Redis.conf详解

11、Redis.conf详解

  • Redis启动的时候,就是通过配置文件来启动

11.1 容量单位

  • 容量单位不区分大小写,G和GB有区别

Redis(六)------ Redis.conf详解_第1张图片

  • 配置文件,unit单位,对大小写不敏感

11.2 包含 INCLUDES

  • 可以使用include组合多个配置问题

Redis(六)------ Redis.conf详解_第2张图片

11.3 网络 NETWORK

Redis(六)------ Redis.conf详解_第3张图片

11.4 通用 GENERAL

Redis(六)------ Redis.conf详解_第4张图片

# 以守护进程的方式运行(后台运行),默认是 no,需要开启为yes
daemonize yes 
# 管理守护进程
supervised no
# 如果以后台的方式运行,需要指定一个 pid 文件
pidfile /var/run/redis_6379.pid 

# 日志
# 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 

11.5 快照 SNAPSHOTTING

  • 快照,学习持久化会用到,即在规定时限内,执行了多少次操作,则会持久化到文件(rdb文件 aof文件)
  • Redis是内存数据库,如果没有持久化那么数据断电即失
    Redis(六)------ Redis.conf详解_第5张图片
# 如果900s内,如果至少有1 key进行了修改,就进行持久化操作
save 900 1
# 如果300s内,如果至少有10 key进行了修改,就进行持久化操作
save 300 10
# 如果60s内,如果至少有10000 key进行了修改,就进行持久化操作
save 60 10000

# 持久化如果出错,是否还需要继续工作
stop-writes-on-bgsave-error yes 
# 是否压缩 rdb 文件,需要消耗一些cpu资源
rdbcompression yes 
# 保存rdb文件的时候,进行错误的检查校验
rdbchecksum yes 
# rdb文件保存的目录
dir ./ 

11.6 主从复制 REPLICATION

  • 主从复制的部分,后面会有单独的章节进行记录

11.7 安全 SECURITY

  • 可以在这里设置redis密码,默认是没有密码的

Redis(六)------ Redis.conf详解_第6张图片

127.0.0.1:6379> ping
PONG

# 获取redis的密码
127.0.0.1:6379> config get requirepass 
1) "requirepass"
2) ""

 # 设置redis的密码
127.0.0.1:6379> config set requirepass "123456"
OK
# 使用密码登录
127.0.0.1:6379> auth 123456
OK
# 查看密码
127.0.0.1:6379> config get requirepass
1) "requirepass"
2) "123456"

11.8 限制 CLIENTS、MEMORY MANAGEMENT

Redis(六)------ Redis.conf详解_第7张图片

# 设置能连接上redis的最大客户端数量
maxclients 10000 
# redis 配置最大的内存容量
maxmemory <bytes> 
# 内存到达上限后的处理策略
maxmemory-policy noeviction 
# redis中默认的过期策略是 volatile-lru
1、volatile-lru:只对设置了过期时间的key进行LRU(默认值)
2、allkeys-lru:删除lru算法的key
3、volatile-random:随机删除即将过期key
4、allkeys-random:随机删除
5、volatile-ttl:删除即将过期的
6、noeviction:永不过期,返回错误

# 设置方式
config set maxmemory-policy volatile-lru 

11.9 AOF配置 APPEND ONLY MODE

Redis(六)------ Redis.conf详解_第8张图片

# 默认不开启aof模式,默认使用rdb方式持久化,在大部分情况下,rdb完全够用
appendonly no

# 持久化文件的名字
appendfilename "appendonly.aof" 

# 每次修改都会 sync 消耗性能
appendfsync always 
# 每秒执行一次 sync 可能会丢失这1s的数据
appendfsync everysec 
# 不执行 sync 这个时候操作系统自己同步数据 速度最快
appendfsync no 

11.10 bgsave 异步进行

  • bgsave是异步进行,进行持久化的时候,Redis还可以继续响应客户端的要求
  • bgsave和save的对比
命令 save bgsave
IO类型 同步 异步
阻塞 是(阻塞发生在fock(),通常非常快)
复杂度 O(n) O(n)
优点 不会消耗额外的内存 不阻塞客户端命令
缺点 阻塞客户端命令 需要fock()子进程,消耗内存

你可能感兴趣的:(Redis学习笔记,Redis,redis)