redis 主从同步搭建
redis 一主二从
1.redis 安装
安装教程:https://www.cnblogs.com/zwcry/p/9505949.html
2.redis主从
1)创建主从目录
mkdir /usr/local/redis-ms
cd /usr/local/redis-ms/
mkdir 6381
mkdir 6382
mkdir 6382
2)复制redis.conf到主从目录
cp /usr/local/redis/redis.conf ./6381/
cp /usr/local/redis/redis.conf ./6382/
cp /usr/local/redis/redis.conf ./6383/
3)修改主./6381/redis.conf
vim ./6381/redis.conf
#修改如下key的值
bind 0.0.0.0#任意ip都可以连接
protected-mode no#关闭保护,允许非本地连接
port 6381#端口号
daemonize yes#后台运行
pidfile /var/run/redis_6381.pid#进程守护文件,就是存放该进程号相关信息的地方
dir /usr/local/redis-ms/6381/#db等相关目录位置
appendonly yes#开启日志形式
4)修改从./6382/redis.conf
vim ./6382/redis.conf
#修改如下key的值
bind 0.0.0.0#任意ip都可以连接
protected-mode no#关闭保护,允许非本地连接
port 6382#端口号
daemonize yes#后台运行
pidfile /var/run/redis_6382.pid#进程守护文件,就是存放该进程号相关信息的地方
dir /usr/local/redis-ms/6382/#db等相关目录位置
slaveof 192.168.194.131 6381#主信息
appendonly yes#开启日志形式
5)修改从./6383/redis.conf
vim ./6383/redis.conf
#修改如下key的值
bind 0.0.0.0#任意ip都可以连接
protected-mode no#关闭保护,允许非本地连接
port 6383#端口号
daemonize yes#后台运行
pidfile /var/run/redis_6383.pid#进程守护文件,就是存放该进程号相关信息的地方
dir /usr/local/redis-ms/6383/#db等相关目录位置
slaveof 192.168.194.131 6381#主信息
appendonly yes#开启日志形式
3.启动测试
1)启动
cd /usr/local/redis-ms/
/usr/local/redis/src/redis-server ./6381/redis.conf
/usr/local/redis/src/redis-server ./6382/redis.conf
/usr/local/redis/src/redis-server ./6383/redis.conf
ps -ef|grep redis

#查看主从是否搭建成功
/usr/local/redis/src/redis-cli -p 6381
info
如图:

2)测试
/usr/local/redis/src/redis-cli -p 6381 --raw
set name '丁洁'
get name

/usr/local/redis/src/redis-cli -p 6382 --raw
get name

/usr/local/redis/src/redis-cli -p 6382 --raw
get name

