方向 | 命令 | 注释 |
---|---|---|
数据端 | redis-cli |
进入redis |
数据端,redis内 | save |
手动保存,直接阻塞保存,线上不用,安装目录中创建dump.rdb |
数据端,redis内 | bgsave |
手动保存,创建子进程保存,线上可用,安装目录中创建dump.rdb |
数据端 | /var/lib/redis |
路径 |
数据端,redis内 | CONFIG GET dir |
找不到就在redis里,找安装目录 |
恢复端 | 备份文件 (dump.rdb) 移动到 redis 安装目录 |
# 恢复端
# 终端
ps axu|grep redis
# 查找redis-server的PID
kill -9 PID
重启redis
# redis.conf
save m n
m秒内数据集存在n次修改时,自动触发bgsave
如果从节点执行全量复制操作,主节点自动执行bgsave生成RDB文件并发送给从节点
执行debug reload
命令重新加载Redis时,也会自动触发save操作
默认情况下执行shutdown命令时,如果没有开启AOF持久化功能则自动执行bgsave。
# 备份数据集为dump.rdb.bak
cp dump.rdb dump.rdb.bak
# 删除了原本数据集
rm -rf dump.rdb
# 在数据集丢失情况将备份作为主数据集(改名)
mv dump.rdb.bak dump.rdb
redis-check-rdb filename
RDB检查工具
[offset 0] Checking RDB file dump.rdb
[offset 26] AUX FIELD redis-ver = '5.0.9'
[offset 40] AUX FIELD redis-bits = '64'
[offset 52] AUX FIELD ctime = '1692704931'
[offset 67] AUX FIELD used-mem = '19813464'
[offset 83] AUX FIELD aof-preamble = '0'
[offset 85] Selecting DB ID 0
[offset 1218] Selecting DB ID 1
[offset 7733] Selecting DB ID 2
[offset 7780923] Selecting DB ID 3
[offset 7992522] Selecting DB ID 4
[offset 7996049] Selecting DB ID 5
[offset 10030377] Selecting DB ID 7
[offset 10033702] Selecting DB ID 9
[offset 10034126] Checksum OK
[offset 10034126] \o/ RDB looks OK! \o/
[info] 5433 keys read
[info] 7 expires
[info] 0 already expired