专栏首页测试开发架构之路redis集群部署那点事Redis报错:WRONGTYPE Operation against a key holding the wrong kind of value 解决处理

redis集群部署那点事Redis报错:WRONGTYPE Operation against a key holding the wrong kind of value 解决处理

【CentOS】make cc Command not found,make: *** [adlist.o] Error 127”

 参考:https://blog.csdn.net/wzygis/article/details/51705559

https://blog.csdn.net/cn_wk/article/details/50244673

问题:Hint: It's a good idea to run 'make test' ;)

INSTALL install INSTALL install INSTALL install INSTALL install INSTALL install make[1]: Leaving directory `/usr/local/redis/src'

解决

 参考:

https://blog.csdn.net/testcs_dn/article/details/39756477

参考:

http://blog.mayongfa.cn/258.html

https://www.cnblogs.com/mafly/p/redis_cluster.html

创建集群

由于 Redis 集群需要使用 ruby 命令,所以我们需要安装 ruby 和相关接口。

yum install ruby
yum install rubygems
gem install redis 

redis操作指令

注意事项:

Redis报错:WRONGTYPE Operation against a key holding the wrong kind of value 解决处理

 hkeys ifs....

./redis-cli -h 192.25.106.44 -p 7111 -a 'hsstr.COM'

$ redis-cli -h host -p port -a password

redis 集群链接:

redis-cli -c -h host -p  port -a password

redis重启

netstat -tnlp|grep 6389

pwdx 29315  查找pid进程所在的程序路径

 kill 29315

python 连接异常

redis.exceptions.ResponseError: CLUSTERDOWN The cluster is down

如果是用apt-get或者yum install安装的redis,可以直接通过下面的命令停止/启动/重启redis

/etc/init.d/redis-server stop
/etc/init.d/redis-server start
/etc/init.d/redis-server restart

如果是通过源码安装的redis,则可以通过redis的客户端程序redis-clishutdown命令来重启redis

redis-cli -h 127.0.0.1 -p 6379 shutdown

如果上述方式都没有成功停止redis,则可以使用终极武器 kill -9

/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- redis (LoadError) from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:55:in `require' from ./redis-trib.rb:25:in `<main>'

 解答:https://blog.csdn.net/Hello_World_QWP/article/details/78260684

gem install 报错(手动下载,gem install)

解决方法:https://blog.csdn.net/qqxyy99/article/details/78962846

 创建集群失败

解答:设置了密码,删除密码即可

创建集群一直处在创建中。。。

Nodes configuration updated >>> Assign a different config epoch to each node >>> Sending CLUSTER MEET messages to join the cluster Waiting for the cluster to join

 问题:

 参考:https://www.cnblogs.com/huxinga/p/6644226.html

https://www.cnblogs.com/huxinga/p/6644226.html

./redis-trib.rb  create  --replicas  1  192.168.5.130:7001 192.168.5.130:7002  192.168.5.130:7003 192.168.5.129:7004  192.168.5.129:7005  192.168.5.129:7006

./redis-server /usr/local/redis-cluster/7001/redis.conf
./redis-server /usr/local/redis-cluster/7002/redis.conf
./redis-server /usr/local/redis-cluster/7003/redis.conf

./redis-server /usr/local/redis-cluster/7004/redis.conf
./redis-server /usr/local/redis-cluster/7005/redis.conf
./redis-server /usr/local/redis-cluster/7006/redis.conf

  创建键值的时候报错

 解答:全局连接redis

仔细观察能够注意到,redis-cli根据指示,不断在7000和7002结点之前重定向跳转。如果启动时不加-c选项的话,就能看到以错误形式显示出的MOVED重定向消息。

[root@8gVm redis-3.0.4]# src/redis-cli -h 192.168.5.130 -p 7001
192.168.5.130:7001> get foo
(error) MOVED 7252 192.168.5.129:7004

参考文章:https://www.cnblogs.com/mafly/p/redis_cluster.html

http://blog.mayongfa.cn/258.html

单机部署redis

https://www.linuxidc.com/Linux/2017-03/141403.htm

https://blog.csdn.net/nxx_168/article/details/7381404

ruby 离线安装详情:http://www.cnblogs.com/xuliangxing/p/7132656.html?utm_source=itdadao&utm_medium=referral

 redis集群报错:

