在 Redis 的安装目录中有一个名为 redis.windows.conf 的配置文件,若在 Linux 中则为 redis.conf
查看配置项
语法格式如下:
redis 127.0.0.1:6379> CONFIG GET 配置名称
示例:
- 获取日志等级的配置项:
redis 127.0.0.1:6379> CONFIG GET loglevel
1) "loglevel"
2) "notice"
Redis 的日志级别有以下四种:
1. debug:会打印出很多信息,适用于开发和测试阶段。
2. verbose(冗长的):包含很多不太有用的信息,但比debug简化一些。
3. notice:适用于生产模式。
4. warning : 警告信息。
Redis 默认设置为 verbose,开发测试阶段可以用 debug,生产模式一般选用 notice。
- 通过使用*可以查看所有配置项,命令如下:
redis 127.0.0.1:6379> CONFIG GET *
更改配置项
如果想要重新设置配置项,需要使用以下命令:
redis 127.0.0.1:6379> CONFIG SET 配置项名称 配置项参数值
示例如下:
127.0.0.1:6379> CONFIG SET loglevel "verbose"
OK
127.0.0.1:6379> CONFIG GET loglevel
1) "loglevel"
2) "verbose"
示例
redis 127.0.0.1:6379> config get requirepass // 获取密码
1) "requirepass"
2) ""
redis 127.0.0.1:6379> config set requirepass 12345 // 修改密码,这是一个热修改,并不会保存到配置文件中,重启计算机后无效;也可以修改端口号
OK
redis 127.0.0.1:6379> config set requirepass "" // 取消密码
OK
redis 127.0.0.1:6379> config rewrite 可以把配置信息修改持久化
如果出现错误:NOAUTH Authentication required
解决:
auth "12345"
更改配置文件
Redis 某些配置信息无法直接通过命令修改,此时就需要修改配置文,比如设置 Redis 允许远程连接的功能。配置文件修改如下:
1.注释掉本地IP地址,绑定要访问的外部IP
#bind 127.0.0.1 ::1
bind 192.168.1.1
2.关闭保护模式(把yes改为no)
protected-mode no
3.重启服务器,windows重启
redis-server --service-stop
redis-server --service-start
4. Linux重启
sudo /etc/init.d/redis-server restart
注意:修改redis配置文件,必须重启redis服务才能生效
下表对一些配置项做了简单地说明:
配置项 | 参数 | 说明 |
daemonize | no/yes | 默认为 no,表示 Redis 不是以守护进程的方式运行,通过修改为 yes 启用守护进程。 |
pidfile | 文件路径 | 当redis以守护进程方式运行时,会把进程pid写入自定义的文件中 |
port | 6379 | 指定redis监听端口,默认端口为6379 |
bind | 127.0.0.1 | 绑定的主机地址 |
timeout | 0 | 客户端闲置多少秒之后关闭连接,如果指定为0,表示不启用该功能 |
loglevel | notice | 指定日志记录级别,支持四个级别:debug、verbose、notice、warning,默认为 notice。 |
logfile | stdout | 日志记录方式,默认为标准输出 |
databases | 16 | 设置数据库的数量(0-15个)共16个,Redis 默认选择的是 0 库,可以使用 SELECT 命令来选择使用哪个数据库储存数据。 |
save[seconds] [changes] | 可以同时配置三种模式:save 900 1; save 300 10; save 60 10000 | 表示在规定的时间内,执行了规定次数的写入或者修改操作,redis就会将数据同步到指定的磁盘文件中。比如900s 内做了一次更改,Redis 就会自动执行数据同步。 |
rdbcompression | yes/no | 当数据存储到本地数据库时是否要压缩数据,默认为yes |
dbfilename | dump.rdb | 指定本地存储数据库的文件名,默认为dump.rdb |
dir | ./ | 指定本地数据库存放目录 |
slaveof < masterip> < masterport> | 主从复制配置选项 | 当本机为slave服务时,设置master服务的IP地址以及端口,在redis启用时,它自动与master主机进行数据同步 |
requirepass | 默认关闭 | 密码配置项,默认关闭,用于设置 Redis 连接密码。如果配置了连接密码,客户端连接 Redis 时需要通过 密码认证。 |
maxmemory < bytes> | 最大内存配置项 | 指定redis最大内存限制,redis在启动时会把数据加载到内存中,达到最大内存后,redis会尝试清除已经到期或者即将到期的key,当此方法处理后,如果仍然到达最大内存设置,将无法再进行写入操作,但可以读取操作 |
appendfilename | appendonly.aof | 指定AOF持久化时保存数据的文件名,默认为appendonly.aof |
glueoutputbuf | yes |