1. 程式人生 > 資料庫 >Redis設定密碼兩種方法,臨時性與永久性

Redis設定密碼兩種方法,臨時性與永久性

設定密碼有兩種方式。

1. 命令列設定密碼。

執行cmd切換到redis根目錄,先啟動服務端

redis-server.exe

另開一個cmd切換到redis根目錄,啟動客戶端

redis-cli.exe -h 127.0.0.1 -p 6379

客戶端使用config get requirepass命令檢視密碼

config get requirepass
1)"requirepass"
2)""    //預設空

客戶端使用config set requirepass yourpassword命令設定密碼

config set requirepass 123456
OK

一旦設定密碼,必須先驗證通過密碼,否則所有操作不可用

config get requirepass
(error)NOAUTH Authentication required

使用auth password驗證密碼

auth 123456
OK
config get requirepass
1)"requirepass"
2)"123456"

也可以退出重新登入

redis-cli.exe -h 127.0.0.1 -p 6379 -a 123456

注:命令列設定的密碼在服務重啟後失效,所以一般不使用這種方式。

2. 配置檔案設定密碼

在redis根目錄下找到redis.windows.conf配置檔案,搜尋requirepass,找到註釋密碼行,新增密碼如下:

# requirepass foobared
requirepass tenny     //注意,行前不能有空格

重啟服務後,客戶端重新登入後發現

config get requirepass
1)"requirepass"
2)""

密碼還是空?

網上查詢後的辦法:建立redis-server.exe 的快捷方式, 右鍵快捷方式屬性,在目標後面增加redis.windows.conf, 這裡就是關鍵,你雖然修改了.conf檔案,但是exe卻沒有使用這個conf,所以我們需要手動指定一下exe按照修改後的conf執行,就OK了。

所以,這裡我再一次重啟redis服務(指定配置檔案)

redis-server.exe redis.windows.conf

客戶端再重新登入,OK了。

redis-cli.exe -h 127.0.0.1 -p 6379 -a 123456
config get requirepass
1)"requirepass"
2)"123456"

redis目錄下有兩個配置檔案redis.windows.conf和redis.windows-server.conf,看到網上有的人用前者有的人用後者,不清楚到底該用哪一個。看了下兩個檔案又沒啥區別,個人就用前者了。