# 配置文件 redis.conf #为注释 ##为参数说明 ``` ## redis启动时是否进入后台模式,设置no会在前台终端输出日志,建议yes daemonize yes ## 定义pid文件路径 pidfile /var/log/redis/redis.pid ## 定义端口,默认端口6379 port 6379 ## 定义backlog数值,backlog用于存放未连接队列,(客户端与服务端之间的连接数大小) tcp-backlog 511 ## 定义客户端空闲多少秒后关闭此连接,如果设置为0,则服务端永不主动关闭连接。(客户端和服务端至少有一个要设置关闭,不然会浪费资源) timeout 0 ## 当客户端和服务端通信完成后,服务端会每隔一个时间段(单位秒),向客户端发起探测,查询客户端是否存活,此参数定义该时间段。若设置为0,表示不去探活,官方建议设置成60 tcp-keepalive 60 ## 定义日志级别 loglevel notice ## 定义日志路径 logfile "/var/log/redis/redis.log" ## 设置数据库数量 databases 16 ## rdb持久化相关设置,如果设置为 "" 表示不持久化。两个数值为一组,分别表示多少秒内有多少个key被修改则执行持久化操作。 # save 3600 1 300 100 60 10000 save "" ## 如果设置为yes,则当持久化出错时,主进程将会停止写入操作,设置为no,当持久化出错,主进程不会停止写操作 stop-writes-on-bgsave-error yes ## rdb持久化文件是否压缩 #rdbcompression no ## 写入文件和读取文件时是否开启rdb文件检查,检查是否有无损坏,如果在启动时检查发现损坏,则停止启动。 #rdbchecksum yes ## 定义rdb文件名 #dbfilename dump.rdb ## 定义持久化路径 dir /db/redis ## 设置成yes,主从复制中,从服务器可以响应客户端请求;设置成no,主从复制中,从服务器将阻塞所有请求,有客户端请求时返回“SYNC with master in progress” replica-serve-stale-data yes ## 从服务器是否只读,设置为yes的话,从服务器为只读模式 replica-read-only yes ## 主从复制的同步策略,设置为no表示使用磁盘模式,如果设置为yes使用无盘模式(网络) repl-diskless-sync no ## 设置无磁盘同步等待时间,同步开始以后无法为新到的slave开始同步,所以可以设置等待几秒的时间让尽可能多的slave连接,以便给多个slave开始同步;(默认5秒,设置为0禁用等待,会立即开始同步) repl-diskless-sync-delay 5 ## 设置同步后是否关闭socket上的TCP_NODELAY;如果设置yes,redis会用更小的tcp包和更小的带宽去发送同步数据,可能会造成同步延迟(linux内核默认的配置是40ms);如果设置no,同步延迟会更低,但带宽占用会增加; repl-disable-tcp-nodelay no ## 设置提升优先级,master宕机后哨兵会将一个slave提升为master,优先级小的更容易被提升;(设置0表示slave永远不会被提升为master,默认100) replica-priority 100 ## 是否开启aof持久化 appendonly yes ## 定义aof持久化文件名 appendfilename "appendonly.aof" ## 定义aof文件存放路径 appenddirname "appendonlydir" ## 定义aof持久化同步磁盘模式 appendfsync everysec ## Redis启动并加载AOF时,有发现AOF文件的末尾被截断了。如果设为yes,末尾被截断的aof文件将会被加载,并打印日志通知用户;如果设置为no,服务器将报错并拒绝启动。 aof-load-truncated yes ## 是否开启混合持久化,如果设置为yes,表示开启,可以实现更快的aof重写和启动时数据恢复 aof-use-rdb-preamble no ## 如果设置为yes,当aof文件重写时,每次批量写入磁盘的数据量为4M,避免单次刷盘数据过多造成硬盘阻塞 aof-rewrite-incremental-fsync yes ##是否在后台写时执行同步,默认值no(表示需要同步).这里的后台写,表示后台正在重写文件(包括bgsave和bgrewriteaof。其实关掉bgsave之后,主要的即是aof重写文件了).no表示新的主进程的set操作会被阻塞掉,而yes表示新的主进程的set不会被阻塞,待整个后台写完成之后再将这部分set操作同步到aof文件中。但这可能会存在数据丢失的风险(机率很小),如果对性能有要求,可以设置为yes,仅在后台写时会异步处理命令 no-appendfsync-on-rewrite no ## aof文件上次重写后的大小会被记录下来,当aof文件增长的尺寸超过上次大小百分80时就会触发重写操作 auto-aof-rewrite-percentage 80 ## aof文件必须要不低于这个尺寸时才会触发重写,后面的每次重写就不会根据这个变量了(根据上一次重写完成之后的大小).此变量仅初始化启动redis有效.如果是redis恢复时,则lastSize等于初始aof文件大小 auto-aof-rewrite-min-size 300mb ## 查询超过多少微秒(1s=1000毫秒=1000000微秒)则会记录慢查询日志 slowlog-log-slower-than 10000 ## 最多记录多少条慢查询日志 slowlog-max-len 128 ## 设置为0表示关闭延迟监控,单位为毫秒,一般用不到 latency-monitor-threshold 0 ## 设置密码 requirepass 123123 ## 将config指令重命名 rename-command CONFIG bZ840VfcY02dy ## 定义绑定ip #bind 127.0.0.1 ```