亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Redis本地/遠程(外部)連接失敗問題及解決

 更新時間:2025年03月14日 09:56:12   作者:Stephen·You  
這篇文章主要介紹了Redis本地/遠程(外部)連接失敗問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

問題現(xiàn)象

今天在 192.168.2.220(windows服務器)上安裝并啟動了一個 Redis服務,如下:

點擊 redis-server.exe:

啟動成功:

然后在192.168.2.101(本地) 連接 192.168.2.220 Redis服務,出現(xiàn)報錯,如下:

隨后,啟動本地的java項目,配置 Redis,如下:

然后訪問需要使用到 Redis服務 的接口,出現(xiàn)如下報錯:

問題分析

1.報錯信息

根據(jù)報錯信息可知,大概意思就是說:

Redis連接 是以 “protected” 模式mode),該模式具有以下的特點:沒有綁定可具體的ip地址,訪問cli工具不需要認證密碼,該模式下只支持“loopback”(回環(huán))接口的調(diào)用。

//注:回環(huán)的意思大概就是說,只能在配置了redis的機器上訪問redis連接,而不允許外部ip連接。

如果你想要連接該redis服務,你需要采用以下其中一種解決方法:

方案1.2.3:前三種的意思幾乎一致,都是說讓你去修改該 Redis的配置 ,讓Redis以“protected-mode no”的配置來啟動。

方案4:修改該 Redis的配置,讓Redis綁定一個ip地址或一個認證密碼。

2.知識點分析

2.1Redis 的配置文件的區(qū)別

可以看到有兩個配置文件:

那該使用哪個呢?那就來說說 redis.windows.confredis.windows-service.conf 的區(qū)別:

查閱網(wǎng)上資料發(fā)現(xiàn),網(wǎng)上流傳著這樣的說法:“當redis安裝后,就會在系統(tǒng)服務中出現(xiàn)一個名為Redis的服務,通過點擊啟動來啟動Redis”

通過 win+r 中,輸入 compmgmt.msc ,打開管理工具點擊服務,可以找到redis服務,然后看見類似下圖:

通過這個圖片可以看到,這個名為Redis的系統(tǒng)服務,默認是使用了 “redis.windows-service.conf ” 這個配置文件來啟動的。

奇怪的是我看了一下卻沒有Redis這個系統(tǒng)服務。。。。。。好吧,有可能是Redis的版本的問題:

問題不大,因為我們其實完全就沒必要把redis變成一個系統(tǒng)服務,從而實現(xiàn)開機自啟動(后臺);我覺得想用的時候,直接點擊 redis-server.exe 啟動 不香么???

現(xiàn)在要思考的問題其實是:當我們點擊 redis-server.exe 啟動 Redis 時,會不會也是使用了 “redis.windows-service.conf ” 這個配置文件來啟動的呢?

我猜想:redis-server.exe 啟動 Redis 時是使用“redis.windows.conf ”這個配置文件來啟動的,否則,這個文件就沒有存在的意義了。

搜了很久,沒有在網(wǎng)上找到對應的資料,于是就自己來實驗一下吧?。。。。。?/p>

2.2Redis 的 bind 配置

首先我們打開 redis.windows-service.conf,可以看見默認綁定了127.0.0.1(本地ip地址)

redis 中的 bind 配置作用就是:

  • 配置該redis連接 的 固定ip,配置完之后,就只有它綁定的那這個 ip 能訪問到該redis連接;其他ip就不能。
  • 而由于 redis 默認綁定了 127.0.0.1 ,也就是只有 127.0.0.1 所映射的(192.168.2.220)這個ip能訪問該 redis,其他ip就不能;
  • 因此這個配置會阻礙外部(192.168.2.101)對該 redis的訪問。

2.3Redis 的 protected-mode 配置

“redis.windows-service.conf ” 文件中,可以找到如下配置:

通過查看注解,我們可以知道:

  • 該配置是默認啟動(enabled)的;
  • 如果你想讓其他主機(ip)連接該redis,則必須設置該配置為不可用的(disable),即使你不配置認證密碼,也沒有 通過 bind 配置綁定外部ip地址
  • 由此可知:該配置就是用于限制外部ip訪問的,且要和 bind 配置一起使用。

心得

從上面的知識點可知,要解決問題,就需要對 redis的配置文件中的 bind 和 protected-mode 配置進行修改。

配置步驟

步驟1打開 “redis.windows-service.conf ” 文件,為Redis綁定一個ip地址

//注:我們一般都不需要在訪問redis時使用到認證密碼,所以沒有要求的話,可以不配置

把該bing 配置(bind 127.0.0.1)注釋掉,這樣就能讓所有ip都能訪問到這個redis,修改如下:

步驟2打開 “redis.windows-service.conf ” 文件,修改Redis的 protected-mode 配置

下拉,找到 protected-mode 配置,修改為如下:

然后把原來的redis服務關閉,再點擊redis-server.exe 啟動。

然后再在本地(192.168.2.101)連接 192.168.2.220 Redis服務,出現(xiàn)如下報錯:

再調(diào)用接口試試,發(fā)現(xiàn)還是報錯:

好了,接下來就是驗證實驗的時刻了

1. 關閉redis窗口,將“redis.windows-service.conf ” 還原成初始狀態(tài);

2. 將以上步驟應用到 “redis.windows.conf” 這個配置文件上;

3. 點擊 redis-server.exe 啟動;

