解决报错:ERR unknown command ‘HRANDFIELD‘,SpringBoot中Redis操作Hash类型值时报错(windows环境下的Redis)。

阅读: 评论:0

解决报错:ERR unknown command ‘HRANDFIELD‘,SpringBoot中Redis操作Hash类型值时报错(windows环境下的Redis)。

解决报错:ERR unknown command ‘HRANDFIELD‘,SpringBoot中Redis操作Hash类型值时报错(windows环境下的Redis)。

目录

概述 

探索

解决


 

概述 

记录一下在SpringBoot中使用Redis出现的一个BUG。

报错回溯:我在将Map类型的值存储在redis中时没问题,当我使用方法randomEntry(),或 randomEntries() 读取redis中值时就会报错:RedisCommandExecutionException: ERR unknown command 'HRANDFIELD' 

 使用的代码: 

如果你也出现了一样的报错,那我猜测你的redis服务开启在了windows环境下。 

探索

 首先声明:我是将Redis服务跑在了windows环境(测试环境)。 

报错信息: "ERR unknown command 'HRANDFIELD'"。

错误表明 Redis 实例不支持 HRANDFIELD 命令

HRANDFIELD Redis 6.2.0 版本引入的新命令,用于在 Redis 哈希中随机获取字段和值。

那这样大概率就是Redis版本的问题了,从版本问题入手。

我检查了一下我的Redis版本,低的可怜,版本只有3.0.5,既然HRANDFIELD是Redis 6.2.0发布的,那么我就想着去找找高版本的吧。

但是,看到Redis官网我忽然清醒,Redis官网并没有去维护提供windows的版本。

起初有微软在维护windows版本的Redis

但是在2016年7月1日微软就停止了更新维护,版本最新为3.0.504。

我还是没放弃,还是想在windows环境下进行测试。

所以又找到了一个还在更新维护Redis的Windows版本的团队。

直到2022年2月还在更新,版本更新到了5.0.14

5.0.14版本还是没达到Redis 6.2.0 ,但是我还是试了一下,确实不行。

解决

 提问newBing:  

 

结论:由于目前windows没有6.2.0及以上的Redis版本。

所以只能在linux环境下载6.2.0或更高版本的Redis进行测试使用,就能解决ERR unknown command 'HRANDFIELD' 报错(已测试可用)。

没办法,最后还是使用了linux服务器开了Redis服务测试使用。 

 

下面附上下载和配置Redis远程连接方法:

下载:Redis官网下载

 下载好后:

1.将Redis安装包上传到Linux自定义目录(/usr/local/)。


2.解压安装包,命令: tar -zxvf redis-7.0. 

 

3.安装Redis的依赖环境gcc,命令:yuminstall gcc-c++

 

4.进入/usr/local/redis-7.0.12,进行编译,命令: make

 

5.进入redis的src目录,进行安装,命令: make install

 

6.在src目录下就会有redis-serverredis-cli

开启redis远程连接配置

修改根路径下的配置文件:

 修改3处

1.注释: #bind 127.0.0.1   (让所有ip可访问)

 

2.protected-mode no    (改为no)

 

3.daemonize yes (改为yes)

 

(2和3不要直接加,在文件中找找修改,不然可能会被覆盖导致修改失败)

注意:记得开启服务器的6379端口,重启防火墙。

 然后指定配置文件启动Redis服务,完毕。

到达redis-server的目录,执行:

nohup ./redis-server ../f

  

 

本文发布于:2024-01-29 10:08:49,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170649413414542.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:报错   时报   类型   操作   环境
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23