Redis配置文件与慢日志

02 配置文件与慢日志


配置文件各字段含义

1 单机相关
# 监听地址,可以用空格隔开监听多个IP
bind 0.0.0.0	(此时表示所有)

# 在默认配置下(bind 127.0.0.1)远程连接会被直接拒绝!!!
# 在注释掉 bind 之后,远程连接能够连上,但是无法进行任何操作(保护模式生效)
保护模式:只在'注释掉bind且无密码'的情况下生效!!!!!!!!!!!
protected-mode yes

# 监听端口,默认6379/tcp
port 6379

# 三次握手的时候server端收到client ack确认号之后的队列值,即【全连接队列长度】
tcp-backlog 511

# [tcp会话]保持时间(s)
tcp-keepalive 300

# 决定:直接运行redis-server程序时,是否作为守护进程后台运行
# 当redis作为守护进程运行的时候,它会写一个 pid 到 /var/run/redis.pid 文件中
daemonize no    # 默认no(默认前台运行)

# pid文件路径,可以修改
pidfile /var/run/redis.pid

# 需要记录的日志级别
loglevel notice

# 日志路径,可以修改
# 注意:修改之后若导致服务无法启动,需执行 chown redis.redis /path/redis.log
logfile "/path/redis.log"

# 设置数据库数量,默认:0-15 共16个库
databases 16

# 决定:在前台启动redis时是否显示logo、启动redis时是否在日志中记录logo
always-show-logo yes
# 设置redis连接密码,之后发起连接需要加上 [AUTH pass]
# 如果有特殊符号,用" "引起来,
# 生产建议设置
requirepass foobared

# 重命名一些高危命令!!!!!!!!!!!!!!!。。。。。。。。。。。。。。
rename-command
如:rename-command FLUSHALL ""    # 表示禁用此命令
如:rename-command del magedu     # 将命令 del 设置为别名 magedu

# Redis最多允许连接客户端的数量
maxclients 10000

# redis使用的最大内存(bytes)	0 为不限制
# 建议设为本机物理内存的一半
# 需要注意缓冲区不计算在maxmemory之内
# 生产中如果不设置此项,可能会导致OOM
maxmemory <bytes>

=

2 集群相关
# 是否开启集群模式
# 默认不开启,即单机模式
cluster-enabled yes


# lua脚本的最大执行时间(ms)
lua-time-limit 5000


# 由node节点自动生成的集群配置文件名称
cluster-config-file nodes-6379.conf


# 集群中node节点连接超时时间,超过此时间会被踢出集群(ms)
cluster-node-timeout 15000


# 在执行故障转移的时候可能有些节点和master断开一段时间导致数据比较旧,这些节点就不适用于选举为master
# 超过这个时间的就不会被进行故障转移,不能当选master
# 计算公式:(node-timeout * replica-validity-factor) + repl-ping-replica-period
# 单位(次)
cluster-replica-validity-factor 10


# 集群迁移屏障,一个主节点至少拥有1个正常工作的从节点,即如果主节点的slave节点故障后会将多余的从节点分配到当前主节点成为其新的从节点。
cluster-migration-barrier 1


# 集群请求槽位全部覆盖,如果一个主库宕机且没有备库就会出现集群槽位不全,那么yes时redis集群槽位验证不全,就不再对外提供服务(对key赋值时,会出现CLUSTERDOWN The cluster is down的提示,cluster_state:fail,但ping 仍PONG),而no则可以继续使用,但是会出现查询数据查不到的情况(因为有数据丢失)。
# 生产建议为no
cluster-require-full-coverage yes


# 是否允许在主服务器发生故障时尝试对其主服务器进行故障转移
# 但是,主服务器仍然可以执行手动强制故障转移。。一般为no
cluster-replica-no-failover no 

=

3 慢查询相关
# Redis 用来记录超过指定执行时间的日志系统
# 执行时间不包括与客户端交谈,发送回复等I/O操作,而是实际执行命令所需的时间(在该阶段线程被阻塞并且不能同时为其它请求提供服务)
# 由于slow log 保存在内存里面,读写速度非常快,因此可放心地使用,不必担心开启 slow log 而影响Redis的速度
Slow log

# 超过此时间限制的记录(微秒)
# 为负数会禁用慢日志
# 为 0 会记录所有命令操作
# 默认值为10000(10ms)
# 生产建议设为1000(1ms)
slowlog-log-slower-than 10000

# 最多记录【多少条】慢日志的保存队列
# 达到此长度后,记录新命令会将最旧的命令从命令队列中删除,以此滚动删除【先进先出】
# 队列固定长度,默认128(值偏小,生产建议设为1000以上)
slowlog-max-len 128

config命令 动态修改配置

主命令:config set

  • 不是所有配置都可以动态修改!!!(可以使用命令 CONFIG GET * 来列出支持此方式的所有配置参数)
  • 只是临时修改、不能持久化(重启服务即失效)
  • 修改的配置参数都会立即生效
# 格式
CONFIG SET parameter value

# 查询指定配置参数的值(支持通配符)
CONFIG GET parameter

查看慢日志

# 查看慢日志的记录条数
slowlog len

# 查看慢日志的【前n条】记录
SLOWLOG GET [n]

# 清空慢日志
SLOWLOG reset
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值