如何将Linux上部署的5.7MySql数据库编码修改utf8(最新版)

如何将Linux(服务器)上部署的5.7MySql数据库编码修改utf8(最新版)


前言 `提示:这里可以添加本文要记录的大概内容:`

今天笔者在将Springboot与vue前后端分离项目部署在服务器上成功后,却发现在服务器的MySql数据库编码出现了问题,即不能存储中文数据,后来查数据库的编码方式(show variables like 'character%';)才发现第3行和第6行出现了问题,编码为latin1而不是utf8,如下图,


一、解决办法

注意事项:以下需要修改的文件均是只可读文件,若需要修改,则需要修改自己权限(sudo)或者以root身份修改

步骤1

首先找到my.cnf文件(路径为/etc/mysql/my.cnf)

步骤2(此处为问题描述吐槽,可以直接跳过该步骤到步骤三)

笔者找遍了其他博客都说是在/etc/mysql/my.cnf匹配文件中新添加字段,但是发现自己的my.cnf文件中却空空如也,没有他们所说的[client],[mysqld]字段。

别人的my.cnf配置文件

自己的my.cnf配置文件


步骤3

首先找到conf.d文件(路径为/etc/mysql/mysql.conf.d)

启动vim编辑conf.d文件,在如图的1号箭头,2号箭头,3号箭头所指代码

配置代码为:

bash 复制代码
character-set-server=utf8

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

步骤4

首先找到mysql.cnf文件(路径为/etc/mysql/conf.d/mysql.cnf)

然后启动vim编辑mysql.cnf文件即可,加入配置信息

配置信息

bash 复制代码
default-character-set=utf8

步骤5

重启mysql即可

bash 复制代码
service mysql restart
或者
service mysqld restart

二、结果

最后可以发现数据库的编码方式已该成utf8,可以成功储存中文字段

相关推荐
倔强的石头_1 天前
kingbase备份与恢复实战(二)—— sys_dump库级逻辑备份与恢复(Windows详细步骤)
数据库
chlk1231 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑1 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件1 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
深紫色的三北六号2 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash2 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
jiayou642 天前
KingbaseES 实战:深度解析数据库对象访问权限管理
数据库
哈基咪怎么可能是AI2 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
于眠牧北2 天前
MySQL的锁类型,表锁,行锁,MVCC中所使用的临键锁
mysql
十日十行3 天前
Linux和window共享文件夹
linux