2024-01-04
服务器
redis6.2
357

一、Redis 安装

1.下载安装
官网地址:https://redis.io/
# php扩展版本:5.3.7,redis版本:6.2.12
cd /usr/local/download
wget https://download.redis.io/releases/redis-6.2.12.tar.gz

tar -zxvf redis-6.2.12.tar.gz
cd redis-6.2.12

make clean
make && make install PREFIX=/usr/local/software/redis6.2
2.复制配置文件
cp /usr/local/download/redis-6.2.12/redis.conf /usr/local/software/redis6.2/bin/
3.设置开机启动
vim /etc/systemd/system/redis62.service

[Unit]
Description=redis-server
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/software/redis6.2/bin/redis-server /usr/local/software/redis6.2/bin/redis.conf
PrivateTmp=true

[Install]
WantedBy=multi-user.target

systemctl status redis62.service # 查看服务当前状态
systemctl enable redis62.service # 设置开机自启动
systemctl disable redis62.service # 停止开机自启动
4.创建软链接
ln -s  /usr/local/software/redis6.2/bin/redis-cli /usr/bin/redis-cli
ln -s  /usr/local/software/redis6.2/bin/redis-server /usr/bin/redis-server
5.常用命令
redis-cli -v

systemctl start redis62.service # 启动服务
systemctl stop redis62.service # 停止服务
systemctl restart redis62.service # 重启服务

二、Redis 配置

1.查看配置
redis-cli -h 127.0.0.1 -p 6379 # 后面不要加 -a,明文密码 history 命令后会暴露
auth 123456 # 登录后输入密码

config get * # 获取所有配置,在开启 rename-command 时失效
config get xxx # 获取 xxx 值
config set xxx yyy # 设置 xxx=yyy

info # 查看使用中数据
2.常用设置
vim /usr/local/software/redis6.2/bin/redis.conf
cat /usr/local/software/redis6.2/bin/redis.conf | grep ^[^#]

daemonize yes # 开启守护进程
port 6379 # 更改端口号
bind 127.0.0.1 # 绑定单一接口,外网不能监听
requirepass 123456 # 设置密码

maxmemory 1073741824 # 最大内存 1G,单位 byte
maxmemory-policy noeviction # 超出最大内存后的过期策略

rename-command keys "" # 禁用 keys 命令
rename-command config "" # 禁用 config 命令
rename-command flushall "" # 禁用 flushall 命令

logfile /www/log/redis/redis.log # 重新设置日志路径
dir /usr/local/software/redis6.2/bin # dump.rdb 目录
3.创建用户、用户组
groupadd redis
useradd -r -g redis redis

touch /www/log/redis/redis.log # 创建空白文件
chown redis:redis /www/log/redis/redis.log # 设置文件所有者 
4.数据持久化
# 持久化方式分为两种:Snapshotting (RDB) 和 Append-only file (AOF)
# RDB 持久化配置,默认开启,Redis 会将数据集的快照 dump 到 dump.rdb 文件中 
save 900 1 # 在 900 秒之后,如果至少有 1 个 key 发生变化,则 dump 内存快照。
save 300 10 # 在 300 秒之后,如果至少有 10 个 key 发生变化,则 dump 内存快照。
save 60 10000 # 在 60 秒之后,如果至少有 10000 个 key 发生变化,则 dump 内存快照。

# AOF 持久化配置,默认不开启,在 Redis 的配置文件中存在三种同步方式,它们分别是:
appendonly no # 表示没有开启 AOF
appendfsync always # 每次有数据修改发生时都会写入 AOF 文件。
appendfsync everysec # 每秒钟同步一次,该策略为 AOF 缺省策略。
appendfsync no # 从不同步。高效但是数据不会被持久化。
5.安全设置
# 1.禁止 Redis 服务对公网开放,可通过修改 redis.conf 配置文件中的 #bind 127.0.0.1 ,即去掉前面的 #;
# 2.设置密码访问认证,可通过修改 redis.conf 配置文件中的 requirepass 设置复杂密码;
# 3.对访问源 IP 进行访问控制,可在防火墙限定指定源 IP 才可以连接 Redis 服务器;
# 4.修改 Redis 默认端口,将默认的 6379 端口修改为其他端口;
# 5.禁用 config 指令避免恶意操作,在 redis.conf 中开启 rename-command 项时失效,去掉前面的 # 即可;
# 6.Redis 使用普通用户权限,禁止使用 root 权限启动 Redis 服务,这样攻击者也只能获取到普通用户权限,无法获取 root 权限;
标签:

redis6.2