redis的集群常规操作记录

本文详细介绍了Redis的安装步骤及配置方法,并深入探讨了主从复制、哨兵、事务处理、持久化策略(RDB与AOF)及集群搭建等高级特性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

系列教程都是从网络上收集和本人的理解所编辑而成,仅供广大爱好者学习所用,请尊重本人的劳动成果。欢迎评论指正和转帖!(请保留连接谢谢!)



 《Redis安装》
    下载地址http://redis.io/download

安装步骤:
    1 首先需要安装gcc,把下载好的redis-3.0.0-rc2.tar.gz 放到linux /usr/local文件夹下
    2 进行解压 tar -zxvf redis-3.0.0-rc2.tar.gz
    3 进入到redis-3.0.0目录下,进行编译 make
    4 进入到src下进行安装 make install  验证(ll查看src下的目录,有redis-server 、redis-cil即可)
    5 建立俩个文件夹存放redis命令和配置文件
       mkdir -p /usr/local/redis/etcmkdir -p /usr/local/redis/bin
    6 把redis-3.0.0下的redis.conf 移动到/usr/local/redis/etc下,
       cp redis.conf /usr/local/redis/etc/
    7 把redis-3.0.0/src里的mkreleasehdr.sh、redis-benchmark、redis-check-aof、redis-check-dump、redis-cli、redis-server 
文件移动到bin下,命令:
       mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server /usr/local/redis/bin
    8 启动时并指定配置文件:./redis-server /usr/local/redis/etc/redis.conf(注意要使用后台启动,所以修改redis.conf里的 daemonize 改为yes)
    9 验证启动是否成功:
       ps -ef | grep redis 查看是否有redis服务 或者 查看端口:netstat -tunpl | grep 6379

       进入redis客户端:./redis-cli 

       退出客户端:quit

退出redis服务三种方法: 
    (1)pkill redis-server 
    (2)kill 进程号            
    (3)/usr/local/redis/bin/redis-cli shutdown 



《Redis主从复制》
      原理:从服务器找主服务器,主服务器可读可写,从服务器只能读不能写。
      配置:在从服务器中配置一句:slaveof 主服务器IP地址 主服务器端口号。



《Redis哨兵》
      原理:在从节点的任意一台机器上部署,或者开启一台新机器进行部署。
      配置:修改redis中的sentinel.conf文件。
      port 26378(自己取IP地址)
      dir "/tmp"
      sentinel monitor master1 10.46.28.2 6378 1
      sentinel down-after-milliseconds master1 5000
      sentinel failover-timeout master1 5000
      sentinel config-epoch master1 80
      loglevel notice
      logfile "/home/www/output/redis/logs/redis-sentinel.log"
      # Generated by CONFIG REWRITE
      sentinel leader-epoch master1 5049
      sentinel current-epoch 5049
      启动:   ./redis-server  ./sentinel.conf
      查看:   ./redis-cli -h 192.168.1.121 -p 26379 info Sentinel
      关闭:   ./redis-cli -h 192.168.1.121 -p 6379 shutdown



《Redis事务》
  进入redis中,执行如下命令:
  multi --->开启事务
  set xx -->设置值
  exec  --->确认执行
  注意:事务操作不会影响其它的数据,仅仅当前出错的数据不能成功,其它是成功的,没有回滚环节。



《 Redis持久化-RDB与AOF的区别》
   两种区别就是,一个是持续的用日志记录写操作,crash后利用日志恢复;一个是平时写操作的时候不触发写,只有手动提交save命令,或者是关闭命令时,才触发备份操作。
   选择的标准,就是看系统是愿意牺牲一些性能,换取更高的缓存一致性(aof),还是愿意写操作频繁的时候,不启用备份来换取更高的性能,待手动运行save的时候,再做备份(rdb)。rdb这个就更有些 eventually consistent的意思了。
   参考:http://blog.youkuaiyun.com/jackpk/article/details/30073097




《Redis集群》
  原理:主要是修改redis.conf文件中的配置,来实现多redis集群,可以用一台电脑或多台电脑。
  实现:
  1.把redis.conf文件放置在统一的位置,方便管理。
  2.修改里面的配置:
    a.daemonize  --->yes
    b.port --> 设置成独立的,类似的:7000。。。。70001
    c.bind --> 必须要绑定当前机器的IP地址
    d.dir  --> 指定数据文件存放的位置,有RDB和A0F模式
    e.cluster-enabled --> yes  设置集群模式
    f.cluster-config-file -->对应设置每个conf文件,用端口号+名字的方法 例如:redis7000.conf
    g.cluster-node-timeout -->设置节点超时时间 5000
    h.appendonly -->yes
  3.由于redis集群需要ruby,所有需要安装
    a.yum install runby
    b.yum install rubygems
    c.gem install redis  (插件)
  4.运行单个的redis
  5.启动集群
  ./redis-trib.rb create --replicas 1(主从占比,从除以主) 192.168.1.121:7001 192.168.1.121:7002 192.168.1.121:7003 192.168.1.121:7004 192.168.1.121:7005 192.168.1.121:7006




《访问集群某个节点》
./redis-cli -c -h 192.168.1.121 -p 7001




《新增集群从节点》
  ./redis-trib.rb add-node 192.168.1.121.7007(新增节点) 192.168.1.121.7001(主节点)默认是主节点,但是不能存放数据,需要分配存储数据的空间
  ./redis-trib.rb reshard 192.168.1.121.7007 (增加存储数据的空间)
  1.设置存储空间
  2.输入ID号
  3.输入 all 表示平均分配
  4.输入yes




《新增集群主节点》
./redis-trib.rb add-node 192.168.1.121.7008(新增节点) 192.168.1.121.7001(默认是主节点,变成从节点)
./redis-cli -c -h 192.168.1.121 -p 7008 (登陆后输入下面命令)
cluster replicate id(主节点id) 




《删除集群从节点》
./redis-trib.rb del-node 191.168.1.121:7008  id(节点id) 




删除集群主节点》
  删除主节点之前,我们要把数据移动到其它节点上。
  ./redis-trib.rb reshard 192.168.1.121.7007 (增加存储数据的空间)
  1.设置存储空间
  2.移动到哪个ID号
  3.输入done 表示结束
  4.输入yes
  执行删除
  ./redis-trib.rb del-node 191.168.1.121:7008  id(节点id) 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值