發(fā)現(xiàn)還是會報同樣的錯誤,那就不知道是為什么了。。。尷尬

于是,我又把“redis.windows.conf” 和 “redis.windows-service.conf ” 兩個配置文件都做了修改,然后再點擊 redis-server.exe 啟動,結果還是不行;

這樣就不好說問題出在哪里,但是能確定的是:這兩個配置文件的修改都沒有生效?。。。。?!

必殺技

自己寫個啟動腳本(redis-start.bat),配置redis的啟動命令并指定了配置文件,來啟動redis,終于可以了:

雙擊 “redis-start.bat” 文件

啟動成功:

接口調(diào)用成功:

注意:這里不要指定 “redis.windows-service.conf ” 配置文件,否則會出現(xiàn)以下情況:

雖然啟動了,但是一片黑暗,啥信息都看不到,由此似乎可以證明了我的猜想:

redis-server.exe 啟動 Redis 時是使用“redis.windows.conf ”這個配置文件來啟動的

因為,redis-server.exe 啟動 Redis 時,是有信息可以看見的,所以說

“redis.windows-service.conf ” 這個配置文件,應該是用來將Redis配置成一個windows系統(tǒng)服務而存在的?。?!

總之,最靠譜的方法,還是用腳本啟動!??!

解決方法

1. 打開 “redis.windows???????” 文件,把該bing 配置(bind 127.0.0.1)注釋掉

2. 修改Redis的 protected-mode 配置 protected-mode no ,如下:

3. 創(chuàng)建啟動腳本文件(redis-start.bat),寫入啟動命令并指定配置文件:

4. 雙擊 “redis-start.bat” 文件啟動:

5. 訪問接口成功:

總結

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • redis限流的實際應用

    redis限流的實際應用

    這篇文章主要介紹了redis限流的實際應用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-04-04
  • Redis遍歷海量數(shù)據(jù)集的幾種實現(xiàn)方法

    Redis遍歷海量數(shù)據(jù)集的幾種實現(xiàn)方法

    Redis作為一個高性能的鍵值存儲數(shù)據(jù)庫,廣泛應用于各種場景,包括緩存、消息隊列、排行榜,本文主要介紹了Redis遍歷海量數(shù)據(jù)集的幾種實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學習學習吧
    2024-02-02
  • dubbo服務使用redis注冊中心的系列異常解決

    dubbo服務使用redis注冊中心的系列異常解決

    這篇文章主要為大家介紹了dubbo服務在使用redis注冊中心遇到的一系列異常的解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2022-03-03
  • Redis IP地址的綁定的實現(xiàn)

    Redis IP地址的綁定的實現(xiàn)

    這篇文章主要介紹了Redis IP地址的綁定的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-05-05
  • Redis實現(xiàn)分布式事務的示例

    Redis實現(xiàn)分布式事務的示例

    Redis雖不支持傳統(tǒng)SQL數(shù)據(jù)庫ACID特性的事務,但提供了事務特性,允許多命令捆綁執(zhí)行,通過命令MULTI、EXEC、DISCARD、WATCH實現(xiàn),感興趣的可以了解一下
    2024-10-10
  • Redis+攔截器實現(xiàn)接口防刷

    Redis+攔截器實現(xiàn)接口防刷

    接口防刷有很多種實現(xiàn)思路,例如:攔截器/AOP+Redis、攔截器/AOP+本地緩存、前端限制等等很多種實現(xiàn)思路,本文主要來講一下?攔截器+Redis?的實現(xiàn)方式,需要的可以參考下
    2023-08-08
  • 詳解redis中的下載和安裝(最新推薦)

    詳解redis中的下載和安裝(最新推薦)

    本文詳細介紹了如何在Linux和Docker上安裝、配置、啟動和關閉Redis,包括下載安裝包、解壓、編譯安裝、配置文件修改、前臺和后臺啟動、關閉以及Docker容器化部署等步驟,感興趣的朋友一起看看吧
    2025-03-03
  • 在Redis數(shù)據(jù)庫中實現(xiàn)分布式速率限制的方法

    在Redis數(shù)據(jù)庫中實現(xiàn)分布式速率限制的方法

    這篇文章主要介紹了在Redis數(shù)據(jù)庫中實現(xiàn)分布式速率限制的方法,文中展示了一個用Python編寫的應用示例,需要的朋友可以參考下
    2015-06-06
  • Redis高并發(fā)場景下秒殺超賣解決方案(秒殺場景)

    Redis高并發(fā)場景下秒殺超賣解決方案(秒殺場景)

    早起的12306購票,剛被開發(fā)出來使用的時候,12306會經(jīng)常出現(xiàn)超賣 這種現(xiàn)象,也就是說車票只剩10張了,卻被20個人買到了,這種現(xiàn)象就是超賣,今天通過本文給大家介紹Redis高并發(fā)場景下秒殺超賣解決方案,感興趣的朋友一起看看吧
    2022-04-04
  • Redis+threading實現(xiàn)多線程消息隊列的使用示例

    Redis+threading實現(xiàn)多線程消息隊列的使用示例

    Redis多線程消息隊列是一種使用Redis作為存儲后端的消息隊列實現(xiàn),它利用Redis的線程并發(fā)處理能力來提高消息隊列的處理效率,本文主要介紹了Redis+threading實現(xiàn)多線程消息隊列的使用示例,感興趣的可以了解一下
    2023-12-12

最新評論