redis配置文件的详解

1.include命令

# include .\path\to\local.conf   可以包含其他的配置文件
# include c:\path\to\other.conf

2.网络配置

bind 127.0.0.1     #配置的服务器的ip
port 6379           #默认的端口号是6379

3.通用的信息 日志等

daemonize yes  #默认的开启守护进程
pidfile /var/run/redis_6379.pid     #如果守护进程开启那么我们需要指定一个pid

# Specify the server verbosity level.
# This can be one of:
# 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  #有四种级别  默认是notice
logfile "" #日志存放的地址
databases 16  #redis的数据库一共有16个

4.SNAPSHOTTING 快照

持久化,在规定的时间内,执行了多少次操作,那么则会持久化操作到文件.rdb,.aof中
redis是内存数据库,如果没有持久化,那么就会断电即失
save 900 1      #如果在900秒内至少有一个key修改,那么就会进行持久化操作
save 300 10     #如果在300秒内至少有一个key修改,那么就会进行持久化操作
save 60 10000   #如果在60秒内至少有一个key修改,那么就会进行持久化操作

stop-writes-on-bgsave-error yes  #如果持久化操作失败,那么还是否要继续工作

rdbcompression yes    #是否需要压缩rdb文件,需要消耗一些cpu资源
rdbchecksum yes         #保存rdb文件的时候,进行错误的检验
dir ./                  #rdb文件保存的路径

5.REPLICATION 主从复制

# slaveof                    配置主机的ip和端口
# masterauth               配置主机的密码
#slave-serve-stale-data yes                 主从复制中,从服务器可以响应客户端请求 一般是读操作
#slave-read-only yes                        丛机只能是读操作,默认是开启的
#repl-diskless-sync no        #主从同步支持两种策略,即disk和socket方式(socket方式尚不完  善,还处于实验阶段) 新的slave端和重连的salve端不允许去继续同步进程,这被称之为“完全同步”。一个RDB文件从master端传到slave端,分为两种情况:1、支持disk:master端将RDB file写到disk,稍后再传送到slave端;2、无磁盘diskless:master端直接将RDB file传到slave socket,不需要与disk进行交互。无磁盘diskless方式适合磁盘读写速度慢但网络带宽非常高的环境。
#repl-diskless-sync no                 #默认不使用diskless同步方式               
#repl-diskless-sync-delay 5       #无磁盘diskless方式在进行数据传递之前会有一个时间的延迟,以便slave端能够进行到待传送的目标队列中,这个时间默认是5秒
#repl-disable-tcp-nodelay no     #是否启用TCP_NODELAY,如果启用则会使用少量的TCP包和带宽去进行数据传输到slave端,当然速度会比较慢;如果不启用则传输速度比较快,但是会占用比较多的带宽。
#slave-priority 100          #slave端的优先级设置,值是一个整数,数字越小表示优先级越高。当master故障时将会按照优先级来选择slave端进行恢复,如果值设置为0,则表示该slave永远不会被选择。

6.security 安全

127.0.0.1:6379> oing
(error) ERR unknown command 'oing'
127.0.0.1:6379> ping   #在没有密码的情况下我们可以看到是可以ping通的
PONG
127.0.0.1:6379> config get requirepass      #我们可以通过这个命令去看是否配置了密码
1) "requirepass"
2) ""
127.0.0.1:6379> config set requirepass "123456"     #我们可以设置密码
OK
127.0.0.1:6379> ping
(error) NOAUTH Authentication required.     #可以看到此刻ping不通,需要进行密码的验证
127.0.0.1:6379> auth 123456
OK                                  #验证通过
127.0.0.1:6379> ping                #可以看到再次ping通
PONG
127.0.0.1:6379>

7.limit 限制

maxclients 10000            #设置能连上redis的最大客户端数量,默认是1万个,这个是默认的配置,一般不做修改

maxmemory            #redis的最大内存设置,默认是字节

maxmemory-policy noeviction   #内存达到上限之后的处理策略
# volatile-lru -> remove the key with an expire set using an LRU algorithm  只对设置了过期时间的key进行删除
# allkeys-lru -> remove any key according to the LRU algorithm  删除lru算法的key
# volatile-random -> remove a random key with an expire set   随机删除即将过期的key
# allkeys-random -> remove a random key, any key                随机删除
# volatile-ttl -> remove the key with the nearest expire time (minor TTL)   删除即将过期的key
# noeviction -> don't expire at all, just return an error on write operations 永不过期,返回错误

8.aof 配置 APPEND ONLY MODE

appendonly no   默认是不开启配置的    默认是使用rdb模式的
appendfilename "appendonly.aof"  # 文件名称

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

你可能感兴趣的:(redis配置文件的详解)