redis设置密码
·
项目启动时,出现了报错信息:ERR Client sent AUTH, but no password is set
原因:Redis服务器没有设置密码,但客户端向其发送了AUTH(authentication,身份验证)请求携带着密码,导致报错。
一 命令行方式 设置密码
# 使用redis-cli连接上redis
redis-cli
# 查看是否设置了密码
auth 123456
(error) ERR Client sent AUTH, but no password is set
# 报错说明没有设置密码
# 设置密码
config set requirepass root
OK
# 返回OK后即代表配置成功
# 验证设置的密码
AUTH 123456
Ok
# 配置成功
这种方式存在一个问题:当我们将Redis服务器关掉之后,这些配置就会失效,下次再启动服务器,需要重新设置
二 配置文件方式 设置密码
修改配置文件里的参数。
在redis.windows.conf或者redis.conf的配置文件中找到requirepass参数,设置参数密码,然后保存配置文件,重启Redis
# requirepass foobared
requirepass 123456 #设置的密码
实际过程中,配置不生效,已经配置了密码,但是还会报错,后来在Redis启动时发现,Redis报错了:
Warning: no config file specified, using the default config.
In order to specify a config file use C:\Program Files (x86)\Redis-x64-3.2.100\redis-server.exe
/path/to/redis.conf
Redis启动时需要指定配置文件,否则还会使用默认配置
指定配置文件启动
redis-server.exe redis.windows.conf
关闭
./redis-cli -a root shutdown
两种修改方式区别:
- 修改配置文件设置的密码永久生效;使用命令设置的密码临时生效,重启后失效
- 修改配置文件设置的密码,需要重启生效;使用命令设置的密码,退出后再登录生效,重启后失效
- 命令的优先级高于配置文件的优先级
更多推荐

所有评论(0)