- 设置存盘间隔为120秒且10个key改变数据自动存盘
- 使用RDB文件恢复数据
|----------------|----------|
| IP地址 | 主机名 |
| 192.168.10.170 | redis170 |
bash
[root@redis170 ~]# yum install -y redis
[root@redis170 ~]# systemctl start redis
步骤一:设置存盘间隔为120秒且10个key改变自动存盘
bash
[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文件恢复数据
bash
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"