MySQL字符集的转换

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介:
1.安装mysql软件,我用的是mysql server 6.0版本,安装默认在C:\program files\mysql\mysql server 6.0
2.启动mysql
开始运行(win+R--cmd
切换目录:cd c:\program files\mysql\mysql server 6.0\bin
切换到 mysql 安装目录
C:\Documents and Settings\Administrator>cd c:\program files\mysql\mysql server 6.0\bin
进入 mysql ,用户  root
C:\program files\mysql\mysql server 6.0\bin>mysql –u root -p
3. 显示数据库
Mysql>show databases;
4. 建立数据库 my
Mysql>create database my;
5. 打开数据库 (my)
Mysql>use my
6. 创建数据表 (depts)
Mysql>create table depts(dept_id int(11),name varchar(20),description varchar(255));
7. depts 数据库表插入记录
Mysql>insert into depts values(1,’ 人事部 ’,null),(2,’ 研发部 ’,null),(3,’ 市场部 ’,null),(4,’ 培训部 ’,null);
8. 查询显示插入记录
Mysql>select * from depts;
9. 退出 msyql
Mysql>quit
10. DOS 中进行备份,一下模拟将 latin1 字符集的数据库修改成 GBK 字符集的数据库的过程。
C:\program files\mysql\mysql server 6.0\bin>mysqldump –u root –p my>e:\mylatin1.sql
插入数据显示乱码
1 )导出表结构
C:\program files\mysq\mysql server 6.0\bin>mysqldump –u root –p --default-character-set=gbk –d my>e:\my.slq
其中  --default-character-set=gbk 表示设置以什么字符集连接, -d  表示只导出表结构,不导出数据。
2 )手工修改 my.sql 中表结构定义中的字符集为新的字符集
将字符集 charset=latin1 ,修改为 charset=gbk
(3) 确保记录不再更新,导出所有记录
Mysql>mysqldump –u root –p –quick --no-create-info –extended-insert –default-character-set=latin1 my>e:\mydata.sql
--quick: 该选项用于转储大的表。它强制 mysqldump 从服务器一次一行的检索表中的行而不是检索所有行,并在输出前将它缓存到内存中。
--extended-insert: 使用包括几个 VALLUES 列表的多行 INSSERT 语法。这样使转储文件更小,重载文件时可以加速插入。
--no-create-info: 不写重新创建每个转储表的的 create table 语句。
--default-character-set=latin1: 按照原有的字符集导出所有数据,这样导出的文件中,所有中文都是可见的,不会保存成乱码。
4 )打开 mydata.sql, Dumping data for table ‘depts’ 后面添加 set names ‘gbk’;
点击保存
5 )使用新的字符集创建新的数据库
Mysql>create datebase mygbk2 default charset gbk;
打开数据库 (mygbk2)
Mysql>use mygbk2
(6) 创建表,执行 my.sql
Mysql>source e:\my.sql
C:\program files\mysql\mysql server 6.0\bin>mysql –u root –p mygbk2 < e:\my.sql
(7) 导入数据,执行 mydata.sql
Mysql>source e:\mydata.sql
C:\program files\myslq\mysql server 6.0\bin>mysql –u root –p mygbk2 <e:\mydata.sql
 
C:\program files\mysql\mysql server 6.0\bin>mysqldump –u root –p mygbk2>e:\mygbk2.sql
说明转换成
OK ,说明成功!!









本文转自 chen138 51CTO博客,原文链接:http://blog.51cto.com/chenboqiang/268639,如需转载请自行联系原作者
相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
打赏
0
0
0
0
235
分享
相关文章
【MySQL系列】SQL语句入门(创建删除操作)、字符集和数据类型详解
哈喽,大家好💓,在上一篇博客中,大致讲解了数据库的相关知识,它的作用、定义、分类等等。从本篇博客开始,将详细讲解关系型数据库MySQL的操作与使用,以及SQL语句的讲解。
详解MySQL字符集和Collation
MySQL支持了很多Charset与Collation,并且允许用户在连接、Server、库、表、列、字面量多个层次上进行精细化配置,这有时会让用户眼花缭乱。本文对相关概念、语法、系统变量、影响范围都进行了详细介绍,并且列举了有可能让字符串发生字符集转换的情况,以及来自不同字符集的字符串进行比较等操作时遵循的规则。对于最常用的基于Unicode的字符集,本文介绍了Unicode标准与MySQL中各个字符集的关系,尤其详细介绍了当前版本(8.0.34)默认字符集utf8mb4。
826 81
【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
详解MySQL字符集和Collation
MySQL支持了很多Charset与Collation,并且允许用户在连接、Server、库、表、列、字面量多个层次上进行精细化配置,这有时会让用户眼花缭乱。本文对相关概念、语法、系统变量、影响范围都进行了详细介绍,并且列举了有可能让字符串发生字符集转换的情况,以及来自不同字符集的字符串进行比较等操作时遵循的规则。对于最常用的基于Unicode的字符集,本文介绍了Unicode标准与MySQL中各个字符集的关系,尤其详细介绍了当前版本(8.0.34)默认字符集utf8mb4。
MySQL 8.0 字符集与比较规则介绍
我们都知道 MySQL 8.0 与 MySQL 5.7 的区别之一就是默认字符集从 latin1 改成了 utf8mb4 ,除此之外,MySQL 8.0 下的字符集和比较规则还有没有其他变化呢?本篇文章我们一起来学习下。
541 1
MySQL各字符集、排序规则的由来、用法,区别和联系
MySQL支持多种字符集和排序规则,这些在数据库设计和数据处理中起着重要作用。下面是它们的由来、用法、区别和联系: 1. **字符集(Character Set)**: - **由来**:字符集定义了数据库中可以存储的字符集合,以及这些字符在数据库中的存储方式。 - **用法**:在创建数据库或表时,可以指定所需的字符集。常见的字符集包括UTF-8、UTF-16、Latin1等。 - **区别和联系**:不同的字符集支持不同的字符范围和存储方式,选择合适的字符集可以确保数据的正确存储和处理。例如,UTF-8支持全球范围内的大多数字符,而Latin1只支持西欧语言字符集。
206 1

推荐镜像

更多
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等