当前位置: 首页 > news >正文

逐梦DBA:MySQL的编码设置

一、MySQL的编码设置

1.1 默认插入中文数据存在的问题

1.1.1 在 MySQL5.7 版本,默认在安装成功后存在中文乱码的问题

1. 通过 show create table xxx查看可以发现默认的字符集:

2. show variables like 'character_%';查看编码命令发现默认为拉丁

如果我们没有显示指定库或表使用的字符集,则使用默认的字符集

3. show variables like 'collation_%';查看比较规则(数据的比较相关)

1.1.2 在 MySQL8.0版本中,则不存在字符串SQL乱码问题

MySQL 8.0 开始,数据库的默认编码改为utf8mb4 ,从而避免了上述的乱码问题。

1. 我们依旧通过 show create table xxx查看可以发现默认的字符集:

2. show variables like 'character_%';查看编码命令发现默认为UTF8格式

3. show variables like 'collation_%';查看比较规则(数据的比较相关)

1.2 字符集修改

1. 找到 MySQL的数据存储下的 my.ini 文件,添加下面的内容

[mysqld] # 大概在63行左右,在其下添加
...
default-character-set=utf8 #默认字符集

[mysqld] # 大概在76行左右,在其下添加
...
character-set-server=utf8
collation-server=utf8_general_ci

注意:建议修改配置文件使用notepad++等高级文本编辑器,使用记事本等软件打开修改后可能会导致文件编码修改为“含BOM头”的编码,从而服务重启失败。

2. 重启 MySQL 服务

通过“服务”中找到MySQL服务进行重新启动:

3. 重新启动服务后,查看编码命令

show variables like 'character_%';

show variables like 'collation_%';

4. 此时编码修改成功后,由于之前的数据库依旧使用的是拉丁的编码方式。我们可以删除该数据库后重新创建,即为修改后的字符集。

http://www.dtcms.com/a/53990.html

相关文章:

  • PWM子系统芯片驱动源码pwm-tegra.c分析
  • leetcode15 三数之和
  • ruoyi框架接入kkFileView
  • 侯捷 C++ 课程学习笔记:深入理解C++内存管理与类对象构造全过程
  • 【极客时间】浏览器工作原理与实践-2 宏观视角下的浏览器 (6讲) - 2.6 渲染流程(下):HTML、CSS和JavaScript,是如何变成页面的?
  • 第005文-模拟入侵网站实现0元购
  • µCOS-III从入门到精通 第八章(时间片调度)
  • 点云 基于法线的双边滤波原理和过程
  • LeetCode hot 100—二叉树的最大深度
  • 能量石[算法题]
  • YOLOv12 项目部署指南! 含报错解决
  • Flutter底层实现
  • Go学习笔记:基础语法3
  • 【由技及道】镜像星门开启:Harbor镜像推送的量子跃迁艺术【人工智障AI2077的开发日志010】
  • CSS+Html面试题(二)
  • python网络爬虫开发实战之爬虫基础
  • Unity自定义渲染管线(Scriptable Render Pipeline)架构设计与实现指南
  • netty中Future和ChannelHandler
  • Best practice-生产环境中加锁的最佳实践
  • Anaconda 部署 DeepSeek
  • Java 大视界 -- Java 大数据在智能政务公共服务资源优化配置中的应用(118)
  • Linux | Vim 鼠标不能右键粘贴、跨系统复制粘贴
  • 深入解析“Elaborate”——从详细阐述到精心制作的多重含义
  • 绝美焦糖暖色调复古风景画面Lr调色教程,手机滤镜PS+Lightroom预设下载!
  • LLM-初识AI
  • 自律linux 第 35 天
  • 【C++】数据结构 双链表的实现(企业存储用户数据的实现)
  • Windows逆向工程入门之MASM 数据寻址
  • GTID模块初始化简介和参数binlog_gtid_simple_recovery
  • C#数据类型及相互转换