Linux下Redis允許遠端連線的代碼教程,linuxredis

來源:互聯網
上載者:User

Linux下Redis允許遠端連線的代碼教程,linuxredis

Linux安裝好Redis之後,使用Java進行串連,Java代碼如下

package com.wzj.demo.test;import redis.clients.jedis.Jedis;/** * Created by wzj on 2018/3/29. */public class RedisJava{    public static void main(String[] args)    {        //串連本地的 Redis 服務        Jedis jedis = new Jedis("192.168.3.45");        System.out.println("串連成功");        //設定 redis 字串資料        jedis.set("runoobkey", "www.runoob.com");        // 擷取儲存的資料並輸出        System.out.println("redis 儲存的字串為: "+ jedis.get("runoobkey"));    }}

報如下錯誤:

Exception in thread "main" redis.clients.jedis.exceptions.JedisConnectionException: java.net.SocketException: Connection resetat redis.clients.util.RedisInputStream.ensureFill(RedisInputStream.java:202)at redis.clients.util.RedisInputStream.readByte(RedisInputStream.java:40)at redis.clients.jedis.Protocol.process(Protocol.java:151)at redis.clients.jedis.Protocol.read(Protocol.java:215)at redis.clients.jedis.Connection.readProtocolWithCheckingBroken(Connection.java:340)at redis.clients.jedis.Connection.getStatusCodeReply(Connection.java:239)at redis.clients.jedis.Jedis.set(Jedis.java:121)at com.wzj.demo.test.RedisJava.main(RedisJava.java:17)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 com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)Caused by: java.net.SocketException: Connection resetat java.net.SocketInputStream.read(SocketInputStream.java:209)at java.net.SocketInputStream.read(SocketInputStream.java:141)at java.net.SocketInputStream.read(SocketInputStream.java:127)at redis.clients.util.RedisInputStream.ensureFill(RedisInputStream.java:196)... 12 more

使用Telnet?192.168.3.45 6379,發現連接埠是不通的。

通過網上尋找分析,原因是:Redis預設只允許本地串連,不允許其他機器串連,需要進行如下修改:

(1)修改redis.conf 檔案,把bind 127.0.0.1 ::1這一行注釋掉。

(2)修改redis.conf 檔案,protected-mode 要設定成no

(3)啟動的時候,需要指定redis.conf 檔案,執行./src/redis-server redis.conf命令

設定之後,重啟測試,發現Java代碼可以正常串連了。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.