Windows下的mysql字符集格式修改

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,内容安全 1000 次 1年
对象存储 OSS,恶意文件检测 1000次 1年
简介: 在Windows上的MySQL 5.7.17,若安装时未设置字符集,可能导致乱码问题。本文提供了解决方案:首先,通过`mysql -uroot -p`登录并使用`show variables like '%char%';`查看当前字符集。然后,有两种修改方法:一是使用Shell命令临时修改9个相关属性为utf8;二是永久修改,在my.ini配置文件中将[mysqld]、[client]、[mysql]下的字符集改为utf8。记得重启MySQL服务以应用更改。此外,还提供了修改数据库和表字符集的SQL命令。

Windows下的mysql字符集格式修改

笔者关于数据库的字符集踩了不少坑,由于安装时没有事先设置字符集,导致后面使用数据库时乱码,好烦。这个修改过程是笔者亲自配置成功的步骤,现在分享给大家,希望可以解决你的问题。

使用管理员运行cmd 或者 PowerShell,笔者这里使用的是Windows PowerShell。数据库版本是5.7.17.

1. 首先查看自己数据库的字符集

1.1 登录mysql

mysql -uroot -p密码

image.png

1.2 查看 MySQL 数据库服务器和数据库字符集

show variables like '%char%';

image.png

这里显示的是各个属性的字符集格式,如gbk,latin1等。

2.修改数据库的字符集(两种方式,推荐使用第二种!)

2.1 【方式一】使用shell命令修改(不会永久生效)

#修改这9种属性即可
 set character_set_client=utf8;
 set character_set_connection=utf8;
 set character_set_database=utf8;
 set character_set_results=utf8;
 set character_set_server=utf8;
 set character_set_system=utf8;
 set collation_connection=utf8;
 set collation_database=utf8;
 set collation_server=utf8;
#客户端、服务器、数据库字符集的命令

image.png

再次查看数据库字符集

show variables like '%char%';

我们可以看到已经修改为 utf8 格式。
image.png

到此已经修改成功。

#退出mysql
exit

image.png

2.2 【方式二】使用配置 my.ini 方式(或者my-default.ini)

2.2.1 首先停止数据库服务

image.png

my.ini在数据库的安装目录中
我的是在 D:\Program Files\mysql-5.7.17-winx64 目录下

最好采用管理员权限打开文件,因为有可能无法保存。

2.2.2 开始配置my.ini (注意如果文件名是my-default.ini,请改为my.ini 切记!!!!!)

配置如下:
分别在文件中找到[mysqld], [mysql] ,[client].把下面的字符集格式改为 utf8

***注意不是utf-8,utf-8不生效!!!***
如果没有[mysql] ,[client]的话自己写上例如[mysql]。
看清楚,不要重复哦。

[mysqld]

字符集

character_set_server=utf8
image.png

[client]

字符集

default-character-set=utf8

image.png
[mysql]

字符集

default-character-set=utf8
image.png

保存!

net start mysql

image.png

需要重新登录mysql

mysql -uroot -p密码
show variables like '%char%';

现在我们可以看到字符集都已经成功永久改成utf8
image.png

按照以上步骤修改,是完全可以成功的永久修改字符集为utf8。

以下是几个常用修改字符集命令:

#修改单个数据库的字符集
 alter database 数据库名 default character set = utf8; 
