首先说明几点:
1、我这里是搭建一个三台计算机六个节点的哨兵集群,7001 -7006
2、我的持久化文件放在var/redis/700X/appendonly.aof、dump.rdb中
3、usr/local/redis-3.2.8/redis.conf一般需要配置的持久话参数都在这里配置
4、用脚本写的一个启动命令放在了etc/init.d文件夹下,命名为redis_700X,启动方式在init.d下:./redis_7003 start
1、重启虚拟机后,cd /etc/init.d/ 进入到启动脚本的目录
2、./redis_7004 start 启动服务
3、redis-cli -h 192.168.2.129 -p 7004 -c 连接到端口为7004的主机上,-c表示获取信息时自动切换为目标主机
4、redis-cli -h 192.168.2.129 -p 7004 SHUTDOWN关闭服务,也可以用ps-ef|grep redis查看进程ID,用kill -9杀死服务此刻如果想重启服务,可能提示你redis_7004pid已经运行,你可以通过rm -rf redis_7004.pid杀死进程,再去重启
关于两种持久化RDB的dump.rdb持久化文件,还是AOF的appendonly.aof文件
一、首先说RDB,我们首先需要配置redis.conf文件中的一个参数save,设置它保存的时间频率,比如save 5 1,没过5s或者1条信息发生改变则就会生成一个rdb文件,它是覆盖的,当你向redis中写入数据时,无论是正常退出还是kill-9异常终止,符合了save的条件就会差生rdb文件,下次你的redis服务重新启动后,你连接上redis-cli客户端,仍能读取到数据,这是RDB的持久话方案;
二、接下来是AOF持久化,
我们仍然还是需要去redis.conf中去配置一个appendonly yes参数,表示开启AOF持久化,默认是关闭的,还有一个参数我建议还是选择每秒fsync一次,fsync就是把os cache中的数据刷新到磁盘上,设置好后,当你的redis发生故障,等你redis重启,数据也能恢复