主从搭建前提是服务器上已经安装好了redis,

redis安装可搜索本站另一篇博客:redis安装。


redis单主机多实例

一、我们首先拷贝两份文件:

cp /etc/redis.conf /etc/redis6381.conf
cp /etc/redis.conf /etc/redis6382.conf

二、修改redis6381配置文件

# vim /etc/redis6381.conf

# 默认情况下 redis 不是作为守护进程运行的,如果你想让它在后台运行,你就把它改成 yes。
daemonize yes # 当redis作为守护进程运行的时候,它会把 pid 默认写到 /var/run/redis.pid 文件里面,
# 但是你可以在这里自己制定它的文件位置。
pidfile /var/run/redis/redis_6381.pid # 监听端口号,默认为 6379,如果你设为 0 ,redis 将不在 socket 上监听任何客户端连接。
port 6381 # 指定日志文件的位置,不同的实例设置不同的日志文件,便于问题定位
logfile /var/log/redis/redis_6381.log # 设置dump的文件名称,不同的实例设置不同的db文件,便于问题定位
dbfilename dump_6381.rdb # 工作目录
# 例如上面的 dbfilename 只指定了文件名,但是它会写入到这个目录下。
# 这个配置项一定是个目录,而不能是文件名。
# 这个配置项默认值为“./”,最好改相对路径为绝对路径
# 如果为相对路径,redis在哪里启动,dump.rdb文件就会产生在启动的目录,这也就是有些人重启redis后key值消失的原因
dir /data/redisdb/

相关命令

#启动6381端口服务
src/redis-server /etc/redis6381.conf #按端口进入客户端
/usr/bin/redis-cli -p 6381

三、同理我们配置6382配置文件, 成功启动服务后,查看进程:


redis配置主从

修改6381、6382从库配置:

vim /etc/redis/redis6381.conf
vim /etc/redis/redis6382.conf

重启6379、6381、6382服务,可以看到主从数据实现同步

用客户端登录相关主从服务器,输入info查看主从配置信息

#主机
127.0.0.1:6379>info # Replication
role:master
connected_slaves:1
slave0:ip=从机ip,port=6379,state=online,offset=140933,lag=1
master_repl_offset:140933
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:2
repl_backlog_histlen:140932 #从机
127.0.0.1:6381>info # Replication
role:slave
master_host:主机ip
master_port:6379
master_link_status:up
master_last_io_seconds_ago:7
master_sync_in_progress:0
slave_repl_offset:141073
slave_priority:100
slave_read_only:1
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0

redis添加密码

正式环境redis的使用,密码的配置必不可少。

redis密码缺失的情况下,攻击者很容易通过肉机扫描redis默认端口,免密登录redis进而通过config命令修改服务器配置文件,造成破坏。

修改6379主库配置:

vim /etc/redis/redis6379.conf

# 修改requirepass项
requirepass master-password

修改6381、6382从库配置:

vim /etc/redis/redis6381.conf
vim /etc/redis/redis6382.conf # 修改requirepass项
requirepass slave-password # 修改masterauth项
masterauth <master-password>

重启服务,按端口按密码进入客户端测试相关效果即可

/usr/bin/redis-cli -p 6382 -a password

链接相关

redis高可用方案哨兵(Sentinel)的使用

