redis主从配置
Linux两台虚拟机免密ssh
ssh-keygen -t rsa #生成本机的公钥,不断回车健即可
cd /root/.ssh
cp id_rsa.pub authorized_keys
## 以上命令在所有虚拟机上执行一次命令
ssh-copy-id -i 192.168.1.15 ##将本机公钥拷贝到需要互连的虚拟机上,每台虚拟机互相交换公钥
master冷备份,以及配置主从
1、在/usr/local/redis创建copy文件夹
2、cd /usr/local/redis/copy
3、在copy文件中创建两个文件
vi reids_rdb_copy_daily.sh
#!/bin/sh
cur_date=`date +%Y%m%d`
rm -rf /usr/local/redis/snapshotting/$cur_date
mkdir /usr/local/redis/snapshotting/$cur_date
cp /var/redis/6379/dump.rdb /usr/local/redis/snapshotting/$cur_date
del_date=`date -d -1month +%Y%m%d`
rm -rf /usr/local/redis/snapshotting/$del_date
vi redis_rdb_copy_hourly.sh
#!/bin/sh
cur_date=`date +%Y%m%d%H`
rm -rf /usr/local/redis/snapshotting/$cur_date
mkdir /usr/local/redis/snapshotting/$cur_date
cp /var/redis/dump.rdb /usr/local/redis/snapshotting/$cur_date
del_date=`date -d -48hour +48%Y%m%d%H`
rm -rf /usr/local/redis/snapshotting/$del_date
4、创建定时任务
crontab -e
#编辑文件
#每小时执行一次
0**** sh /usr/local/redis/copy/redis_rdb_copy_hourly.sh
#每天执行一次
00*** sh /usr/local/redis/copy/redis_rdb_copy_daily.sh
5、修改master配置文件,reids.conf
bind 192.168.1.115 #修改成当前虚拟机ip
port 6379
daemonize yes
dir /var/redis/6379 #持久化文件路径
appendonly yes #开启AOF
requirepass redis #当服务器被连接时需要密码,我设置为”redis“
6、修改slave配置文件,redis.conf
bind 192.168.1.116 #修改成当前虚拟机ip
port 6379
daemonize yes
dir /var/redis/6379
masterauth redis ##master连接时需要的密码配置
slaveof 192.168.1.115 6379 #<masterip> <masterport>指定masterIP以及redis端口
7、先重启master,在启动slave
8、连接master
redis-cli -h 192.168.1.115 -a redis ## -h ip地址,-a 密码