1.创建公共配置文件

所有配置文件添加到以下目录:

/xxxx/redis-slave-master

创建公共的redis配置文件,直接使用redis的默认配置文件,修改以下配置项:

bind 127.0.0.1
daemonize yes 后台启动
requirepass 123456 登录密码

2.创建master服务的配置文件



/xxxx/redis-slave-master

目录中创建redis-master.conf文件,并添加以下配置内容:

## 公共配置配置相关
include /xxxx/redis-slave-master/redis-commom.conf ## 监听端口
port 7001
## 后台运行的时候生成的进程文件
pidfile /var/run/redis7001.pid ## 日志文件路径和名称
logfile "/xxxx/redis-slave-master/log/master" ## 持久化数据库文件
dbfilename dump7001.rdb
## 数据库文件目录
dir /xxxx/redis-slave-master/redis-dbfile

3.添加slave的配置文件

/xxxx/redis-slave-master

目录下添加redis-slave1.conf配置文件

配置内容为:

## 公共配置配置相关
include /xxxx/redis-slave-master/redis-commom.conf port 7002
pidfile /var/run/redis7002.pid logfile "/xxxx/redis-slave-master/log/slave1" dbfilename dump7002.rdb
dir /xxxx/redis-slave-master/redis-dbfile
## slave-master相关配置
slaveof 127.0.0.1 7001 masterauth 123456 slave-read-only yes

4.启动master和slave服务

切换到配置文件目录:

cd /xxxx/redis-slave-master

输入以下命令,启动master和slave服务

redis-server redis-master.conf
redis-server redis-slave1.conf

输入:

ps -aux|grep redis

如果输出以下内容:

root     10739  0.0  0.2 142912  5412 ?        Ssl  17:14   0:00 redis-server 127.0.0.1:7001
root 10748 0.0 0.2 142912 5384 ? Rsl 17:14 0:00 redis-server 127.0.0.1:7002

启动成功。

5.验证Master/Slave模式配置成功

使用redis-cli分别连接slave和master数据库:

redis-cli -p 7001 -a 123456
redis-cli -p 7002 -a 123456

在连接master的客户端中添加数据:

set master-key test

在连接slave的客户端中输入:

get master-key

如果能查询到:

"test"

则redis的slave-master配置成功。

6.slave中写入数据测试

在连接slave的客户端中输入:

set write-test test

会返回以下错误:

(error) READONLY You can't write against a read only slave.

这个因为在slave的服务中配置了只读模式。

7.redis日志文件分析:

10739:M 21 Mar 17:14:31.568 * DB loaded from disk: 0.000 seconds
10739:M 21 Mar 17:14:31.568 * The server is now ready to accept connections on port 7001
10739:M 21 Mar 17:14:38.962 * Slave 127.0.0.1:7002 asks for synchronization
10739:M 21 Mar 17:14:38.962 * Full resync requested by slave 127.0.0.1:7002
10739:M 21 Mar 17:14:38.963 * Starting BGSAVE for SYNC with target: disk
10739:M 21 Mar 17:14:38.963 * Background saving started by pid 10751
10751:C 21 Mar 17:14:38.993 * DB saved on disk
10751:C 21 Mar 17:14:38.994 * RDB: 2 MB of memory used by copy-on-write
10739:M 21 Mar 17:14:39.082 * Background saving terminated with success
10739:M 21 Mar 17:14:39.083 * Synchronization with slave 127.0.0.1:7002 succeeded

8.使用场景

一般用于读写分离

