Redis如何把字符集的编码格式设置为UTF-8

一、问题复现(编码错乱)

刚安装好的redis在使用的过程中,若使用到了汉字,则在显示的时候,汉字是不能够正常显示的,因为redis在解析的过程中,会将汉字转换成其他编码的格式,如下图:

二、Redis支持哪些类型的编码?

Redis是一款开源的内存数据库,它可以用来存储字符串、哈希、列表、集合和有序集合等类型的键值对数据,支持灵活的多种字符集,从而丰富用户体验。

Redis支持的字符集包括US-ASCII、ISO⑻859⑴、UTF⑻、GBK等多种全球性字符集。US-ASCII字符集,也称为7位ASCII码,是最经常使用的字符集,其中的128个可打印的字符,在大多数英语语言中正确表示文本文件内容,Redis采取US-ASCII字符集存储和操作String类型的数据,以最大程度减少存储空间。

ISO⑻859⑴则是一种多国语言字符集,由基础的128个ASCII码组合而成,能够支持多国语言,Redis通过ISO⑻859⑴字符集来存储区别的多国语言,例如日语、法语和西班牙语等,从而提升国际化的编码效果和兼容性。

UTF⑻是目前最经常使用的Unicode字符集,由ISO 1756⑴:2018规范,它采取可变长度的编码对象,最多使用4个字节编码,这使得UTF⑻可以表示几近任意语言的字符,Redis使用UTF⑻字符集,处理中文字符内容,具有及时性,轻松上线和可扩大性,是目前行业上普遍推荐使用的字符集方案。

GBK字符集是由国家标准总局定义和部署的简体中文编码,Redis也支持使用,用来满足国内用户的使用需求,如果希望针对国内用户,使用Redis存储文本信息,可以斟酌使用GBK字符集,以提供较好的用户体验。

三、怎么通过设置,才能达到显示中文

3.1、临时设置

Redis 默认的编码格式是 ascii,如果需要在命令行中临时配置 Redis 的编码格式为 UTF-8,可以使用以下命令:

```

redis-cli --raw

```

其中,`--raw` 参数表示以二进制格式读取 Redis 的键值对,这样在输出时就不会使用 Redis 默认的编码格式,而是直接输出二进制值(即 UTF-8 编码的字符串)。

3.2、永久设置

查看当前redis启动的进程号

  • Windows系统:打开命令提示符(cmd)并输入tasklist | findstr redis-server,按Enter键运行该命令,将显示所有包含"redis-server"关键字的进程信息。

  • Linux/Mac系统:在终端中输入ps aux | grep redis-server,然后按Enter键运行该命令,将会列出所有与Redis相关的进程及其对应的PID(Process ID)。

关闭redis的服务之后,去到redis的配置文件中将字符集设置为utf-8并写入redis配置文件,可以在redis配置文件(redis.conf)中添加如下行:

这里居然没实现,有时间再看看

相关推荐
君不见,青丝成雪25 分钟前
Hadoop技术栈(四)HIVE常用函数汇总
大数据·数据库·数据仓库·hive·sql
不羁。。6 小时前
【撸靶笔记】第七关:GET - Dump into outfile - String
数据库·笔记·oracle
yangchanghua1117 小时前
pgsql 如何查询今天范围内的数据(当天0点0分0秒 - 当天23点59分59秒....)
数据库·pgsql
larance7 小时前
SQLAlchemy 的异步操作来批量保存对象列表
数据库·python
python_chai7 小时前
从数据汇总到高级分析,SQL 查询进阶实战(下篇)—— 分组、子查询与窗口函数全攻略
数据库·sql·mysql
在努力的前端小白7 小时前
Spring Boot 敏感词过滤组件实现:基于DFA算法的高效敏感词检测与替换
java·数据库·spring boot·文本处理·敏感词过滤·dfa算法·组件开发
未来之窗软件服务8 小时前
自建知识库,向量数据库 (九)之 量化前奏分词服务——仙盟创梦IDE
数据库·仙盟创梦ide·东方仙盟·自建ai·ai分词
冒泡的肥皂11 小时前
MVCC初学demo(一
数据库·后端·mysql
.Shu.12 小时前
Redis Reactor 模型详解【基本架构、事件循环机制、结合源码详细追踪读写请求从客户端连接到命令执行的完整流程】
数据库·redis·架构
卡拉叽里呱啦13 小时前
缓存-变更事件捕捉、更新策略、本地缓存和热key问题
分布式·后端·缓存