Redis出现中文乱码的问题及解决

 更新时间:2025年06月27日 17:11:54   作者:yuhuofei2021  
这篇文章主要介绍了Redis出现中文乱码的问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

今天测试一个小功能,用redis做了个缓存,然后启动redis客户端进行查询,发现得不到想要的中文结果。

网上查找相关的解决方案,却没有一个能完整解决问题的,最后自己一步一个脚印解决了。

1. 问题的产生

(1)将接口返回数据写入redis,设置key为“data”

在这里插入图片描述

(2)找到redis安装目录中的redis-server.exe,双击启动

在这里插入图片描述

(3)在redis-server.exe这个文件的这一层地址栏,输入cmd,打开控制台,然后输入redis-cli并回车,接着PING一下连通性,可以看到客户端是没有问题的

在这里插入图片描述

(4)根据缓存的key,输入查询语句get data,查询一下缓存数据。可以看到,能查到数据,但是没有想要的中文出现。

在这里插入图片描述

2. 问题的解决

很明显,前面出现的问题,并不是中文乱码问题(因为连中文的痕迹都没有看到),而是数据的进制问题。

redis数据进制问题的解决

要解决数据进制问题,只需要在前面的(3)中,将redis-cli改为redis-cli --raw输入进去即可,这也是很多网上的解决方案,我们可以看下这么解决的结果。

在这里插入图片描述

好,解决了一个数据进制问题,真正出现了我们所说的中文乱码问题。这个问题实际上不属于Redis的问题,而是编码问题。这也是为什么搜Redis中文乱码问题,总得不到解决方案的原因。

中文乱码问题解决

这个问题是因为写java文件时用的是UTF-8的编码格式,而Windows控制台对于中文,是GBK的编码格式,两者不一致导致。

查看java文件编码格式

在这里插入图片描述

右键Windows控制台—>属性,查看编码格式

在这里插入图片描述

乱码问题,只要保持两者编码格式一致,该问题便可迎刃而解。

还是从前面的(3)入手,cmd打开控制台后,先输入chcp 65001,修改控制台的编码格式为UTF-8,然后再输入redis-cli --raw,后面正常查询,就能得到想要的中文结果了。

  • 修改编码格式

在这里插入图片描述

在这里插入图片描述

输入redis-cli --raw,并做后面的查询

在这里插入图片描述

总结

Redis中文乱码问题的解决:

(1)先通过chcp 65001命令修改控制台的编码格式

(2)再通过redis-cli --raw命令解决数据进制问题,最后再做查询就能得到正常的结果。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • redis3.2配置文件redis.conf详细说明

    redis3.2配置文件redis.conf详细说明

    redis3.2配置详解,Redis启动的时候,可以指定配置文件,详细说明请看本文说明
    2018-03-03
  • Redis Cluster原理及配置详解

    Redis Cluster原理及配置详解

    这篇文章主要为大家介绍了Redis Cluster原理及配置详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-11-11
  • redis多级缓存的用法及说明

    redis多级缓存的用法及说明

    文章介绍了多级缓存的实现原理、搭建环境、JVM进程缓存、Lua语法入门、实现多级缓存、缓存同步策略、安装Canal和监听Canal通知消息等内容
    2026-03-03
  • 浅谈Redis分布式锁的正确实现方式

    浅谈Redis分布式锁的正确实现方式

    这篇文章主要介绍了浅谈Redis分布式锁的正确实现方式,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-05-05
  • Redis中ZSet数据结构与滑动窗口应用实现

    Redis中ZSet数据结构与滑动窗口应用实现

    Redis ZSET融合哈希表与跳跃表,支持O(1)成员查询和O(logN)排序,适用于排行榜及滑动时间窗口限流,下面就来介绍一下Redis中ZSet数据结构与滑动窗口应用,感兴趣的可以了解一下
    2025-07-07
  • redis 主从哨兵模式实现一主二从

    redis 主从哨兵模式实现一主二从

    本文主要介绍了redis 主从哨兵模式实现一主二从,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07
  • 基于Redis实现API接口访问次数限制

    基于Redis实现API接口访问次数限制

    日常开发中会有一个常见的需求,需要限制接口在单位时间内的访问次数,比如说某个免费的接口限制单个IP一分钟内只能访问5次,该怎么实现呢,本文小编给大家介绍了如何基于Redis实现API接口访问次数限制,需要的朋友可以参考下
    2024-11-11
  • 详解redis分布式锁的这些坑

    详解redis分布式锁的这些坑

    在很多互联网产品应用中,有些场景需要加锁处理,比如:秒杀,全局递增ID等等。大部分的解决方案是基于DB实现的,Redis为单进程单线程模式,采用队列模式将并发访问变成串行访问,且多客户端对Redis的连接并不存在竞争关系。
    2021-05-05
  • Redis HyperLogLog用户统计功能实现代码

    Redis HyperLogLog用户统计功能实现代码

    本文详细解析了UV(独立访客)统计在互联网产品运营中的的重要性,并对比了传统UV统计方案与HyperLogLog算法的优势,HyperLogLogLog在内存占用、写入性能与统计精度方面表现出色,感兴趣的朋友跟随小编一起看看吧
    2026-06-06
  • linux 常见的标识与Redis数据库详解

    linux 常见的标识与Redis数据库详解

    这篇文章主要介绍了linux 常见的标识与Redis数据库,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10

最新评论