Redis学习笔记01--主从数据库配置的更多相关文章

  1. redis学习笔记-01:redis简介

    1.redis是一个高性能的Nosql数据库,遵守BSD协议,使用c语言编写.支持网络.可基于内存亦可持久化,是一种日志型.Key-Value数据库,也可看做是一个分布式的.基于内存的缓存工具. 2. ...

  2. redis学习笔记01 — 基本介绍、安装配置及常用命令

    redis--NoSQL的一种 为了解决高并发.高可用.高扩展.大数据存储等一系列问题而产生的数据库解决方案,就是NoSQL NoSQL,非关系型数据库,全名:Not Only Sql,它不能代替关系 ...

  3. Machine Learning 学习笔记 01 Typora、配置OSS、导论

    Typora 安装与使用. Typora插件. OSS图床配置. 机器学习导论. 机器学习的基本思路. 机器学习实操的7个步骤

  4. MIT JOS学习笔记01:环境配置、Boot Loader(2016.10.22)

    未经许可谢绝以任何形式对本文内容进行转载! 一.环境配置 关于MIT课程中使用的JOS的配置教程网上已经有很多了,在这里就不做介绍,个人使用的是Ubuntu 16.04 + qemu.另注,本文章中贴 ...

  5. redis学习笔记-01 string类型命令

    一.set key value set joker 123456 #设定key为joker,value为123456的数据 二.keys * keys * #用于查看该数据库中所有的key值 三.se ...

  6. Redis:学习笔记-01

    Redis:学习笔记-01 该部分内容,参考了 bilibili 上讲解 Redis 中,观看数最多的课程 Redis最新超详细版教程通俗易懂,来自 UP主 遇见狂神说 1. Redis入门 2.1 ...

  7. Redis学习笔记4-Redis配置详解

    在Redis中直接启动redis-server服务时, 采用的是默认的配置文件.采用redis-server   xxx.conf 这样的方式可以按照指定的配置文件来运行Redis服务.按照本Redi ...

  8. Redis学习笔记4-Redis配置具体解释

    在Redis中直接启动redis-server服务时, 採用的是默认的配置文件.採用redis-server   xxx.conf 这种方式能够依照指定的配置文件来执行Redis服务. 依照本Redi ...

  9. redis学习笔记(详细)——高级篇

    redis学习笔记(详细)--初级篇 redis学习笔记(详细)--高级篇 redis配置文件介绍 linux环境下配置大于编程 redis 的配置文件位于 Redis 安装目录下,文件名为 redi ...

随机推荐

  1. .net mvc web api 返回 json 内容时过滤值为null的属性

    1.响应内容(过滤前) {"msg":"初始化成功!","code":"","success":tr ...

  2. 【前端】用百度BAE和express部署自己的node后台

    转载请注明出处:http://www.cnblogs.com/shamoyuu/p/node_bae.html 百度有一个应用引擎,价格非常便宜,Java的tomcat每天4毛钱,node每天2毛钱, ...

  3. Ubutu Chrome 出现adobe flash is out of date的解决方法

    我们需要到官网下载flash player,网址:https://get.adobe.com/flashplayer/ 不过这里要说明一下: 一般的浏览器使用的是npapi,即adobe flash ...

  4. ffmpeg在am335x上的移植

    交叉编译工具:arm-linux-gcc 一.先下载一下文件 1. yasm-1.2.0.tar.gz 2. x264-snapshot-20140424-2245.tar.bz2 3. xvidco ...

  5. AM335X的USB otg网卡(RNDIS /Ethernet Gadget)调试

    重新编译内核(2.6.29)       2.6.29内核        Device Drivers ---> USB support --->   USB Gadget Support ...

  6. Java和Flex整合报错(三)

    1.错误描述 信息: Initializing Spring FrameworkServlet 'mvc' 11-13 23:43:42 INFO [localhost-startStop-1] or ...

  7. xml的SAX解析规则

    一,为什么要用它 1.1,讲解 DOM解析原理:一次性把xml文档加载进内存,然后在内存中构建Document树. 对内存要求比较要. 缺点: 不适合读取大容量的xml文件,容易导致内存溢出. SAX ...

  8. java.util报错

    主要是java运行时环境没有配置好,需要添加JRE

  9. Android动态类生成预加载-dexmaker使用

    一.dexmaker简单介绍 dexmaker是运行在Android Dalvik VM上,利用Java编写,来动态生成DEX字节码的API.如果读者了解AOP编程的话,应该听说过cglib or A ...

  10. Bzoj4805: 欧拉函数求和

    好久没写杜教筛了 练练手AC量刷起 # include <bits/stdc++.h> # define RG register # define IL inline # define F ...