首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Redis学习笔记02--主从数据库配置

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

作者头像
代码改变世界-coding
发布2018-07-03 13:39:51
发布2018-07-03 13:39:51
5690
举报
文章被收录于专栏:java相关java相关

1.创建公共配置文件

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

代码语言:javascript
复制
/xxxx/redis-slave-master

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

代码语言:javascript
复制
bind 127.0.0.1
daemonize yes 后台启动
requirepass 123456 登录密码

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

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

代码语言:javascript
复制
## 公共配置配置相关
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的配置文件

代码语言:javascript
复制
/xxxx/redis-slave-master

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

配置内容为:

代码语言:javascript
复制
## 公共配置配置相关
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服务

切换到配置文件目录:

代码语言:javascript
复制
cd /xxxx/redis-slave-master

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

代码语言:javascript
复制
redis-server redis-master.conf
redis-server redis-slave1.conf

输入:

代码语言:javascript
复制
ps -aux|grep redis

如果输出以下内容:

代码语言:javascript
复制
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数据库:

代码语言:javascript
复制
redis-cli -p 7001 -a 123456
redis-cli -p 7002 -a 123456

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

代码语言:javascript
复制
set master-key test

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

代码语言:javascript
复制
get master-key

如果能查询到:

代码语言:javascript
复制
"test"

则redis的slave-master配置成功。

6.slave中写入数据测试

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

代码语言:javascript
复制
set write-test test

会返回以下错误:

代码语言:javascript
复制
(error) READONLY You can't write against a read only slave.

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

7.redis日志文件分析:

代码语言:javascript
复制
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.使用场景

一般用于读写分离

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-03-25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.创建公共配置文件
  • 2.创建master服务的配置文件
  • 3.添加slave的配置文件
  • 4.启动master和slave服务
  • 5.验证Master/Slave模式配置成功
  • 6.slave中写入数据测试
  • 7.redis日志文件分析:
  • 8.使用场景
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档