Linux下安装配置redis详细教程,并配置哨兵模式

Linux下安装配置redis详细教程,并配置哨兵模式,第1张

redis版本为redis-3.2.12,使用工具将安装包上传到data目录。

在data目录下创建文件夹redis,将redis安装在此目录。

第一步:解压。

第二步:安装,PREFIX=/data/redis用来设置安装目录。

到此,redis已经安装完成,剩下就是配置和启动服务

进入redis目录, 创建配置文件conf、日志logs、数据库dump、进程号pid四个目录,用来存放对应的文件,这四个目录也可以存放在其他文件夹,只要与配置文件中的配置一致即可,否则在启动服务时会报错。 其中bin目录就是redis安装成功后的一些命令文件。

redis服务配置一主二从,哨兵模式。注意:如果在实际开发中用不到哨兵模式,redis服务配置一主一从即可。

主Redis配置:redis_6379.conf

从Redis配置,redis_6380.conf和redis_6381.conf,与主Redis配置基本上一样,不一样的地方在于 端口、数据库、日志、pid文件名称 ,都以6380或6381为标志, 最重要的地方是建立主从关系和同步验证。

注意: 对只使用redis服务 ,只需要在主Redis里面配置requirepass,在从Redis里面配置masterauth,密码保持一致,密码尽可能复杂,以免被攻击破解。

注意: 对只使用redis服务 ,如果从Redis也有必要加入访问验证,也可以设置requirepass,而且密码可以与主Redis密码不同。

将配置文件放置到/data/redis/conf目录下,然后就可以启动服务了。

启动服务要按照主从顺序依次启动。

查看服务启动情况:

也可以通过查看日志文件来确认服务是否正常启动。

通过客户端登录Redis验证数据同步情况:

主Redis登录验证,设置数据:

从Redis登录,获取数据:从Redis并没有设置密码,所以无需验证就可以 *** 作。

配置哨兵模式:

Redis Sentinel集群通常由3到5个节点组成,如果个别节点挂了,集群还可以正常运作。Sentinel负责监控Redis集群的 健康 情况。

如果主Redis挂掉,Sentinel集群会通过投票选择一个新的主Redis。 当原来的主Redis恢复时,它会被当做新的主Redis的从Redis重新加入Redis集群。

设置连接master和slave的密码,需要注意的是sentinel不能分别为master和slave设置不同的密码,因此master和slave的密码必须设置相同。也就是说主Redis和从Redis都必须设置requirepass和masterauth,而且密码必须相同。

sentinel.conf配置信息:

将该配置文件放置到/data/redis/conf目录下,启动sentinel服务:

验证sentinel是否起作用,可以手工shutdown掉主Redis。

这时从Redis想要访问主Redis同步数据就会提示错误信息:

sentinel在监测到主Redis宕机之后,通过选举,将一个从Redis选定为新的主Redis。通过查看sentinel日志可以发现,选定6380为新的主Redis,同时将另外两个Redis作为从Redis。

注意:选定6380为主Redis后,所有的配置文件都会被修改,主要是重新建立主从关系。

6379会新增:slaveof 127.0.0.1 6380

6380会删掉:slaveof 127.0.0.1 6379

6381会修改:slaveof 127.0.0.1 6380

由于6379服务已经关掉,所以虽然sentinel将6379作为6380的从服务,但是没有真正的建立。

重新启动6379服务,这时sentinel会重建建立一次主从关系:

第一步,在windows下载安装配置好redis数据库。这里我就不再概述了。下载jedis-2.4.2.jar,当然最好是下载最新版本的jar包。这个在百度搜索下就出来的。下载后,放在一个文件夹下面,一会会需要到。

第二步。打开eclipse,新建一个java工程。如下图所示:

第三步:在Test这个java工程里面,我们新建一个folder,命名lib,把刚才下载的jedis-2.4.2.jar包放在我们新建的lib的包下面,如下图所示:

第四步,在eclipse中,选中jar包,build path下。然后我们再Test这个项目里面我们新建一个class,class名字为TestConnect。

第五步,在类里面,我们输入如下的内容:

// Connecting to Redis server on localhost

//实例化一个客户端

Jedis jedis = new Jedis("localhost")

//=================================================

// check whether server is running or not

//ping下,看看是否通的

System.out.println("Server is running: " + jedis.ping())

//保存一个

jedis.set("leiTest", "localhost Connection sucessfully")

//获取一个

System.out.println("通过key获取value:" + jedis.get("leiTest"))

第六步,对刚才的类进行运行,ctrl+f11快捷键运行下,如下图所示:

第七步,进一步验证我们是否在redis上是否保存了数据,并且能够取出来,我们到redis安装包的目录,如下图,打开红色框内的 redis-cli.exe,打开后,我们进入下面的第二个图片的界面。

第八步:我们在redis的客户端的界面 输入 get leiTest 这个指令。leiTest是刚才在eclipse中我们存入redis数据库中的一个String类型的键。如下图,证明我们确实成功了,你也试试吧。

【在Linux上安装redis】

1、用filezilla 把安装包上传到服务器中。

2、解压,然后把解压的文件夹移动到/user中

tar xzf redis-2.8.17.tar.gz

3、进入redis的文件夹,然后执行make命令,进行安装。

cd redis-2.8.17

make

3、安装完成后,编辑redis文件夹中的redis.conf。把band 127.0.0.1 改成 band 0.0.0.0

4、进入redis里面的src文件夹中启动redis

./redis-server ../redis.conf &

5、进入redis里面的src文件夹中,使用客户端打开redis

./redis-cli

5、设置密码为123456

CONFIG set requirepass 123456

6、退出

exit


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11684462.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存