Redis多实例及主从搭建的更多相关文章

  1. redis多实例与主从同步及高级特性(数据过期机制,持久化存储)

    redis多实例 创建redis的存储目录 vim /usr/local/redis/conf/redis.conf #修改redis的配置文件 dir /data/redis/ #将存储路径配置修改 ...

  2. Redis集群~windows下搭建Sentinel环境及它对主从模式的实际意义

    回到目录 关于redis-sentinel出现的原因 Redis集群的主从模式有个最大的弊端,就是当主master挂了之前,它的slave从服务器无法提升为主,而在redis-sentinel出现之后 ...

  3. redis单点、redis主从、redis哨兵sentinel,redis集群cluster配置搭建与使用

    目录 redis单点.redis主从.redis哨兵 sentinel,redis集群cluster配置搭建与使用 1 .redis 安装及配置 1.1 redis 单点 1.1.2 在命令窗口操作r ...

  4. 高可用Redis服务架构分析与搭建(单redis实例)

    原文地址:https://www.cnblogs.com/xuning/p/8464625.html 基于内存的Redis应该是目前各种web开发业务中最为常用的key-value数据库了,我们经常在 ...

  5. redis之单机和主从环境搭建

    单机环境搭建 官网http://redis.io/download下载xxx.tar.gz二进制压缩包,注意下载2.8+版本,2.8之前的版本之前从服务器不支持部分重复制,2.6之前的版本不支持set ...

  6. Redis主从搭建环境

    一.环境准备 软件环境 redis版本: redis-4.0 操作系统:Centos-7.5 IP:192.168.1.190(主redis) 192.168.1.191(从redis) 硬件环境 服 ...

  7. Redis 3.0 集群搭建

    Redis 3.0 集群搭建 开启两个虚拟机 分别在两个虚拟机上开启3个Redis实例 3主3从两个虚拟机里的实例互为主备 下面分别在两个虚拟机上安装,网络设置参照codis集群的前两个主机 分别关闭 ...

  8. 【转载】Redis多实例及分区

    主要看的这篇文章 http://mt.sohu.com/20160523/n451048025.shtml edis Partitioning即Redis分区,简单的说就是将数据分布到不同的redis ...

  9. Redis进阶实践之十一 Redis的Cluster集群搭建

    一.引言      本文档只对Redis的Cluster集群做简单的介绍,并没有对分布式系统的详细概念做深入的探讨.本文只是提供了有关如何设置集群.测试和操作集群的说明,而不涉及Redis集群规范中涵 ...

随机推荐

  1. 1137: 零起点学算法44——多组测试数据输出II

    1137: 零起点学算法44--多组测试数据输出II Time Limit: 1 Sec  Memory Limit: 64 MB   64bit IO Format: %lldSubmitted: ...

  2. ElasticSearch集群安装配置

    1. 环境说明 Cent OS 7 jdk-8u121-linux-x64.tar.gz elasticsearch-5.2.1.zip 2. 系统环境配置 新建进程用户 修改File Descrip ...

  3. 关于css解决俩边等高的问题

    前段时间公司需哦一个后台管理系统,左侧是导航栏,右侧是content区域.然厚刚开始用的是js 去控制的,但是当页面的椰蓉过长的时候,有与js单线程,加载比较慢,就会有那么一个过程,查找了很多的方法都 ...

  4. ios runtime部分事例方法说明

    一.场景--动态改变变量 unsigned ; Ivar *ivar = class_copyIvarList([self.person class], &count); ; i<cou ...

  5. Spring+SpringMVC+MyBatis+easyUI整合优化篇(十)数据层优化-整合druid

    druid介绍 这是druid对自己的介绍: Druid是阿里开源的一个数据库连接池技术,号称自己是目前最好的数据库连接池,在功能.性能.扩展性方面,都超过其他数据库连接池,包括DBCP.C3P0.B ...

  6. JS获取URL中参数值(QueryString)的4种方法

    方法一:正则法 function getQueryString(name) {    var reg = new RegExp('(^|&)' + name + '=([^&]*)(& ...

  7. 实现TOLock过程中的一处多线程bug

    背景 最近在啃<多处理器编程的艺术>,书中的7.6节介绍了时限锁--实现了tryLock方法的队列锁. 书中重点讲解了tryLock的实现,也就是如何实现在等待超时后退出队列,放弃锁请求, ...

  8. LeetCode 327. Count of Range Sum

    无意看到的LeetCode新题,不算太简单,大意是给一个数组,询问多少区间和在某个[L,R]之内.首先做出前缀和,将问题转为数组中多少A[j]-A[i] (j>i)在范围内. 有一种基于归并排序 ...

  9. Java泛型知识点:泛型类、泛型接口和泛型方法

    有许多原因促成了泛型的出现,而最引人注意的一个原因,就是为了创建容器类. 泛型类 容器类应该算得上最具重用性的类库之一.先来看一个没有泛型的情况下的容器类如何定义: public class Cont ...

  10. 详解常用的gulp命令

    gulp.js是一款自动化构建工具,我们经常使用它在开发过程自动执行常见的任务.gulp.js 是基于 Node.js 构建的,利用 Node.js,可以快速构建项目. 由于gulp使用基于node, ...