Redis学习笔记02--主从数据库配置

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.使用场景

一般用于读写分离

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏我和未来有约会

Kit 3D 更新

Kit3D is a 3D graphics engine written for Microsoft Silverlight. Kit3D was inita...

2936
来自专栏C#

DotNet加密方式解析--非对称加密

    新年新气象,也希望新年可以挣大钱。不管今年年底会不会跟去年一样,满怀抱负却又壮志未酬。(不过没事,我已为各位卜上一卦,卦象显示各位都能挣钱...)...

5968
来自专栏张善友的专栏

Mix 10 上的asp.net mvc 2的相关Session

Beyond File | New Company: From Cheesy Sample to Social Platform Scott Hansel...

2787
来自专栏一个爱瞎折腾的程序猿

sqlserver使用存储过程跟踪SQL

USE [master] GO /****** Object: StoredProcedure [dbo].[sp_perfworkload_trace_s...

2890
来自专栏java 成神之路

使用 NIO 实现 echo 服务器

5587
来自专栏张善友的专栏

Silverlight + Model-View-ViewModel (MVVM)

     早在2005年,John Gossman写了一篇关于Model-View-ViewModel模式的博文,这种模式被他所在的微软的项目组用来创建Expr...

3288
来自专栏一个会写诗的程序员的博客

Spring Reactor 项目核心库Reactor Core

Non-Blocking Reactive Streams Foundation for the JVM both implementing a Reactiv...

2802
来自专栏转载gongluck的CSDN博客

cocos2dx 打灰机

#include "GamePlane.h" #include "PlaneSprite.h" #include "BulletNode.h" #include...

7226
来自专栏Ceph对象存储方案

Luminous版本PG 分布调优

Luminous版本开始新增的balancer模块在PG分布优化方面效果非常明显,操作也非常简便,强烈推荐各位在集群上线之前进行这一操作,能够极大的提升整个集群...

3675
来自专栏魂祭心

原 canvas绘制clock

5144

扫码关注云+社区