java连接redis时出现故障时的解决方法

报错信息:

DENIED Redis is running in protected mode because protected mode is enabled, no bind address was specified, no authentication password is requested to clients. In this mode connections are only accepted from the loopback interface. If you want to connect from external computers to Redis you may adopt one of the following solutions: 1) Just disable protected mode sending the command 'CONFIG SET protected-mode no' from the loopback interface by connecting to Redis from the same host the server is running, however MAKE SURE Redis is not publicly accessible from internet if you do so. Use CONFIG REWRITE to make this change permanent. 2) Alternatively you can just disable the protected mode by editing the Redis configuration file, and setting the protected mode option to 'no', and then restarting the server. 3) If you started the server manually just for testing, restart it with the '--protected-mode no' option. 4) Setup a bind address or an authentication password. NOTE: You only need to do one of the above things in order for the server to start accepting connections from the outside.

翻译后:

DENIED Redis正在保护模式下运行,因为已启用保护模式,未指定绑定地址,未向客户端请求身份验证密码。在此模式下,只能从环回接口接受连接。如果要从外部计算机连接到Redis,可以采用以下解决方案之一:1)通过从服务器运行的同一主机连接到Redis,从环回接口发送命令“CONFIG SET protected mode no”,即可禁用受保护模式,然而,若你们这样做的话,请确保Redis不能从互联网上公开访问。使用“配置重写”将此更改永久化。2) 或者,您可以通过编辑Redis配置文件,将受保护模式选项设置为“否”,然后重新启动服务器来禁用受保护模式。3) 如果只是为了测试而手动启动服务器,请使用“--protectedmodeno”选项重新启动服务器。4) 设置绑定地址或身份验证密码。注意:您只需要执行上述操作之一,服务器就可以开始接受来自外部的连接。

第一个设置:

  1. 在redis的安装目录中,进入redis.conf配置文件 vim redis.conf

  2. 注释掉如图所示的这一行,我这里已经注释过了

 

 

  1. 如图所示的这一行,配置改成yes,我这里已经改过了

 

 

  1. 如图所示的配置改为no,我这里已经改过了

 

 

  1. 之后保存,退出vim

  2. 启动redis服务,进入redis-cli中执行 config set protected-mode "no"

 

 

注意:完成配置后,需要重新指定其配置文件,在redis安装目录下执行:redis-server & ./redis.cli

第二个设置

  • 关闭防火墙,其命令为:systemctl stop firewalld

  • 或者放行redis的端口6379,

    其命令为:firewall-cmd --permanent --add-port=6379/tcp

    firewall-cmd --reload




posted @ 2022-01-07 17:17  AMHAO  阅读(887)  评论(0编辑  收藏  举报