CENTOS7下安装REDIS.docx

上传人:b****9 文档编号:25432769 上传时间:2023-06-08 格式:DOCX 页数:15 大小:2MB
下载 相关 举报
CENTOS7下安装REDIS.docx_第1页
第1页 / 共15页
CENTOS7下安装REDIS.docx_第2页
第2页 / 共15页
CENTOS7下安装REDIS.docx_第3页
第3页 / 共15页
CENTOS7下安装REDIS.docx_第4页
第4页 / 共15页
CENTOS7下安装REDIS.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

CENTOS7下安装REDIS.docx

《CENTOS7下安装REDIS.docx》由会员分享,可在线阅读,更多相关《CENTOS7下安装REDIS.docx(15页珍藏版)》请在冰豆网上搜索。

CENTOS7下安装REDIS.docx

CENTOS7下安装REDIS

CENTOS7下安装REDIS主从服务

1、单机版安装redis

安装

若没有vim环境,可以通过yum安装:

yuminstallvim

第一步:

下载redis安装包

redis-3.2.11.tar.gz

第二步:

上传安装包,并解压压缩包

tar-zxvfredis-3.2.11.tar.gz

[root@localhostlocal]#tar-zxvfredis-3.2.11.tar.gz

第三步:

yum安装gcc依赖

yuminstallgcc

[root@localhostlocal]#yuminstallgcc  

遇到选择,输入y即可


第四步:

跳转到redis解压目录下

cdredis-3.2.11

[root@localhostlocal]#cdredis-3.2.11

第五步:

编译安装

makeMALLOC=libc  

[root@localhostredis-3.2.11]#makeMALLOC=libc

  

将/root/redis-3.2.11/src目录下的文件加到/usr/local/bin目录

cp-r/root/redis-3.2.11/src//usr/local/bin/

cdsrc&&makeinstall

[root@localhostredis-3.2.11]#cdsrc&&makeinstall

第六步:

测试是否安装成功 

先切换到redissrc目录下

[root@localhostredis-3.2.11]#cdsrc

 配置

1、直接启动redis

./redis-server

[root@localhostsrc]#./redis-server

 

如上图:

redis启动成功,但是这种启动方式需要一直打开窗口,不能进行其他操作,不太方便。

按ctrl+c可以关闭窗口。

2、以后台进程方式启动redis

第一步:

修改redis.conf文件

vim/etc/redis/6379.conf

daemonizeno  

修改为

daemonizeyes

关闭保护模式,注释掉ip绑定

bind127.0.0.1

protected-modeyes

修改为

#bind127.0.0.1

protected-modeno

第二步:

指定redis.conf文件启动

./redis-server/usr/local/redis-3.2.11/redis.conf

[root@localhostsrc]#./redis-server/usr/local/redis-3.2.11/redis.conf

18713:

C13Dec13:

07:

41.109#oO0OoO0OoO0OoRedisisstartingoO0OoO0OoO0Oo

18713:

C13Dec13:

07:

41.109#Redisversion=4.0.6,bits=64,commit=00000000,modified=0,pid=18713,juststarted

18713:

C13Dec13:

07:

41.109#Configurationloaded

 

第三步:

关闭redis进程

首先使用ps-aux|grepredis查看redis进程

[root@localhostsrc]#ps-aux|grepredis

root    18714 0.0 0.1141752 2008?

       Ssl 13:

07  0:

00./redis-server127.0.0.1:

6379

root    18719 0.0 0.0112644  968pts/0   R+  13:

09  0:

00grep--color=autoredis

 

使用kill命令杀死进程

[root@localhostsrc]#kill-918714

 

3、设置redis开机自启动

1、在/etc目录下新建redis目录

mkdir/etc/redis

[root@localhostetc]#mkdir/etc/redis

 

2、将/root/redis-3.2.11/redis.conf文件复制一份到/etc/redis目录下,并命名为6379.conf  

[root@localhostredis]#cp/root/redis-3.2.11/redis.conf/etc/redis/6379.conf

  

3、将redis的启动脚本复制一份放到/etc/init.d目录下

 cp/root/redis-3.2.11/utils/redis_init_script/etc/init.d/redisd

4、设置redis开机自启动

先切换到/etc/init.d目录下

然后执行自启命令

[root@localhostinit.d]#chkconfigredisdon

serviceredisddoesnotsupportchkconfig 

看结果是redisd不支持chkconfig

解决方法:

使用vim编辑redisd文件,在第一行加入如下两行注释,保存退出

vim/etc/init.d/redisd

#chkconfig:

23459010

#description:

Redisisapersistentkey-valuedatabase

注释的意思是,redis服务必须在运行级2,3,4,5下被启动或关闭,启动的优先级是90,关闭的优先级是1

再次执行开机自启命令,成功

[root@localhostinit.d]#chkconfigredisdon

  

4、redis启动和关闭

启动:

serviceredisdstart  

[root@localhost~]#serviceredisdstart

StartingRedisserver...

2288:

C13Dec13:

51:

38.087#oO0OoO0OoO0OoRedisisstartingoO0OoO0OoO0Oo

