配置文件
Redis 配置文件说明
- /etc/redis.conf
bind 0.0.0.0 #0.0.0.0表示监听所有IP,也可以用空格隔开后监听多个IP,默认是只允许本机
protected-mode yes #redis3.2之后加入的新特性,在没有设置bind IP和密码的时候,redis只允许访问127.0.0.1:6379,可以远程连接,但当访问将提示警告信息并拒绝远程访问,yes启用 no禁用(即允许远程空密码连接)
port 6379 #redis的默认监听端口端口号 TCP/6379
tcp-backlog 511 #三次握手的时候server端收到client ack确认号之后的队列值,即全连接队列长度,建议优化内核参数
#半连接:用户发起请求报文syn,服务器响应后,用户没有第三次握手的回应(默认只能接受128个)
#全连接队列:(默认也是128个)
timeout 0 #客户端和redis服务端的连接超时时间,默认是0,0表示永不超时
tcp-keepalive 300 #tcp会话保持时间,默认300s
daemonize yes #守护进程,no表示以前台运行
loglevel notice #日志记录级别
logfile "/apps/redis/log/redis.log" #指定日志记录位置,默认没有没有,需要指定
databases 16 #设置数据库数量,默认:0-15,共16个库,通常只用0库就够了
always-show-logo yes #在启动redis时,是否显示或在日志中记录redis的logo
supervised no #和os相关参数,可设置通过upstart和systemd管理redis守护进程,centos7后都使用systemd
pidfile /var/run/redis_6379.pid #进程路径,可修改为/apps/redis/run/redis_6379.pid
# requirepass foobared
requirepass passwd #设置登录密码
# maxclients 10000
redis最大连接客户端的数量,默认10000
#重要!
# maxmemory <bytes>
redis使用的最大内存,单位为bytes字节,0为不限制,建议设置为物理内存的一半,需要注意的是缓冲区是不计算maxmemory内,生产中如果不设置此项,可能会导致OOM(内存满后乱杀进程)而redis通常是占用内存最高的程序 所以极有可能宕掉
#8G内存的计算方式:8(G)*1024(MB)*1024(KB)*1024(bytes)/2
#1G内存的计算方式:echo 2^20*1024/2|bc
#持久化策略(参阅redis持久化)
...
# 多线程
...Redis 动态修改配置文件
config命令用于查看当前redis配置、以及不重启redis服务实现动态修改redis配置等
注意
- 此方式无法永久保存,需配合修改配置文件来防止重启后失效
- 不是所有配置都可以动态修改
#以下针对的都是info中的项
------------------------------------------------------------------------------
#GET表示查看
127.0.0.1:6379> CONFIG GET dir
1) "dir"
2) "/apps/redis/data"
127.0.0.1:6379> CONFIG GET maxmemory
1) "maxmemory"
2) "536870912"
127.0.0.1:6379> CONFIG GET *mem* #支持通配符
1) "maxmemory"
2) "209715200"
3) "maxmemory-samples"
4) "5"
5) "slave-ignore-maxmemory"
6) "yes"
7) "replica-ignore-maxmemory"
8) "yes"
9) "maxmemory-policy"
10) "noeviction"
------------------------------------------------------------------------------
#SET表示动态修改
#修改前查看
127.0.0.1:6379> CONFIG GET maxmemory
1) "maxmemory"
2) "536870912"
#修改
127.0.0.1:6379> [root@8 ~]# vim /apps/redis/etc/redis.conf
OK
#修改后查看
127.0.0.1:6379> CONFIG GET maxmemory
1) "maxmemory"
2) "268435456"
#修改后不要忘记修改配置文件,否则重启后会失效
[root@8 ~]# vim /apps/redis/etc/redis.conf
...
maxmemory 268435456
...