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 <masterip> <masterport> 配置主机的ip和端口
# masterauth <master-password> 配置主机的密码
#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 <bytes> #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,这个时候操作系统自己同步数据,速度最快
网友评论