2288:

C13Dec13:

51:

38.087#Redisversion=4.0.6,bits=64,commit=00000000,modified=0,pid=2288,juststarted

2288:

C13Dec13:

51:

38.087#Configurationloaded

关闭:

serviceredisdstop

[root@localhost~]#serviceredisdstop

Stopping...

Redisstopped

 

2、安装redis主从

1.主从架构

1.1Redis主从架构拓扑图结构

2主从结构搭建

需先安装单机版Redis,参考1单机安装redis。

1.2.1在安装好单机版的前提下,分别修改每台设备配置文件设置主从

在Redis中设置主从有2种方式:

1.在redis.conf中设置slaveof

a)slaveof

2、使用redis-cli客户端连接到redis服务,执行slaveof命令

a)slaveof

第二种方式在重启后将失去主从复制关系。

我们这里使用第一种方式设置主从,比如以192.168.2.203做主服务器,则在其他设备上配置所属主服务器地址:

:

vim/etc/redis/6379.conf

增加slaveof192.168.2.2036379

1.2.5查看Redis主从关系

使用Redis客户端连接上主库6379端口

#redis-cli-h192.168.2.30-p6379

查看Redis主从关系如下图所示

192.168.29.128:

6379>inforeplication

role:

角色信息

slaveX:

从库信息

connected_slaves:

从库数量

1.2.6测试

在主库写入数据

在从库读取数据

3.从库只读

默认情况下redis数据库充当slave角色时是只读的不能进行写操作

可以在配置文件中开启非只读:

slave-read-onlyno

4.主从复制的过程原理

1.当从库和主库建立MS关系后,会向主数据库发送SYNC命令

2.主库接收到SYNC命令后会开始在后台保存快照(RDB持久化过程),并将期间接收到的写命令缓存起来

3.当快照完成后,主Redis会将快照文件和所有缓存的写命令发送给从Redis

4.从Redis接收到后,会载入快照文件并且执行收到的缓存的命令

5.之后,主Redis每当接收到写命令时就会将命令发送从Redis,从而保证数据的一致

3、安装redis哨兵

1、Sentinel的作用:

A、Master状态监测

B、如果Master异常,则会进行Master-slave转换,将其中一个Slave作为Master,将之前的Master作为Slave

C、Master-Slave切换后,master_redis.conf、slave_redis.conf和sentinel.conf的内容都会发生改变,即master_redis.conf中会多一行slaveof的配置,sentinel.conf的监控目标会随之调换

2、Sentinel的工作方式:

1):

每个Sentinel以每秒钟一次的频率向它所知的Master,Slave以及其他Sentinel实例发送一个PING命令

2):

如果一个实例(instance)距离最后一次有效回复PING命令的时间超过down-after-milliseconds选项所指定的值,则这个实例会被Sentinel标记为主观下线。

3):

如果一个Master被标记为主观下线,则正在监视这个Master的所有Sentinel要以每秒一次的频率确认Master的确进入了主观下线状态。

4):

当有足够数量的Sentinel(大于等于配置文件指定的值)在指定的时间范围内确认Master的确进入了主观下线状态,则Master会被标记为客观下线

5):

在一般情况下,每个Sentinel会以每10秒一次的频率向它已知的所有Master,Slave发送INFO命令

6):

当Master被Sentinel标记为客观下线时,Sentinel向下线的Master的所有Slave发送INFO命令的频率会从10秒一次改为每秒一次

7):

若没有足够数量的Sentinel同意Master已经下线,Master的客观下线状态就会被移除。

若Master重新向Sentinel的PING命令返回有效回复,Master的主观下线状态就会被移除。

3、Sentinel配置

修改配置文件,配置主redis地址、端口、投票数目,增加后台启动daemonizeyes

注意:

三个redis服务器同时修改配置文件sentinel.conf

vim/root/redis-3.2.11/sentinel.conf

#初次配置时的状态,这个sentinel会自动更新

sentinelmonitormymaster192.168.2.3063791

daemonizeyes

logfile"./sentinel_log.log"

1)如果redis实例没有配置

protected-modeyes

bind192.168.98.136

则在sentinel配置文件加上

protected-modeno

即可

2)如果redis实例有配置

protected-modeyes

bind192.168.98.136

则在sentinel配置文件加上

protected-modeyes

bind192.168.98.136

所有服务器修改完后,再次重启redis所有的服务端

4、sentinel启动

serviceredisdstop

serviceredisdstart

进入redis安装目录

cd/root/redis-3.2.11/

执行启动命令

redis-serversentinel.conf--sentinel&

查看已启动redis进程会有2个:

关闭服务:

pkillredis-server//这个会关掉Redis服务器和Sentinel(哨兵)进程

kill进程号//可以关掉指定进程号的进程

5、测试

    我们手动关闭Master之后,sentinel在监听master确实是断线了之后,将会开始计算权值,然后重新分配主服务器;

    登录slaver服务器查看状态

我们可以看到当前slave已经升级为master

我们次启动原来master服务,我们可以看到原master成为了slave

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 求职职场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1