使用的是Windows服务器,通过Redis的exe文件安装好Redis服务后,修改文件redis.windows-service.conf来设置登录密码,然后再重启启动Redis服务,发现不成功,查看日志有如下报错:
syslog-ident = redis
Invalid argument during startup: unknown conf file parameter : requirepass
添加密码只是把
# requirepass foobared
换成了
requirepass 12345678
好像都正确但还是报错日志,说找不到有效参数requirepass,这就奇怪了,如果你修改的是端口的话很可能报的就是:
syslog-ident = redis
Invalid argument during startup: unknown conf file parameter : port
配置文件明明就有值,新手会一脸懵,老司机看到这里就已经猜到为什么了。
更多内容,请先点击下方的捐赠按钮吧。
报错根因排查清单
配置文件里明明有 requirepass 却报 unknown parameter,几乎都是"行内容看着正常、字节层面不正常"造成的,Windows 平台尤其常见。
- 行首混入了全角空格或不可见字符,肉眼难辨,删除该行重新手工输入;
- 用记事本编辑保存时带入了格式问题,改用 VS Code 等编辑器以 UTF-8 无 BOM 保存;
- 确认修改的是服务实际加载的配置文件:Windows 服务方式安装的 Redis,注册表里记录了启动参数指定的 conf 路径;
- requirepass 与密码之间用半角空格分隔,不要加引号、行尾不要有中文逗号;
- 改完用命令行启动方式先验证一次配置,再注册回服务。
💰 此内容为付费阅读 请先登录