### Cause: redis.clients.jedis.exceptions.JedisNoReachableClusterNodeException: No reachable node in cluster

由于磁盘上已经有数据:

本文参与 腾讯云自媒体分享计划 ,欢迎热爱写作的你一起参与!
本文分享自作者个人站点/博客:http://www.cnblogs.com/iloverain复制
如有侵权,请联系 cloudcommunity@tencent.com 删除。
登录 后参与评论
0 条评论

相关文章

  • Redis 哈希

    {key:{field1:value1,field2:value2,...fieldN:valueN}}

    三产
  • 解决:Caused by: redis.clients.jedis.exceptions.JedisDataException: WRONGTYPE Operation against a key

    3. 错误的原因是我在set的时候先放入的是A类型的数据。后来我由于代码写错了,又想要放入B类型的数据。放入失败并报错。

    微风-- 轻许--
  • Redis 事务(8)

    Redis的单个命令是原子性的(比如get set mget mset),如果涉及到多个命令的时候,需要把多个命令作为一个不可分割的处理序列,就需要用到事务。

    兜兜毛毛
  • Redis 集合

    集合(set)类型也是用来保存多个的字符串元素,但和列表类型不一样的是,集合中不允许有重复元素,并且集合中的元素是无序的,不能通过索引下标获取元素。一个集合最多...

    三产
  • Redis 字符串介绍及相关命令

    Redis 的命令及其选项时不区分大小写的(键以及值是区分大小写的),本文中采用 [] 表示可选项,命令中的关键字使用大写,参数值使用小写以便区分

    三产
  • redis中报错

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

    chenchenchen
  • 欲求不满之 Redis Lua 脚本的执行原理

    Redis 提供了非常丰富的指令集,但是用户依然不满足,希望可以自定义扩充若干指令来完成一些特定领域的问题。Redis 为这样的用户场景提供了 lua 脚本支持...

    老钱
  • Redis 数据类型

    Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。

    子润先生
  • Redis Lua脚本的使用

    Lua语言提供了如下几种数据类型:booleans(布尔)、numbers(数值)、strings(字符串)、tables(表格)。

    三产
  • Redis 在项目中合理使用经验总结

    key:active:spring2019:title value:"2019春节活动" 操作:set

    lyb-geek
  • Redis项目实战,一些经验总结

    不管是简单和复杂的数据都可以直接转为string存储。推荐阅读:Redis 的 8 大应用场景。

    Java技术栈
  • Redis项目实战,一些经验总结

    不管是简单和复杂的数据都可以直接转为string存储。推荐阅读:Redis 的 8 大应用场景。

    lyb-geek
  • Redis在项目中合理使用经验总结

    key: active:spring2019:title value:"2019春节活动" 操作:set

    猿哥
  • Redis-事务

      我们知道 Redis 的单个命令是原子性的(比如 get set mget mset),如果涉及到多个命令的时候,需要把多个命令作为一个不可分割的处理序列,...

    会说话的丶猫
  • SpringBoot中Spring-cache与Redis整合【面试+工作】

    也是在整合redis的时候偶然间发现spring-cache的。这也是一个不错的框架,与spring的事务使用类似,只要添加一些注解方法,就可以动态的去操作缓存...

    Java帮帮
  • 浅谈Redis通信协议

    Redis客户端和服务器端使用的通信协议叫做RESP(Redis Serialization Protocol)。它是特意为Redis设计的,同时也可以用于其他...

    Jackeyzhe
  • Redis 列表

    列表可以存储 多个 有序 可重复 的字符串。列表中的每个字符串称为元素(element),一个列表最多可以存储2 ^ 32 - 1个元素。在Redis中,可以对...

    三产
  • 如何编写入门级redis客户端

    概述 Redis是开源的、基于内存的数据结构存储系统,可用作数据库、缓存以及消息代理方面。Redis支持许多种数据结构,并内置了丰富的诸如冗余、脚本、事务、持久...

    xiangzhihong
  • 【数据库】Redis进阶篇

    为了保证多条命令组合的原子性,Redis提供了简单的事务功能以及集成Lua脚本来解决这个问题。简单介绍Redis中事务的使用方法以及它的局限性。

    用户3467126

扫码关注腾讯云开发者

领取腾讯云代金券