溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何解決redis的NOAUTH Authentication required異常

發(fā)布時(shí)間:2020-08-27 04:25:42 來(lái)源:腳本之家 閱讀:249 作者:珍惜時(shí)間簡(jiǎn)單生活 欄目:編程語(yǔ)言

前言

最近學(xué)習(xí)中需要使用redis,于是在window上安裝了一個(gè)redis(其實(shí)是我搞不好虛擬機(jī)和本地連接,于是放棄了虛擬機(jī)安裝redis)。一開始使用還很正常,也沒(méi)有設(shè)置密碼,按照網(wǎng)上所說(shuō)的啟動(dòng)服務(wù),然后打開可視化工具RedisDesktopManager,連接上了,在java中使用也正常。但是第二天的重啟電腦的時(shí)候,運(yùn)行java連接程序卻在怎么也連不上。顯示

NOAUTH Authentication required

需要密碼認(rèn)證的異常。

到網(wǎng)上查了一下有人說(shuō)是配置文件中的requiredpassword沒(méi)有注釋掉,我去看了一下,已經(jīng)注釋了,覺(jué)得應(yīng)該不是這個(gè)問(wèn)題。
下面就是我的解決辦法了:

方法一:使用密碼

首先我在可視化工具里面加上密碼,比如root,其他的跟之前連接都沒(méi)有什么區(qū)別,然后竟然就連接上了,雖然有點(diǎn)摸不到頭腦,但是確實(shí)解決了。
然后剩下就是如何在java中也加入這個(gè),大概代碼是這樣的,

JedisShardInfo shardInfo = new JedisShardInfo("redis://localhost:6379/9");//這里是連接的本地地址和端口
    shardInfo.setPassword("root");//這里是密碼
    Jedis jedis = new Jedis(shardInfo);
    jedis.connect();

然后就連接上了,java這邊也能正常使用。

方法二:不使用密碼(推薦)

當(dāng)然還有不設(shè)密碼的方式。這就需要去配置文件中去看requiredpassword,是否被注釋,如果沒(méi)有,就把他注釋了。

然后重點(diǎn)來(lái)了,如果只是簡(jiǎn)單的在redis的目錄中啟動(dòng)服務(wù)redis-server.exe是不夠的,因?yàn)檫@樣啟動(dòng)并不會(huì)指定配置文件(這里是win的情況, linux的情況不清楚)。所以我們需要先關(guān)閉redis服務(wù),然后在cmd進(jìn)入redis的解壓目錄中重啟服務(wù),并且指定配置文件。命令是這樣的:

redis-server.exe redis.windows.conf

如果你想使用密碼,首先在配置文件中將requiredpassword的注釋刪去,然后在requiredpassword處寫上自己的密碼,最后需要在cmd中重啟服務(wù),并且一定要指定配置文件,否則你在配置文件所修改的配置并不會(huì)生效。

希望能幫到大家。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI