返回顶部
首页 > 资讯 > 数据库 >详解Redis开启远程登录连接
  • 685
分享到

详解Redis开启远程登录连接

详解远程登录Redis 2022-06-04 17:06:49 685人浏览 八月长安
摘要

今天使用jedis客户端api连接远程连接Redis的时候,一直报错,如下: redis.clients.jedis.exceptions.JedisConnectionException: java.

今天使用jedis客户端api连接远程连接Redis的时候,一直报错,如下:


redis.clients.jedis.exceptions.JedisConnectionException: java.net.ConnectException: Connection refused: connect
  at redis.clients.jedis.Connection.connect(Connection.java:164)
  at redis.clients.jedis.BinaryClient.connect(BinaryClient.java:80)
  at redis.clients.jedis.Connection.sendCommand(Connection.java:100)
  at redis.clients.jedis.Connection.sendCommand(Connection.java:91)
  at redis.clients.jedis.BinaryClient.auth(BinaryClient.java:551)
  at redis.clients.jedis.BinaryJedis.auth(BinaryJedis.java:2047)
  at sy.test.TestJedis.setUp(TestJedis.java:18)
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at java.lang.reflect.Method.invoke(Method.java:606)
  at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
  at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
  at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
  at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
  at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
  at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
  at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
  at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
  at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
  at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
  at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
  at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
  at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
  at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
  at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
  at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
  at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
  at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
  at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
  at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
Caused by: java.net.ConnectException: Connection refused: connect
  at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
  at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85)
  at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
  at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
  at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
  at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
  at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
  at java.net.Socket.connect(Socket.java:579)
  at redis.clients.jedis.Connection.connect(Connection.java:158)
  ... 30 more 

原来是redis默认只能localhost登录,所以需要开启远程登录。解决方法如下:

在redis的配置文件redis.conf中,找到bind localhost注释掉。

注释掉本机,局域网内的所有计算机都能访问。

band localhost 只能本机访问,局域网内计算机不能访问。

bind 局域网IP 只能局域网内IP的机器访问, 本地localhost都无法访问。

验证方法:


  [root@mch ~]# ps -ef | grep redis
  root   2175   1 0 08:15 ?    00:00:05 /usr/local/bin/redis-server *:6379 

/usr/local/bin/redis-server *:6379 中通过"*"就可以看出此时是允许所有的ip连接登录到这台redis服务上。

注意事项:

今天再设置远程访问的时候,在启动Redis的时候报错:Creating Server tcp listening socket *:6379: unable to bind socket(Redis一定不能设置成后台运行,否则终端不会有任何错误显示)。

上网搜索说各种原因的都有,有的说是Redis版本的bug(我用的版本是3.2.0),我是参考以下几篇文章解决了这个问题:

https://GitHub.com/antirez/redis/issues/3241

Http://stackoverflow.com/questions/8537254/redis-connect-to-remote-server

我没有注释掉bind 127.0.0.1,而是将bind 127.0.0.1 改成了bind 0.0.0.0。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

您可能感兴趣的文档:

--结束END--

本文标题: 详解Redis开启远程登录连接

本文链接: https://lsjlt.com/news/11861.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 详解Redis开启远程登录连接
    今天使用jedis客户端api连接远程连接redis的时候,一直报错,如下: redis.clients.jedis.exceptions.JedisConnectionException: java....
    99+
    2022-06-04
    详解 远程登录 Redis
  • redis如何开启远程连接不上
    redis开启远程连接不上的解决方法:打开redis的配置文件“redis.conf”。将“bind 127.0.0.1”注释掉。将“protected-mode yes”改成“protected-mode no”。添加以下一行代码。dae...
    99+
    2024-04-02
  • MYSQL开启远程连接
    Host 'xxx' is not allowed to connect to this MySQL server.              mysql开启远程连接今天在服务器安装了mys...
    99+
    2024-04-02
  • mysql——开启远程连接
    1、打开 mysql 数据库 use mysql; 2、查看 user 数据表当前已有的数据 select * from user \G; 3、修改一条 root 数据,并刷新MySQL的系统权限相关表 updat...
    99+
    2023-09-24
    mysql 数据库 java
  • MySQL8.0 开启远程连接
    一、MySQL 开启远程连接需要先在服务器上登录到 MySQL mysql -u root -p 1 然后 Enter password: 二、修改 root 账户的 Host 1、打开 mysql 数据库 use mysql; 1 2、查...
    99+
    2023-09-03
    mysql 数据库 服务器
  • MySQL 开启远程连接
    MySQL 开启远程连接 一、MySQL 开启远程连接需要先在服务器上登录到 MySQL mysql -u root -p 然后 Enter password: 二、修改 root 账户的 Host 1、打开 mysql 数据库 use m...
    99+
    2023-08-16
    mysql 服务器 数据库
  • Linux开启ssh远程登录
    Linux配置ssh 开启远程登录 你好! 这里介绍了Linux系统Centos、Ubuntu环境下开启ssh的方法。 一、CentOS开启SSH服务 安装openssh-server; yum li...
    99+
    2023-10-27
    linux ssh 服务器 ubuntu centos
  • mysql 开启远程连接(windows)
    mysql版本:MySQL Server 5.7 1、开放防火墙端口 2、 配置 MySQL 服务的用户权限  打开 cmd 输入以下命令登录 mysql,接着输入密码,回车 mysql -u root -p 接着输入命令...
    99+
    2023-09-02
    服务器 linux centos
  • mysql怎么开启远程连接
    可以通过以下步骤开启 mysql 远程连接:修改配置文件以绑定到所有 ip 地址;重新启动 mysql 服务;在防火墙中允许 3306 端口;配置远程用户的访问权限;刷新权限;测试远程连...
    99+
    2024-05-30
    mysql 子网
  • oracle如何开启远程连接
    要在Oracle数据库中开启远程连接, 需要进行以下步骤: 确保Oracle数据库监听器已经在运行。可以使用以下命令检查监听器状...
    99+
    2024-05-14
    oracle
  • centos怎么开启ssh远程登录
    要在CentOS上开启SSH远程登录,您需要按照以下步骤操作: 确保您的CentOS系统已安装了SSH服务器软件。可以使用以下命...
    99+
    2023-10-22
    centos ssh
  • ubuntu怎么开启ssh远程登录
    要在Ubuntu上开启SSH远程登录,可以按照以下步骤操作:1. 打开终端,输入以下命令安装OpenSSH Server(如果已经安...
    99+
    2023-08-19
    ubuntu
  • centos7怎么开启ssh远程登录
    要在CentOS 7上启用SSH远程登录,请按照以下步骤操作:1. 确保已经安装了SSH服务器软件(OpenSSH)。如果没有安装,...
    99+
    2023-08-17
    centos7
  • ubuntu怎么开启root远程登录
    要在Ubuntu上开启root远程登录,请按照以下步骤操作:1. 使用管理员权限打开终端。2. 编辑SSH server配置文件。可...
    99+
    2023-08-17
    ubuntu
  • centos7如何开启ssh远程登录
    要在CentOS 7上开启SSH远程登录,您需要按照以下步骤操作: 安装OpenSSH服务器: 在终端中输入以下命令来安装Open...
    99+
    2024-04-02
  • Windows7开启远程桌面连接详细图文教程
      如果您有多台电脑且分部在不同的地方。那么如何使用一台电脑对其他电脑进行控制呢其实win7系统自带了远程连接功能,下面就为大家介绍Windows 7 远程桌面连接的方法。   1.使用鼠标右键“计算机&rd...
    99+
    2023-06-14
    Windows7 远程桌面连接 远程桌面 教程 图文
  • 开启MySQL远程连接的方法
    MySql-Server 出于安全方面考虑只允许本机(localhost, 127.0.0.1)来连接访问,这对于 Web-Server 与 MySql-Server 都在同一台服务器上的网站架构来说是没有问题的。 ...
    99+
    2022-05-12
    MySQL 远程连接 开启MySQL 远程连接
  • 怎么开启远程桌面连接
    这篇文章将为大家详细讲解有关怎么开启远程桌面连接,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。开启远程桌面连接的方法:首先打开电脑,在电脑桌面上找到此电脑图标;然后用鼠标右键点击此电脑图标,在弹出的选项列...
    99+
    2023-06-15
  • centos怎么开启远程登录访问
    要在CentOS上开启远程登录访问,您需要按照以下步骤操作: 安装SSH服务器:首先确保您的CentOS服务器上已安装了SSH服务...
    99+
    2024-04-02
  • PLSQLDeveloper登录远程连接Oracle的操作
    远程连接oracle 只用PLSQLDeveloper客户端,不配置tnsnames.ora文件 在PL/SQL中填写: 1.UserName:用户名,如hr 2.Password:...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作