如何将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,可以成功储存中文字段

相关推荐
陌上花开缓缓归以40 分钟前
arm linux ddr 内存布局
linux·arm开发
龙腾-虎跃1 小时前
Linux 趣味实战|纯 Bash Shell 脚本实现俄罗斯方块终端小游戏(完整源码资源)
linux·运维·bash
阳光九叶草LXGZXJ8 小时前
达梦数据库-报错-15-列【XXX】长度超出定义
linux·运维·数据库·sql·学习
奔跑的大白啊8 小时前
多容器共享目录权限踩坑记
linux·ubuntu·共享目录·linux权限·docker 容器化部署
字节渡客9 小时前
Redis键明明过期了,业务还在读到旧数据
数据库·redis·spring
OnlineProxy11 小时前
亚马逊多账号运营:如何在规避“关联封号”风险的同时实现电商规模化扩张
服务器·数据库·redis
Android系统攻城狮11 小时前
Linux Gstreamer深度解析之gst_audio_encoder_set_frame_max调用流程与实战(六十一)
android·linux·运维·音视频·gstreamer音视频·音视频进阶·gstreamer音视频进阶
H.莓飛12 小时前
【C++】命名空间、缺省参数、函数重载与引用
linux·开发语言·c++·visual studio
91刘仁德12 小时前
IP协议详解:从IP协议头到网段划分、路由与NAT
linux·服务器·网络·网络协议·tcp/ip
辻弋20112 小时前
五年前的旅行视频糊成马赛克?Video2X用Real-ESRGAN逐帧重建细节,但只支持Windows、集显用户建议直接放弃
服务器·数据库·windows·游戏引擎·电脑