irpas技术客

idea连接云服务器上的redis报错:Failed to connect to any host resolved for DNS name.【已解决】_鹏少

irpas 5953

idea连接腾讯云服务器报错【已解决】

错误如下所示

at redis.clients.jedis.DefaultJedisSocketFactory.connectToFirstSuccessfulHost(DefaultJedisSocketFactory.java:63) at redis.clients.jedis.DefaultJedisSocketFactory.createSocket(DefaultJedisSocketFactory.java:87) at redis.clients.jedis.Connection.connect(Connection.java:180) at redis.clients.jedis.Connection.sendCommand(Connection.java:152) at redis.clients.jedis.Connection.executeCommand(Connection.java:121) at redis.clients.jedis.Jedis.keys(Jedis.java:5009) at com.wyp168.jedis.JedisDemo01.testJedis(JedisDemo01.java:22) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.testng.internal.invokers.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:135) at org.testng.internal.invokers.TestInvoker.invokeMethod(TestInvoker.java:673) at org.testng.internal.invokers.TestInvoker.invokeTestMethod(TestInvoker.java:220) at org.testng.internal.invokers.MethodRunner.runInSequence(MethodRunner.java:50) at org.testng.internal.invokers.TestInvoker$MethodInvocationAgent.invoke(TestInvoker.java:945) at org.testng.internal.invokers.TestInvoker.invokeTestMethods(TestInvoker.java:193) at org.testng.internal.invokers.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:146) at org.testng.internal.invokers.TestMethodWorker.run(TestMethodWorker.java:128) at java.util.ArrayList.forEach(ArrayList.java:1259) at org.testng.TestRunner.privateRun(TestRunner.java:808) at org.testng.TestRunner.run(TestRunner.java:603) at org.testng.SuiteRunner.runTest(SuiteRunner.java:429) at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:423) at org.testng.SuiteRunner.privateRun(SuiteRunner.java:383) at org.testng.SuiteRunner.run(SuiteRunner.java:326) at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52) at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:95) at org.testng.TestNG.runSuitesSequentially(TestNG.java:1249) at org.testng.TestNG.runSuitesLocally(TestNG.java:1169) at org.testng.TestNG.runSuites(TestNG.java:1092) at org.testng.TestNG.run(TestNG.java:1060) at com.intellij.rt.testng.IDEARemoteTestNG.run(IDEARemoteTestNG.java:66) at com.intellij.rt.testng.RemoteTestNGStarter.main(RemoteTestNGStarter.java:109) Suppressed: java.net.ConnectException: Connection refused (Connection refused) at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) at java.net.Socket.connect(Socket.java:613) at redis.clients.jedis.DefaultJedisSocketFactory.connectToFirstSuccessfulHost(DefaultJedisSocketFactory.java:73) ... 33 more 错误分析 redis关闭了远程连接,需要在redis.conf中修改防火墙拦截了6379端口,需要放行端口如果是阿里云服务器需要配置安全组(在阿里服务器控制台中配置)如果是腾讯云服务器则需要在腾讯云服务器上开放端口,远程主机才能进行访问 解决方法 修改redis.conf中的配置文件

输入以下命令

vim /etc/redis.conf

在一般模式下输入以下命令【搜索】

/bind 127.0.0.1

找到上述图片高亮部分,并注释该行 再在一般模式下输入以下命令

/protected-mode

将上图高亮部分的yes改为no(关闭保护模式)

更改防火墙配置,放行6379端口

输入以下命令,放行6379端口,并重启防火墙

firewall-cmd --zone=public --add-port=6379/tcp --permanent systemctl restart firewalld

注意:一定要重启防火墙,不然不会生效 重启防火墙之后重启redis,输入如下命令

1.先通过 ps -ef | grep redis 命令查询redis的进程号 2.执行 kill -9 pid 停止redis进程 3.执行redis-server /etc/redis.conf 命令,以守护模式开启redis服务

到这里,问题就解决了,我们就可以通过idea来远程操作腾讯云服务器上的redis了。


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #To #connect #any #host #Resolved #for