• redis安装及报错处理


    mkdir /app/redis

    cd /app/redis

    wget http://download.redis.io/releases/redis-5.0.7.tar.gz

    tar -zxvf redis-5.0.7.tar.gz

    cd /app/redis/redis-5.0.7

    make MALLOC=libc

    sudo make install

    cp redis.conf src/

    cd src

    主要修改内容如下:

    port 6379

    cluster-enabled yes

    cluster-config-file nodes-6379.conf   //启动的时候会由redis生成和管理

    cluster-node-timeout 15000

    appendonly yes

    daemonize yes //后台运行

    bind 0.0.0.0

    每个节点运行

    /app/redis/redis-5.0.7/src/redis-server  /app/redis/redis-5.0.7/src/redis.conf

    由于redis集群最少需要6个节点,需要再建两个配置文件

    cp  redis.conf redis_6380.conf

    cp redis.conf redis_6381.conf

    原文档中包含6379的地方都修改为对应的ip

    例如:

    port 6380

    pidfile /var/run/redis_6380.pid

    cluster-config-file nodes-6380.conf

    每个节点运行

    /app/redis/redis-5.0.7/src/redis-server  /app/redis/redis-5.0.7/src/redis.conf

    /app/redis/redis-5.0.7/src/redis-server  /app/redis/redis-5.0.7/src/redis_6380.conf

    /app/redis/redis-5.0.7/src/redis-server  /app/redis/redis-5.0.7/src/redis_6381.conf

    测试/生产环境(只需要安装redis的一台上执行即可):

    /app/redis/redis-5.0.7/src/redis-cli --cluster create  172.20.108.166:6379 172.20.108.166:6380  172.20.108.166:6381 172.20.108.188:6379  172.20.108.188:6380   172.20.108.188:6381  --cluster-replicas 1

    追加节点
    src/redis-cli --cluster add-node 10.99.32.32:6379 10.99.32.3:6379
    查看节点
    src/redis-cli -h 10.99.32.9 -c cluster nodes
    删除节点
    src/redis-cli --cluster del-node 10.99.32.9:6379 08859612fdf824fd07c538c65073a86ca7d522cb
    需要先获取节点node-id

     
    这样就可以登录客户端查看集群状况:
    进入redis01
    执行:
    ./redis-cli -c -p 7001则进入客户端.
    集群状态查看:
    cluster nodes
    cluster info 

    集群添加密码参考地址:https://blog.csdn.net/u012572955/article/details/53996107

    如果集群要设置密码,集群启动后要在各个节点下设置:

    config set masterauth xxx
    config set requirepass xxx

    然后在各个节点下重置配置:
    config rewrite

    redis 集群 创建报错 [ERR] Node is not empty. Either the node already knows other nodes:

    参考地址:https://blog.csdn.net/xiaoliuliu2050/article/details/72898828

    https://blog.csdn.net/u012572955/article/details/53996107

    解决方法:

    redis集群重启需要删除各个节点下的文件,删除命令如下:

    rm -rf appendonly.aof

    rm -rf dump.rdb 

    rm -rf nodes.conf

    rm -rf nodes-6379.conf 

    rm -rf nodes-6380.conf  

    rm -rf nodes-6381.conf  

    rm -rf redis.log

    1)、将需要新增的节点下aof、rdb等本地备份文件删除;

    2)、同时将新Node的集群配置文件删除,即:删除你redis.conf里面cluster-config-file所在的文件;

    3)、再次添加新节点如果还是报错,则每个节点登录新Node,./redis-cli–h x –p对数据库进行清除:

    例如:./redis-cli -c -p 7001

    172.168.63.201:7001>  flushdb      #清空当前数据库

    Redis (error) NOAUTH Authentication required.解决方法:

    出现认证问题,应该是设置了认证密码,输入密码既可以啦

    注意密码是字符串形式!

    127.0.0.1:6379> auth "yourpassword"

    例如密码是‘root’,当出现认证问题时候,输入“auth ‘root’”即可

    127.0.0.1:6379> set name "hello"
    (error) NOAUTH Authentication required.
    127.0.0.1:6379> (error) NOAUTH Authentication required.
    (error) ERR unknown command '(error)'
    127.0.0.1:6379> auth "root"
    


    可以进入

    127.0.0.1:6379> auth "root"
    OK

    redis 如何查看所有的key:

    列出所有的key

    redis> keys *

    列出匹配的key

    redis>keys apple*
    1) apple1
    2) apple2
  • 相关阅读:
    HDU
    Hdu 5072 Coprime(容斥+同色三角形)
    HDU
    HTML常用基础标签
    简单session实现
    前端中的 IoC 理念
    怎样做页面界限
    Reset 对象属性
    SQL注入
    js:表单校验(获取元素、事件)
  • 原文地址:https://www.cnblogs.com/js1314/p/13525286.html
Copyright © 2020-2023  润新知