问题:linux系统编译安装redis,设置密码后,使用客户端连接命令时-a password参数无效,登录后还需要进行AUTH PASSWORD进行身份验证。这是什么原因呢?有没有知道的大佬?
redis安装步骤:
1、解压tar包,进入目录后进行make
2、make PREFIX=安装目录
3、在配置文件中加入密码
4、进入bin目录,执行登录命令:./redis-cli -p 7000 -a eCmp$208后还需要进行一次身份验证。
如图:
在redis安装后设置密码后,使用客户端连接时-a参数不能生效可能是因为redis配置文件的bind选项未指定客户端允许使用的绑定IP地址。因此客户端连接时即使使用了-a参数也无法通过认证。
解决方法是,修改redis配置文件redis.conf,在bind选项中加入0.0.0.0表示允许任意IP连接redis服务器。例如:
bind 0.0.0.0
保存修改后,重新启动redis服务器。然后在使用redis-cli登录时,再加上-a选项指定密码即可,无需再执行AUTH命令进行身份验证。
redis.conf文件:
redis中有两个配置参数:
(旧版本)
min-slaves-to-write 3
min-slaves-max-lag 10
(新版本)
min-replicas-to-write 3
min-replicas-max-lag 10
第一个参数表示最少的salve节点为3个,第二个参数表示数据复制和同步的延迟不能超过10秒
配置了这两个参数:如果发生脑裂:原master会在客户端写入操作的时候拒绝请求。这样可以避免大量数据丢失。