1.通過配置文件進行配置
在自己要啟動的配置redis.conf中找到下面的字符
#requirepass foobared
去掉行前的注釋,並修改密碼為所需的密碼,保存文件
requirepass myRedis
2.重啟redis
sudo service redis restart
#或者 sudo service redis stop sudo redis-server /etc/redis.conf
這個時候嘗試登錄redis,發現可以登上,但是執行具體命令是提示操作不允許
redis-cli -h 127.0.0.1 -p 6379 redis 127.0.0.1:6379> redis 127.0.0.1:6379> keys * (error) ERR operation not permitted redis 127.0.0.1:6379> select 1 (error) ERR operation not permitted redis 127.0.0.1:6379[1]>
嘗試用密碼登錄並執行具體的命令看到可以成功執行
redis-cli -h 127.0.0.1 -p 6379 -a myRedis redis 127.0.0.1:6379> keys * 1) "myset" 2) "mysortset" redis 127.0.0.1:6379> select 1 OK redis 127.0.0.1:6379[1]> config get requirepass 1) "requirepass" 2) "myRedis"
redis 127.0.0.1:6379[1]> config set requirepass my_redis OK redis 127.0.0.1:6379[1]> config get requirepass 1) "requirepass" 2) "my_redis"
3.嘗試重啟一下redis,用新配置的密碼登錄redis執行操作,發現新的密碼失效,redis重新使用了配置文件中的密碼
sudo service redis restart Stopping redis-server: [ OK ] Starting redis-server: [ OK ] redis-cli -h 127.0.0.1 -p 6379 -a my_redis redis 127.0.0.1:6379> config get requirepass (error) ERR operation not permitted redis-cli -h 127.0.0.1 -p 6379 -a myRedis redis 127.0.0.1:6379> config get requirepass 1) "requirepass" 2) "myRedis"
4.除了在登錄時通過 -a 參數制定密碼外,還可以登錄時不指定密碼,而在執行操作前進行認證。
redis-cli -h 127.0.0.1 -p 6379 redis 127.0.0.1:6379> config get requirepass (error) ERR operation not permitted redis 127.0.0.1:6379> auth myRedis OK redis 127.0.0.1:6379> config get requirepass 1) "requirepass" 2) "myRedis"
5.master配置了密碼,slave如何配置
若master配置了密碼則slave也要配置相應的密碼參數否則無法進行正常復制的。
slave中配置文件內找到如下行,移除注釋,修改密碼即可
#masterauth mstpassword