配置文件目录
以上是常见的redis存放目录
vim /etc/redis.conf
vim /etc/redis/6379.conf
启动配置
# 后台运行: yes 是, no 不是
daemonize yes
# 提供服务的端口
port 6379
# 对外提供的ip地址
bind 127.0.0.1 # 只允许本地连接,如果没有其它服务访问, 推荐这种.
bind 10.11.12.9 # 只允许局域网连接, 还有其它服务访问, [推荐]
bind 0.0.0.0 # 允许任意连接
# 设置客户端连接后进行任何其他指定前需要使用的密码。
requirepass mypass
限制配置
内存设置
默认redis没有内存上限, 如果超时物理内存就会实例挂掉. 所以勿必设置内存大小, 然后配合淘汰策略使用.
# 连接数限制 如果设置 maxclients 0,表示不作限制。
# 注意 2g 和 2gb 是有区别的. 见下面, 大小写不区分.
maxclients 1024
maxmemory 2gb
设置完后可以在: info memory看到
maxmemory:2147483648
maxmemory_human:2.00G
配置内存大小参考
# 1k => 1000 bytes
# 1kb => 1024 bytes
# 1m => 1000000 bytes
# 1mb => 1024*1024 bytes
# 1g => 1000000000 bytes
# 1gb => 1024*1024*1024 bytes
淘汰策略设置
# volatile-lru -> 利用LRU算法移除设置过过期时间的key (LRU:最近使用 Least Recently Used )
# allkeys-lru -> 利用LRU算法移除任何key
# volatile-random -> 移除设置过过期时间的随机key
# allkeys->random -> remove a random key, any key
# volatile-ttl -> 移除即将过期的key(minor TTL)
# noeviction -> 不移除任何可以,只是返回一个写错误
maxmemory-policy volatile-lru
快照配置
# save 900 1 900秒内至少有1个key被改变
# save 300 10 300秒内至少有300个key被改变
# save 60 10000 60秒内至少有10000个key被改变
save 900 1
save 300 10
save 60 10000
# 存储至本地数据库时(持久化到rdb文件)是否压缩数据,默认为yes
rdbcompression yes
# 本地持久化数据库文件名,默认值为dump.rdb
dbfilename dump.rdb
主从复制配置
# 主从复制. 设置该数据库为其他数据库的从数据库.
# 设置当本机为slav服务时,设置master服务的IP地址及端口,在Redis启动时,它会自动从master进行数据同步
#
slaveof 127.0.0.1 6380
# 当master服务设置了密码保护时(用requirepass制定的密码)
# slav服务连接master的密码
#
masterauth 123456
慢查询配置
两个配置参数有关slowlog-log-slower-than
, slowlog-max-len
时间的换算
1秒 = 1000毫秒
1毫秒 = 1000微秒
slowlog-log-slower-than
设置多少微秒, 也就是说某命令超出设置的微秒数将记录.slowlog-max-len
记录存放在哪儿呢? 存在一个列表里, 这个参数就是设置列表的长度.超出采用先进先出的方法移出
slowlog-log-slower-than 10000
slowlog-max-len 128
或
config set slowlog-log-slower-than 20000
config set slowlog-max-len 1000
# 如果需要写入到配置文件则使用以下命令
config rewrite
查看慢日志
redis并没有暴露列表的键值. 所以只能使用特点命令查看
# [n]是一次查看多少条数据
slowlog get [n]
# 查看慢日志有多少条
slowlog len
# 慢日志重置
slowlog reset