您的位置:首页 > 数据库 > Redis

redis 创建集群时 出现的错误解决方式

2016-03-14 14:34 691 查看
1. 创建集群时报以下错误

(1)错误1

./redis-trib.rb create --replicas 1 XXXXXX:5301 XXXXXX:5302 XXXXXX:5303 XXXXXX:5304 XXXXXX:5305 XXXXXX:5306

/usr/local/rvm/rubies/ruby-2.2.1/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require': cannot load such file -- redis (LoadError)

from /usr/local/rvm/rubies/ruby-2.2.1/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'

from ./redis-trib.rb:25:in `<main>'

解决方式 : 可能是因为没有安装 ruby的 redis插件

gem install redis-3.0.7.gem

(2)错误2

./redis-trib.rb create --replicas 1 XXXXXX:5301 XXXXXX:5302 XXXXXX:5303 XXXXXX:5304 XXXXXX:5305 XXXXXX:5306

>>> Creating cluster

[ERR] Node XXXXXX:5302 is not empty. Either the node already knows other nodes (check with CLUSTER NODES) or contains some key in database 0.

解决方式 : 不同节点的数据库中包含相同的数据,把所有的数据库的数据清除即可 , 命令 : flushdb

(3)错误3

Can I set the above configuration? (type 'yes' to accept): yes

/usr/local/rvm/gems/ruby-2.2.1/gems/redis-3.0.7/lib/redis/client.rb:97:in `call': ERR Slot 5474 is already busy (Redis::CommandError)

from /usr/local/rvm/gems/ruby-2.2.1/gems/redis-3.0.7/lib/redis.rb:2432:in `block in method_missing'

from /usr/local/rvm/gems/ruby-2.2.1/gems/redis-3.0.7/lib/redis.rb:37:in `block in synchronize'

from /usr/local/rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/monitor.rb:211:in `mon_synchronize'

from /usr/local/rvm/gems/ruby-2.2.1/gems/redis-3.0.7/lib/redis.rb:37:in `synchronize'

from /usr/local/rvm/gems/ruby-2.2.1/gems/redis-3.0.7/lib/redis.rb:2431:in `method_missing'

from ./redis-trib.rb:212:in `flush_node_config'

from ./redis-trib.rb:775:in `block in flush_nodes_config'

from ./redis-trib.rb:774:in `each'

from ./redis-trib.rb:774:in `flush_nodes_config'

from ./redis-trib.rb:1295:in `create_cluster_cmd'

from ./redis-trib.rb:1695:in `<main>'

解决方式 : 是因为之前创建redis集群时错误因起的,只需要把 redis.conf 中指定的文件删除即可,一般默认的文件名是: nodes.conf , 所有的节点下都有一个这样的文件,所以需要把所有的nodes.conf都删除即可
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: