redis使用RDB文件恢复数据

发布于:2025-05-25 ⋅ 阅读:(17) ⋅ 点赞:(0)
  1. 设置存盘间隔为120秒且10个key改变数据自动存盘
  2. 使用RDB文件恢复数据
IP地址 主机名
192.168.10.170 redis170
[root@redis170 ~]# yum install -y redis
[root@redis170 ~]# systemctl start redis

步骤一:设置存盘间隔为120秒且10个key改变自动存盘

[root@redis170 ~]# vim /etc/redis.conf 
save 900 1
save 300 10
save 60 10000
save 120 10
清空数据库目录
[root@redis70 ~]# rm -rf /var/lib/redis/*	
[root@redis170 ~]# systemctl restart redis 启动服务( 按新的存盘频率运行)

在服务启动后,要在2分钟内存储大于等10个变量

[root@redis170 ~]# redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379> mset a 1 b 2 c 3 d 4 
OK
127.0.0.1:6379> mset   x 1 y 2  z 3 k 6  i 7  z 9   f 22  zz 99  cc  66
OK
127.0.0.1:6379> exit
[root@redis170 ~]# ls /var/lib/redis/
dump.rdb

步骤二:使用RDB文件恢复数据

1)拷贝 dump.rdb 文件就是对数据的备份
[root@redis170 ~]# cp /var/lib/redis/dump.rdb  /opt
[root@redis170 ~]# ls /opt/*.rdb
/opt/dump.rdb
2)把备份的 dump.rdb 文件 再次拷贝回数据库目录就是恢复
redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379> flushall
OK
127.0.0.1:6379> keys *
(empty list or set)
3)使用备份的dump.rdb文件恢复

第1步 停止内存没有数据的redis服务

第2步 使用有数据的dump.rdb文件覆盖没有数据dump.rdb文件

第3步 修改文件的所有者和所属组用户为redis

第4步 启动redis服务 并连接服务查看数据[root@redis170 ~]# systemctl stop redis
[root@redis170 ~]# cp /opt/dump.rdb /var/lib/redis/
cp:是否覆盖'/var/lib/redis/dump.rdb'? y
[root@redis170 ~]# chown -R redis.redis /var/lib/redis/dump.rdb 
[root@redis170 ~]# systemctl restart redis
[root@redis170 ~]# redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379> keys *
 1) "f"
 2) "z"
 3) "x"
 4) "zz"
 5) "y"
 6) "d"
 7) "cc"
 8) "a"
 9) "b"
10) "c"
11) "k"
12) "i"


网站公告

今日签到

点亮在社区的每一天
去签到