一、配置详情
1、单位
# 1k => 1000 bytes
# 1kb => 1024 bytes
# 1m => 1000000 bytes
# 1mb => 1024*1024 bytes
# 1g => 1000000000 bytes
# 1gb => 1024*1024*1024 bytes
2、include - 引入配置文件
引入其他的配置文件,组合配置文件,就好比spring的import,include
# include /path/to/local.conf
# include /path/to/other.conf
**3、网络 **
3.1、绑定 - bind
绑定的网络地址,这里面的地址写了,才能被这个地址访问。
# bind 192.168.1.100 10.0.0.1 # listens on two specific IPv4 addresses
# bind 127.0.0.1 ::1 # listens on loopback IPv4 and IPv6
# bind * -::* # like the default, all available interfaces
bind 0.0.0.0
3.2、protected-mode - 保护模式
保护模式一般都是开启的。
protected-mode yes
3.3、port - 端口
设置访问redis的端口号
port 6379
tcp-backlog 511 #tcp连接
timeout 0 #连接超时时间
tcp-keepalive 300 #
4、通用 - GENERAL配置
4.1、daemonize - 守护进程
daemonize yes #是否已守护进程开启,默认是no。yes是后台运行。
4.2、supervised - 管理线程
# supervised auto #默认是no
4.3、pidfile -
pidfile /var/run/redis_6379.pid #若 daemonize yes 以后台的方式运行 ,就需要指定一个pid文件!
4.4、loglevel notic - 日志级别
# 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 "" #日志文件位置,如果为空只是打印输出
4.5、databases - 数据库数量
databases 16 #默认使用17个数据库0-16
4.6、是否显示logo
always-show-logo no #默认是no 不显示(版本不一样默认值不一样)
5、save - 快照
5.1、save - 快照
持久化,在规定时间内,执行了多少次操作,则会持久化到文件。.rdb .aof
redis 是内存数据库,如果没有持久化,那么数据断电丢失。
#如果 3600s 内,如果至少有1 key进行了修改,我们进行持久化操作
save 3600 1
# 如果 300s 内,如果至少有100 key进行了修改,我们进行持久化操作
save 300 100
# 如果 60s 内,如果至少有10000 key进行了修改,我们进行持久化操作
save 60 10000
#后面根据需求自定义。
5.2、stop-writes-on-bgsave-error
stop-writes-on-bgsave-error yes #持久化出错后,是否继续工作。
5.3、rdbcompression - 压缩
rdbcompression yes #是否压缩rdb文件,需要消耗一些cpu资源!
5.4、rdbchecksum - 检验rdb
rdbchecksum yes #是否校验。保存rdb文件的时候,进行错误的检查校验!
5.5、dir - rdb文件保存路径
dir ./
6、REPLICATION - 复制
主从复制相关操作
7、SECURITY - 安全
7.1、设置密码
requirepass 123456 #设置验证密码
config get requirepass #获取密码
config set requirepass "123456" #设置密码
auth 123456 #验证密码
8、CLIENTS - 客户端
8.1、maxclients - 设置最大连接数
maxclients 10000 #设置连接最大客户端
9、设置内存容量
9.1、设置最大内存容量
maxmemory <bytes> # 设置最大内存容量
9.2、设置内存溢出策略
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 : 永不过期,返回错误
10、APPEND ONLY MODE - aof模式
10.1、appendonly - aof是否开启
appendonly no #默认不开启aof模式,默认使用rdb方式持久化。在大部分所有的情况下,rdb完全够用。
appendfilename "appendonly.aof" #持久化的文件名字。
# appendfsync always #每次修改都会sync。消耗性能
appendfsync everysec #每秒执行一次sync(同步)可能会丢失这1s的值。
# appendfsync no #不执行sync同步,这个时候操作系统自己同步数据,速度最快。