redis-07 配置

Redis.conf 详解

启动的时候就通过配置文件来启动的
cd /usr/local/bin
kconfig文件
1、配置文件unit单位对大小写不敏感

# units are case insensitive so 1GB 1Gb 1gB are all the same
// 单位不区分大小写,因此1GB、1Gb、1gB均为相同容量
################### INCLUDES #########################

2、可以包含其他配置文件

################### INCLUDES #########################
# include /path/to/local.conf
# include /path/to/other.conf

3、网络配置

################### NETWORK #########################
bind 127.0.0.1 // 绑定的ip
protected-mode yes // 保护模式
port 6379  // 端口

4、通用配置

################### GENERAL #########################
daemonize yes  // 以守护进程的方式运行,默认是no 需要自己开启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)
// debug(调试)(输出大量信息,便于开发/测试)
# verbose (many rarely useful info, but not a mess like the debug level)
// verbose(详细模式)(包含大量稀有用信息,但不会像调试级别那样杂乱无章)
# notice (moderately verbose, whet you want in production probably)
// notice(注意)(中等详细程度,生产环境中可能需要的详细信息)
# warning (only very important / critical messages are logged)
// warning(警告)(仅记录非常重要的/关键信息)
loglevel notice
logfile ""  // 日志的文件位置名称
databases 16   // 默认的数据库数量 默认16
always-show-logo yes //是否总是显示logo

5、快照
持久化,在规定的时间内,执行了多少次操作,则会持久化到文件.rdb .aof
redis是内存数据库,如果没有持久化,那么数据断电即失

################### SNAPSHOTTING #########################
save 900 1  //900秒内如果至少有一个key进行了修改,就进行持久化操作
save 300 10  // 300秒内 如果至少有10个key进行了修改,就进行持久化操作
save 60 10000  // 60秒内 如果至少有10000个key进行了修改,就进行持久化操作
stop-writes-on-bgsave-error yes  // 持久化如果出错,是否还需要继续工作
rdbcompression yes //是否压缩rdb文件,需要消耗一些cpu资源
rdbchecksum yes // 保存rdb文件的时候 进行错误的检查校验
dbfilename dump.rdb  // rdb文件名称默认是dump.rdb
dir ./  // rdb持久化文件的存储目录 默认是./当前目录

6、主从复制

################### REPLICATION #########################

7、安全
设置密码

################### SECURITY #########################
# requirepass foobared  // 要求密码
requirepass 123456  // 默认是没有的需要自己insert写入

一般是在服务里设置密码

127.0.0.1:6379> config get requirepass  // 获取redis密码
1) "requirepass"
2) ""  //默认没有密码
127.0.0.1:6379> config set requirepass "123456"
ok
127.0.0.1:6379> config get requirepass
(error) NOAUTH Authentication required.  // 设置完密码就必须先登录才能再操作redis了 不然没有redis命令的权限
127.0.0.1:6379> auth 123456  // 校验权限密码
ok
127.0.0.1:6379> config get requirepass
1) "requirepass"
2) "123456"  // 登录后可以看到密码了

8、客户端限制

################### CLIENTS #########################
# maxclients 10000 // 最大客户端连接数 默认10000
################### MEMORY MANAGEMENT #########################
# maxmemory <bytes> // redis 配置最大的内存容量 默认单位是字节
# maxmemory-policy noeviction  // 内存到达上限后的处理策略 
1:volatile-lru  // 只对设置了过期时间的key进行LRU
2:allkeys-lru  // 删除lru算法的key
3:volatile-random  // 随机删除即将过期的key
4:allkeys-random // 随机删除key
5:volatile-ttl //删除即将过期的
6:noeviction // 永不过期,返回错误
// LRU 算法是最近最少使用(Least Recently Used)的缓存淘汰策略,优先移除最久未访问的数据

9、aof 配置

################### APPEND ONLY MODE #########################
appendonly no // 默认不开启aof模式,默认是使用rdb方式持久化,大部分情况下rdb完全够用
appendfilename "appendonly.aof"  // 持久化的aof文件名称
# appendfsync always  // 每次修改都会 sync同步记录 比较消耗性能
appendfsync everysec  // 每秒执行一次同步 但断电可能会丢失这一秒的数据
# appendfsync no  // 不执行sync同步 这个时候操作系统自己同步数据 速度最快

no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容