redis slave:无法连接到master:无效参数

时间:2015-04-14 08:00:37

标签: redis

在我的slave redis服务器上,执行'slaveof master_hostname 7804'后,它会不断记录以下消息:

Connecting to MASTER master_hostname:7804
Unable to connect to MASTER: Invalid argument

在托管我的slave redis服务器的Linux服务器上,我可以毫无问题地连接到我的主redis服务器:

$ redis-cli -h master_hostname -p 7804

master上的'info'输出:

# Replication
role:master
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0

奴隶上的'info'输出:

# Replication
role:slave
master_host:master_hostname
master_port:7804
master_link_status:down
master_last_io_seconds_ago:-1
master_sync_in_progress:0
slave_repl_offset:1
master_link_down_since_seconds:1428997735
slave_priority:100
slave_read_only:1
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0

两台redis服务器均为3.0.0。如果我使用主redis服务器的IP而不是其主机名,我遇到了同样的问题。

有什么想法吗?

2 个答案:

答案 0 :(得分:3)

我在这里遇到完全相同的问题。我在两台机器(主机和从机)中使用Redis 3.0.0。

我已经尝试了sysctl vm.overcommit_memory=1,但仍然没有工作。

就我而言,我使用的是CentOS 6.6。

编辑: 我找到了解决方案!在 slave 配置中,如果您已配置bind 127.0.0.1,则需要更改为bind 192.168.1.54(其中192.168.1.54是从属IP )。请记住,master位于同一网络192.168.1。*。

答案 1 :(得分:3)

我在MASTER-SLAVE设置中遇到了与Redis 3相同的问题。

我将bind 127.0.0.1 10.234.1.10更改为bind 10.234.1.10 127.0.0.1并且有效!

所以,看起来," 127.0.0.1"不能在列表中排在第一位。