zoukankan      html  css  js  c++  java
  • Redis集群搭建~Redis-x64-3.2.100版本

    参考文档:

    https://www.cnblogs.com/yaopengfei/p/12418227.html

    https://blog.csdn.net/weixin_42694286/article/details/92974535

    https://blog.csdn.net/qq_42815754/article/details/82912130

    https://blog.csdn.net/u010963948/article/details/78963572

    1,配置Redis服务

    下载zip格式Redis-x64-3.2.100版本、解压到 D盘根目录,然后复制 6 个配置文件,分别为:6279 ~ 6384
    下载目录:https://github.com/MSOpenTech/redis/releases/

    主要配置文件中的内容如下:以【redis.windows-service6379.conf】为例,其他几个文件同样如此修改,然后6379端口号也要修改为相对应的数字

           bind 192.***.**.**                                           #IP改为服务器对应IP

      port 6379                                                       #端口号

      appendonly yes                                             #数据的保存为aof格式

      appendfilename "appendonly.6379.aof"        #数据保存文件

      cluster-enabled yes                                        #是否开启集群

      cluster-config-file nodes.6379.conf                #集群节点配置文件

      cluster-node-timeout 15000                           #集群节点的超时时间

      cluster-slave-validity-factor 10                       #校验从节点是否可以进行主从复制,校验10次

      cluster-migration-barrier 1                              #配置数据转移

      cluster-require-full-coverage yes                    #主从节点全量复制

           protected-mode no                                         #默认开启,需要暂时关闭,不然下边无法配置集群,配置完成后再开启

    全部修改之后,进行安装服务操作,打开cmd, 切换到Redis目录下,分别执行以下命令进行服务安装:

    D:Redis-x64-3.2.100_cluster edis-server.exe --service-install D:Redis-x64-3.2.100_cluster edis.windows-service6379.conf --service-name RedisService6379

    D:Redis-x64-3.2.100_cluster edis-server.exe --service-install D:Redis-x64-3.2.100_cluster edis.windows-service6380.conf --service-name RedisService6380

    D:Redis-x64-3.2.100_cluster edis-server.exe --service-install D:Redis-x64-3.2.100_cluster edis.windows-service6381.conf --service-name RedisService6381

    D:Redis-x64-3.2.100_cluster edis-server.exe --service-install D:Redis-x64-3.2.100_cluster edis.windows-service6382.conf --service-name RedisService6382

    D:Redis-x64-3.2.100_cluster edis-server.exe --service-install D:Redis-x64-3.2.100_cluster edis.windows-service6383.conf --service-name RedisService6383

    D:Redis-x64-3.2.100_cluster edis-server.exe --service-install D:Redis-x64-3.2.100_cluster edis.windows-service6384.conf --service-name RedisService6384

    安装完成以后,打开服务,会看到以下几个服务,然后全部启动它们

     启动之后,你会在设置的持续化目录下看到生成了12个文件,我的持续化目录设置在data文件路径下了(默认在根目录下)

    2,安装Ruby运行环境 

    下载Ruby运行环境文件:http://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.2.4-x64.exe       

    安装时,注意勾选后两个,让其自动配置环境变量,最终安装在这个这个文件夹中【Ruby22-x64】

    3,下载Ruby环境下Redis驱动

    下载路径: https://rubygems.org/gems/redis/versions/3.2.2    考虑到兼容性,这里下载的是3.2.2版本

     

    然后将下载的文件:redis-3.2.2.gem  复制 到 Ruby运行环境 的安装目录下

    打开cmd,切换到Ruby运行环境的安装目录下,我的安装目录在:C:Ruby22-x64

    然后执行命令:gem install --local C:Ruby22-x64 edis-3.2.2.gem

    4,下载Redis集群工具 redis-trib.rb

    下载路径如下:https://github.com/beebol/redis-trib.rb     下载后解压文件,建议将文件放到 Redis 的根目录下

    打开cmd, 切换到Redis目录下,执行命令:

    ruby redis-trib.rb create --replicas 1 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384

    这里的 replicas 1,1代表1个master对应1个slave,改为2,则代表1个master对应2个slave

    注意:127.0.0.1 是你的配置文件中绑定的IP,如果你配置文件中的 bind 不是127.0.0.1,命令里也要跟着换

    如果你遇到下边的错误,参考文档 :https://blog.csdn.net/maoyuanming0806/article/details/103171182

    我的报错原因是设置密码了, 解决办法:就是先注释掉密码,等集群全部配置完成之后,再重新开启密码。

    可以参考文档:https://blog.csdn.net/xufei512/article/details/82758676

    解决一切路障之后,成功的安装驱动:

    5,Redis集群密码设置

    1,如果是使用redis-trib.rb工具构建集群,集群构建完成前不要配置密码,集群构建完毕再通过config set + config rewrite命令逐个机器设置密码

    2,如果对集群设置密码,那么requirepass和masterauth都需要设置,否则发生主从切换时,就会遇到授权问题

    3,各个节点的密码都必须一致,否则Redirected就会失败 

    6,测试

    使用客户端连接Redis集群,你会发现只有 db0 这1个数据库,如下图所示:

    原因:参考文档:https://blog.csdn.net/yaomingyang/article/details/79094869

    1,redis在单机模式下redis.conf配置文件中默认的数据库数量是16个

    2,在集群模式下这个配置是不起作用的,集群客户端是不支持多数据库db的,只有一个数据库默认是SELECT 0

    3,集群slave从节点默认是不支持读写操作的,但是在执行过readonly命令后可以执行读操作

    接下来:在6379这个端口增加一个set 命令

    你会发现其他5个所有都会同步增加

    集群搭建完成之后,就是使用,如何在项目中使用集群服务,参考文档:

    https://blog.csdn.net/u010963948/article/details/78963572

  • 相关阅读:
    安装包报错2503解决方法
    js中return;、return true、return false;区别
    图片添加border 不占用图片的大小
    效果网址http://sc.chinaz.com/tag_jiaoben/tupianlunbo.html
    兼容ie8 rgba()用法
    html使用css让文字多行超出部分用省略号三个点显示的方法案例
    MyCat02--MyCat入门无ZK实践
    MyCat01--基础
    MySQL/MariaDB导入(load data infile)导出(select into outfile)
    MariaDB/Mysql临时表
  • 原文地址:https://www.cnblogs.com/peterzhang123/p/12512242.html
Copyright © 2011-2022 走看看