#创建数据库时设置字符集
create database 数据库名 character set utf8;
#修改单张数据表字符集
alter table 表名 default character set = utf8; 
alter table 表名 convert to character set utf8;
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
5月前
|
关系型数据库 MySQL Linux
CentOS 7系统下详细安装MySQL 5.7的步骤:包括密码配置、字符集配置、远程连接配置
以上就是在CentOS 7系统下安装MySQL 5.7的详细步骤。希望这个指南能帮助你顺利完成安装。
1409 26
|
8月前
|
存储 人工智能 搜索推荐
详解MySQL字符集和Collation
MySQL支持了很多Charset与Collation,并且允许用户在连接、Server、库、表、列、字面量多个层次上进行精细化配置,这有时会让用户眼花缭乱。本文对相关概念、语法、系统变量、影响范围都进行了详细介绍,并且列举了有可能让字符串发生字符集转换的情况,以及来自不同字符集的字符串进行比较等操作时遵循的规则。对于最常用的基于Unicode的字符集,本文介绍了Unicode标准与MySQL中各个字符集的关系,尤其详细介绍了当前版本(8.0.34)默认字符集utf8mb4。
2266 82
|
9月前
|
关系型数据库 MySQL 数据库
【MySQL基础篇】MySQL概述、Windows下载MySQL8.0超详细图文安装教程
在这一章节,主要介绍两个部分,数据库相关概念及MySQL数据库的介绍、下载、安装、启动及连接。接着,详细描述了MySQL 8.0的版本选择与下载,推荐使用社区版(免费)。安装过程包括自定义安装路径、配置环境变量、启动和停止服务、以及客户端连接测试。此外,还提供了在同一台电脑上安装多个MySQL版本的方法及卸载步骤。最后,解释了关系型数据库(RDBMS)的特点,即基于二维表存储数据,使用SQL语言进行操作,格式统一且便于维护。通过具体的结构图展示了MySQL的数据模型,说明了数据库服务器、数据库、表和记录之间的层次关系。
1828 56
【MySQL基础篇】MySQL概述、Windows下载MySQL8.0超详细图文安装教程
|
6月前
|
SQL 关系型数据库 MySQL
【YashanDB知识库】字符集latin1的MySQL中文数据如何迁移到YashanDB
本文探讨了在使用YMP 23.2.1.3迁移MySQL Server字符集为latin1的中文数据至YashanDB时出现乱码的问题。问题根源在于MySQL latin1字符集存放的是实际utf8编码的数据,而YMP尚未支持此类场景。文章提供了两种解决方法:一是通过DBeaver直接迁移表数据;二是将MySQL表数据转换为Insert语句后手动插入YashanDB。同时指出,这两种方法适合单张表迁移,多表迁移可能存在兼容性问题,建议对问题表单独处理。
【YashanDB知识库】字符集latin1的MySQL中文数据如何迁移到YashanDB
|
9月前
|
安全 关系型数据库 MySQL
Windows Server 安装 MySQL 8.0 详细指南
安装 MySQL 需要谨慎,特别注意安全配置和权限管理。根据实际业务需求调整配置,确保数据库的性能和安全。
910 9
|
9月前
|
关系型数据库 MySQL Linux
MySQL数据库下载安装教程(Windows&Linux)
本文档详细介绍了MySQL的安装步骤,包括安装前的准备工作、下载安装包、Windows和Linux系统下的具体安装流程,以及如何配置MySQL服务、设置环境变量、启动服务和连接数据库等关键操作。
|
11月前
|
安全 Windows
windows系统中,通过LOAD到入csv格式的文件到neo4j中,如何写文件路径
windows系统中,通过LOAD到入csv格式的文件到neo4j中,如何写文件路径
173 0
|
11月前
|
关系型数据库 MySQL Linux
Navicat 连接 Windows、Linux系统下的MySQL 各种错误,修改密码。
使用Navicat连接Windows和Linux系统下的MySQL时可能遇到的四种错误及其解决方法,包括错误代码2003、1045和2013,以及如何修改MySQL密码。
1017 0
|
11天前
|
关系型数据库 MySQL 数据库
自建数据库如何迁移至RDS MySQL实例
数据库迁移是一项复杂且耗时的工程,需考虑数据安全、完整性及业务中断影响。使用阿里云数据传输服务DTS,可快速、平滑完成迁移任务,将应用停机时间降至分钟级。您还可通过全量备份自建数据库并恢复至RDS MySQL实例,实现间接迁移上云。
|
3月前
|
人工智能 运维 关系型数据库
数据库运维:mysql 数据库迁移方法-mysqldump
本文介绍了MySQL数据库迁移的方法与技巧,重点探讨了数据量大小对迁移方式的影响。对于10GB以下的小型数据库,推荐使用mysqldump进行逻辑导出和source导入;10GB以上可考虑mydumper与myloader工具;100GB以上则建议物理迁移。文中还提供了统计数据库及表空间大小的SQL语句,并讲解了如何使用mysqldump导出存储过程、函数和数据结构。通过结合实际应用场景选择合适的工具与方法,可实现高效的数据迁移。
672 1

推荐镜像

更多