Redis配置文件详解
- 1 常见内存单位的解释
- 2 配置文件主体
- 2.1 port
- 2.2 daemonize
- 2.3 bind
- 2.4 timeout
- 2.5 tcp-keepalive
- 2.6 loglevel
- 2.7 syslog-enabled
- 2.8 syslog-ident
- 2.9 syslog-facility
- 2.10 databases
- 2.11 快照配置
- 2.12 stop-writes-on-bgsave-error
- 2.13 rdbcompression
- 2.14 rdbchecksum
- 2.15 dbfilename
- 2.16 主从配置参数
- 2.17 slave-serve-stale-data
- 2.18 slave-read-only
- 2.19 repl-ping-slave-period
- 2.20 repl-timeout
- 2.21 repl-disable-tcp-nodelay
- 2.22 slave-priority
1 常见内存单位的解释
1k => 1000 bytes
1kb => 1024 bytes
1m => 1000000 bytes
1mb => 10241024 bytes
1g => 1000000000 bytes
1gb => 10241024*1024 bytes
说明:单位中不区分大小写,例如:1GB,1Gb, 1gB是一样的
2 配置文件主体
2.1 port
port 6379
(监听的端口号,redis默认的端口号是6379)
2.2 daemonize
daemonize yes
(设置守护进程,默认为no,说简单一点就是,关闭命令窗口,服务就跟着关闭了,当设置为yes时,表示将redis设置为守护线程,在后台运行;设置为no时,表示将redis设置为非守护线程,命令窗口关闭,服务也就关闭了,如果设置为yes的话,就会产生一个pid文件,文件的定义为:
pidfile /usr/local/redis-master/run/redis.pid)
2.3 bind
bind 127.0.0.1
(绑定监听的IP地址,默认绑定的就是这个,redis只接收所绑定的IP发来的请求,如果不设置,将处理所有请求,绑定多个IP,就在后面追加,IP之间以空格分隔)
2.4 timeout
timeout 0
(超时时间,客户端空闲超过timeout所设置的时间,服务端会断开连接,为0则服务端不会主动断开连接,不能小于0)
2.5 tcp-keepalive
tcp-keepalive 0
(如果对方宕机或则中间传输网络断了,发送ACK到客户端在指定的时间内没有收到对方的回应就断开TCP链接,此参数会受到内核参数的影响)
2.6 loglevel
loglevel notice
(指定输出消息的级别:
debug:调试级别,详细信息,信息量大
verbose:详细信息,信息量较大
notice:通知,生产环境推荐
warning:错误信息告警信息
日志输出文件,默认在非守护进程运行的时候,就直接输出到终端,如果用守护进程运行的时候,日志输入到/dev/null,如果向记录日志,就要指定log file的位置:
logfile /var/log/redis.log)
2.7 syslog-enabled
syslog-enabled no
(是否把日志输出到系统日志中,默认是no)
2.8 syslog-ident
syslog-ident redis
(设置系统日志标识 默认是redis)
2.9 syslog-facility
syslog-facility local0
(指定syslog的级别,值必须在local0-local7之间)
2.10 databases
databases 16
(设置redis数据库的数量,默认为16)
2.11 快照配置
save 900 1
save 300 10
save 60 10000
(将DB保存到磁盘的规则定义,
在900秒内如果至少有一个键值发生变化,就保存
在300秒内荣国至少有10个键值发生变化,就保存
在60秒内荣国至少有10000个键值发生变化,就保存)
2.12 stop-writes-on-bgsave-error
stop-writes-on-bgsave-error yes
(启用上面的快照(RDB),设置为yes,在一个存盘点之后,如果磁盘坏掉或则全限问题,redis将依然可以正常工作)
2.13 rdbcompression
rdbcompression yes
(是否将字符串用LZF压缩到.rdb 数据库文件中,如果想节省CPU资源可以将其设置成no,但是字符串存储在磁盘上占用空间会很大,默认是yes)
2.14 rdbchecksum
rdbchecksum yes
(rdb文件的校验,如果校验将避免文件格式损坏,如果不校验将在每次操作文件时都要校验文件,资源消耗严重,将此参数设置为no,将跳过校验)
2.15 dbfilename
dbfilename dump.rdb
(redis的工作目录,它会将转储文件存储到这个目录下,并生成一个附加文件, dir /usr/local/redis-master/db)
2.16 主从配置参数
slaveof 127.0.0.1 65532
(如果本地是salve从属服务器那么配置该项,slaveof ,)
master的验证密码:
masterauth
2.17 slave-serve-stale-data
slave-serve-stale-data yes
(当从主机脱离主的链接时,如果此值为yes当客户端查询从时,回响应客户端,如果是第一次同步回返回一个日期数据或这空值,如果设置为no,则返回“SYNC with master in progress”到INFO and SLAVEOF)
2.18 slave-read-only
slave-read-only yes
(从服务器只读(默认))
2.19 repl-ping-slave-period
repl-ping-slave-period 10
(从发送ping到主的时间间隔(单位:秒))
2.20 repl-timeout
repl-timeout 60
(批量传输I / O超时和主数据或ping响应超时 默认60s 必须大于repl-ping-slave-period值)
2.21 repl-disable-tcp-nodelay
repl-disable-tcp-nodelay no
(此选项如果是“yes”那么Redis的使用数量较少的TCP数据包和更少的带宽将数据发送到,在从主机上延迟40毫秒(linux kernel中的40毫秒)出现。如果是no将在slave中减少延迟,但是流量使用回相对多一些,如果用多个从主机,此处建议设置成yes )
2.22 slave-priority
slave-priority 100
(从主机的优先级,如果当主主机挂了的时候,将从从主机中选取一个作为其他从机的主,首先优先级的数字最低的将成为主,0是一个特殊的级别,0将永远不会成为主。默认值是100.)