03--Redis持久化:配置
redis持久化的两种方式
RDB(Redis Database) :内存中的数据不定期通过快照拷贝到磁盘
AOF(Append Only File) :对将数据操作的执行指令存储下来,实现数据恢复,优先采用AOF方式进行数据恢复,数据完整度更高。
- 如果没有持久化存储需求可以关闭RDB和AOF功能,redis就成为了内存数据库
1 redis配置文件
查看配置文件
# /etc/redis/redis.conf
redis-cli config get *
127.0.0.1:6379> config get *
2 配置解读
基本配置
daemonize no # 默认值no,redis并不以daemon方式运行;yes --> daemon在后台运行
pidfile /path/to/file # 默认值/var/run/redis.pid
bind ip1 ip2 … # 监听客户端请求的ip地址 可以有多个,空格分开 默认只监听本地127.0.0.1
需要远程连接访问 则添加地址 或 直接注释
port 6379 # 默认值6379
#unixsocket /tmp/redis.sock # 指定socket
#unixsocketperm 755 # 指定socket的权限
timeout 0 # 当客户端一直没有请求redis服务,timeout用来设置redis服务端主动关闭这个连接的超时时间;0表示一直不超时
tcp-keepalive 0 # tcp连接保活策略;tcp连接或占用系统资源,为了减少占用,会定发送ACK请求检测客户端是否挂掉;0表示一直不检测
databases 16 # 设置数据库数量,0~15,使用select n来选择指定的库,使用keys *查看库中的所有键
日志配置
loglevel notice # 日志级别;warning --> notice --> verbose --> debug 日志级别–>详细
logfile /path/to/file # 指定日志路径
syslog enabled # 是否将redis日志记录到系统日志中
syslog-ident redis # 指定redis在系统日志中的标志
syslog-facility local0 # 指定syslog设备,可以是user或者local0~local7
RDB持久化配置
save 900 1 # 900s内至少有1次key变化则触发一次持久化(内存中的数据快照到磁盘上)
save 300 10 # 300s内至少有10次key改变则触发一次持久化(内存中的数据快照到磁盘上)
save 60 10000 # 60s内至少有10000次key改变则触发一次持久化(内存中的数据快照到磁盘上)
save “” # 关闭持久化
stop-writes-on-bgsave-error yes # 默认yes,redis持久化写入失败后,redis马上停止写操作
rdbcompression yes # 启用压缩
rdbchecksum yes # 进行数据校验
dir /path/to/file # 快照文件的存储路径
dbfilename dump.rdb # 快照文件的名称
AOF持久化设置
appendonly yes # 开启AOF持久化
appendfilename appendonly.aof # AOF文件名
appendfsync everysec # fsync()调用模式;no,不调用fsync;always,每次写都会调用fsync;
3 配置案例
bind 127.0.0.1 # 表示绑定到本地回环地址,远程连接不了 只允许本地客户端连接访问
port 6379
daemonize no
pidfile /var/run/redis_6379.pid
databases 16
save 900 1
save 300 10
save 60 10000
dbfilename dump.rdb
dir ./