undefined

Redis.conf 详解

  1. 配置文件中 unix 单位对大小写不敏感

  2. 网络

    1
    2
    3
    bind 127.0.0.1 -::1  # 绑定的ip
    protected-mode yes # 保护模式
    port 6379 # 端口设置
  3. 通过GENERAL

    1
    2
    3
    4
    5
    6
    daemonize yes # 以守护进程的方式运行,默认为 no,我们需要自己开启为 yes
    pidfile /var/run/redis_6379.pid # 如果以后台方式运行,我们需要指定一个 pid 文件
    loglevel notice # 日志级别(debug、verbose、notice、warning)
    logfile "" # 日志的文件位置,如果为空,则stdout
    databases 16 # 数据库的数量,默认是 16个数据库
    always-show-logo no # 是否总是显示logo
  4. 快照 SNAPSHOTTING

    处久化,在规定的时间内,执行了多少次操作,则持久化到文件 .rdb .aof

    Redis 是内存数据库,如果没有持久化,那么数据断电即失

    1
    2
    3
    4
    5
    6
    7
    8
    # save 3600 1  # 如果 3600 秒内,如果至少有一个 key 进行了修改,我们就进行持久化操作
    # save 300 100 # 如果 300 秒内,如果至少 10 key进行了修改,我们及时进行持久化操作
    # save 60 10000 # 如果 60 秒内,如果至少 10000 key 进行了修改,我们及时进行持久化操作

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

  6. 安全 SECURITY

    可以设置 redis 的密码,默认是没有密码

    1
    2
    3
    1. config set requirepass "123456" # 设置 redis 密码
    2. config get requirepass # 得到密码
    3. auth 123456 # 使用密码进行登录即可
  7. 限制 CLIENTS

    1
    2
    3
    maxclients 10000 # 限制能连接上 redis 的最大的客户端数量
    maxmemory <bytes> # redis 配置的最大的内存容量
    maxmemory-policy noeviction # 内存达到上限之后的处理策略,noeviction 表示用不过期,返回错误
  8. APPEND ONLY 模式 aof 配置

    1
    2
    3
    4
    5
    6
    appendonly no # 默认不使用aof 模式的,模式是使用 rdb 方式持久化的,在大部分所有的情况下,rdb 完全够用
    appendfilename "appendonly.aof" # 持久化的文件的名字

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