注:
--raw 中文显示
主6381设置name值,可以在从6382、6383取到,但是从不能设置值。
4.开机自启服务
mkdir /usr/local/redis-ms/script
cd /usr/local/redis-ms/script/
1)start.sh启动脚本
vim ./start.sh
#!/bin/sh
/usr/local/redis/src/redis-server /usr/local/redis-ms//redis.conf
/usr/local/redis/src/redis-server /usr/local/redis-ms//redis.conf
/usr/local/redis/src/redis-server /usr/local/redis-ms//redis.conf
2)stop.sh停止脚本
vim ./stop.sh
#!/bin/sh
/usr/local/redis/src/redis-cli -p shutdown
/usr/local/redis/src/redis-cli -p shutdown
/usr/local/redis/src/redis-cli -p shutdown
3)restart.sh重启脚本
vim ./restart.sh
#!/bin/sh
systemctl stop redis-ms
systemctl start redis-ms
4)改变权限
chmod 777 ./*

5)编写开机服务
cd /usr/lib/systemd/system/
vim redis-ms.service
[Unit]
Description=redis-ms
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/usr/local/redis-ms/script/start.sh
ExecStop=/usr/local/redis-ms/script/stop.sh
ExecReload=/usr/local/redis-ms/script/restart.sh
[Install]
WantedBy=multi-user.target
改变权限
chmod 777 redis-ms.service
进程服务重加载
systemctl daemon-reload
开机启动主从
systemctl enable redis-ms.service
启动主从
systemctl start redis-ms.service
关闭主从
systemctl stop redis-ms.service
重启主从
systemctl restart redis-ms.service
redis 主从同步搭建的更多相关文章
- Redis 主从同步+哨兵
简介 通过使用 Redis 自带“主从同步+哨兵守护”功能提高Redis稳定性. 主从同步:保障数据主从数据实时同步. 哨兵:实时监控主redis如果故障,将从redis作为主使用. 环境: 系统:C ...
- redis主从同步故障切换及集群配置
一.redis是一中高性能的缓存数据库, 原理:1. 从服务器向主服务器发送 SYNC 命令.2. 接到 SYNC 命令的主服务器会调用BGSAVE 命令,创建一个 RDB 文件,并使用缓冲区记录接下 ...
- Redis系列之(二):Redis主从同步,读写分离
1. Redis主从同步 Redis支持主从同步.数据可以从主服务器向任意数量的从服务器上同步,同步使用的是发布/订阅机制. 2. 配置主从同步 Mater Slave的模式,从Slave向Maste ...
- redis 主从同步
修改redis.conf配置文件 vi redis.conf 在编辑模式下 输入 /slaveof 来搜索 将slaveof启用 即 将#删除 依次配置所有 slave 并将进程 kill 掉 重启 ...
- Redis主从同步介绍
Redis主从同步命令和配置项 启动主从复制:master无需任何操作,slave中使用以下任意一种开启复制功能 (1).通过配置文件启动主从复制: 在redis.conf中加入"slave ...
- Redis系列之(二):Redis主从同步,读写分离(转)
1. Redis主从同步 Redis支持主从同步.数据可以从主服务器向任意数量的从服务器上同步,同步使用的是发布/订阅机制. 2. 配置主从同步 Mater Slave的模式,从Slave向Maste ...
- Redis主从同步要深入理解?一篇文章足矣!
前言: 今天想和大家分享有关 Redis 主从同步(也称「复制」)的内容. 我们知道,当有多台 Redis 服务器时,肯定就有一台主服务器和多台从服务器.一般来说,主服务器进行写操作,从服务器进行读操 ...
- 一文让你明白Redis主从同步
今天想和大家分享有关 Redis 主从同步(也称「复制」)的内容. 我们知道,当有多台 Redis 服务器时,肯定就有一台主服务器和多台从服务器.一般来说,主服务器进行写操作,从服务器进行读操作. 那 ...
- Redis主从同步原理-SYNC【转】
和MySQL主从复制的原因一样,Redis虽然读取写入的速度都特别快,但是也会产生读压力特别大的情况.为了分担读压力,Redis支持主从复制,Redis的主从结构可以采用一主多从或者级联结构,下图为级 ...
随机推荐
- POJ1797 Heavy Transpotation
Background Hugo Heavy is happy. After the breakdown of the Cargolifter project he can now expand bu ...
- sql查询两条记录的时间差
今天突然想到了一个需求,即在一张带有id和time字段的表中,查询相邻时间的时间差. 表的记录如下: 表名为wangxin id是一个不重复的字符串,time是一个时间戳. 现在的需求如下: 比如id ...
- Django实现微电影网站
主要实现功能: 注册,登陆,播放视频,评论视频,xadmin实现后台提供视频管理,权限管理等等 首页(搜索,筛选) 搜索页面 播放页面 个人中心 后台 源码下载 环境配置:python2.7 pip ...
- logstash自己的日志保存到文件中:log4j2.properties
status = error dest = err name = PropertiesConfig property.filename = /gwlog/data/logstash/logs appe ...
- count(*) count(1) count(column)区别
count(*) 和count(1)的效果是一样的.在某些情况下效率不一样.也会统计包含null的记录. count(column)会返回当前字段不为null的记录数.
- Python开发【笔记】:加锁的最佳方案
避开死锁 代码程序中,尽量要避免死锁的产生,下面分析常见的线程锁使用方式 :注:只有同一把锁才会产生互斥 1.常见的死锁方式(加锁时程序报错,锁未释放): import time import thr ...
- 原生js模仿下拉刷新功能
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 洛谷P2657 windy数 [SCOI2009] 数位dp
正解:数位dp 解题报告: 传送门! 这题一看就是个数位dp鸭,"不含前导零且相邻两个数字之差至少为2"这种的 然后就直接套板子鸭(板子戳总结,懒得放链接辣QAQ 然后就是套路 然 ...
- 【Python】easygui小甲鱼
翻译改编自官方文档:http://easygui.sourceforge.net/tutorial/index.html 翻译改编者:小甲鱼,本文欢迎转载,转载请保证原文的完整性! 演示使用 Pyth ...
- python中执行shell命令行read结果
+++++++++++++++++++++++++++++ python执行shell命令1 os.system 可以返回运行shell命令状态,同时会在终端输出运行结果 例如 ipython中运行如 ...