已有数据表的Mysql字符编码修改
Mysql字符集修改应该如何实现呢?下面就为您详细介绍已用数据表的Mysql字符集修改方法,希望对您学习Mysql字符集方面能有所启迪。
环境:在应用开始阶段没有正确的设置字符集,在运行一段时间以后才发现存在不能满足需求需要调整,又不想丢弃这段时间的数据,那么就需要进行字符集的修改。字符集的修改不能直接通过”alter database character set *** ” 或者 “alter table tablename character set *** “命令进行,这两个命令都没有更新已有记录的字符集,而只是对新创建的表或者记录生效。
那么已有记录的字符集调整,需要怎么操作呢?
以下模拟的是将latin1字符集的数据库修改成GBK字符集的数据库的过程:
(1) 导出表结构
mysqldump -uroot -p –default-character-set=gbk -d databasesename > createdb.sql
其中–default-character-set=gbk表示设置以什么字符集连接,-d表示只导出表结构,不导出数据
(2) 手工修改createdb.sql中表结构定义中的字符集为新的字符集
(3) 确保记录不再更新,导出所有记录
mysqldump -uroot -p –quick –no-create-info –extended-insert –default-character-set=latin1 databasename > data.sql
–quick:该选项用于转储大的表。它强制Mysqldump从服务器一次一行的检索表中的行,而不是检索所有的行,兵输出前将它缓存在内存中
–extended-insert:使用包括几个values列表的多行Insert语法,这样使转储文件更小,重载文件更快
–no-create-info:不屑重新创建每个转储表的create table语句
–default-character-set=latin1:按照原有的字符集导出所有数据,这样导出的文件中,所有中文都是可见的,不会保存成乱码
(4) 打开data.sql,将SET NAMES latin1 修改成SET NAMES gbk
(5) 使用新的字符集创建新的数据库
create database newdatabasename default charset gbk;
(6) 创建表,执行createdb.sql
mysql -uroot -p newdatabasesname < createdb.sql
(7) 导入数据,执行data.sql
mysql -uroot -p newdatabasename < data.sql
转载于:https://www.cnblogs.com/clyskyblue/p/3572452.html
已有数据表的Mysql字符编码修改相关推荐
- 修改数据库mysql字符编码为UTF8
修改数据库mysql字符编码为UTF8 Mysql数据库是一个开源的数据库,应用非常广泛.以下是修改mysql数据库的字符编码的操作过程.步骤1:查看当前的字符编码方法 mysql> show ...
- mysql 字符编码查询
mysql 字符编码查询 1.查询所有表的编码 SELECT TABLE_NAME,TABLE_COLLATION FROM information_schema.TABLES 2.查询数据库的编码 ...
- myeclipse连接mysql生成数据表时中文字符乱码或问号(解决方法)
myeclipse连接mysql生成数据表时中文字符乱码或问号(解决方法) 参考文章: (1)myeclipse连接mysql生成数据表时中文字符乱码或问号(解决方法) (2)https://www. ...
- mysql创建数据表列子,MySQL 创建数据库及简单增删改查
MySQL 创建数据库及简单增删改查 我们可以在登陆 MySQL 服务后,使用 create 命令创建数据库,语法如下: CREATE DATABASE 数据库名; 登入: Enter passwor ...
- 修复mysql编码错乱的数据_关于MySQL数据库编码修复相关问题
本篇主要是本人在实际开发过程中遇到的MySQL字符编码等bug修复相关问题. 在使用下列语句在执行数据库表通过flask-sqlacodegen 进行ORM映射成模型类的时候发生的bug: flask ...
- oracle中修改多个字段默认值_利用VBA代码在已有的数据表中删除、添加、修改字段...
大家好,今日继续给大家讲解VBA数据库解决方案的第21讲,如何利用VBA代码在已有的数据表中删除,添加,修改字段.这个内容是操作数据库的一项必修的内容,还望大家在实际工作中多利用,所以这节的知识,对于 ...
- 修改mysql字符编码出现Job failed to start解决办法
修改mysql字符编码出现Job failed to start解决办法 在python mange.py shell下填充MySQL数据库的时候,发现汉字不能输入. 于是要修改一下MySQL数据库编 ...
- php 删除mysql 返回_php 返回mysql字符编码与删除字符编码
php 返回mysql字符编码与删除字符编码 function Ebak_GetSetChar($char){ global $empire; if(empty($char)) { return '' ...
- excel导入mysql命令行_使用命令行将Excel数据表导入Mysql中的方法小结
从Excel数据表导入MySQL,已经做过好几次了,但每次都会碰到各种问题:invalid utf8 character string, data too long, ...,浪费了不少时间 为了提高 ...
最新文章
- .gitignore文件如何编写?
- 【248】◀▶IEW-Unit13
- [ios] 微信订阅号: ios博文精选
- ListView添加项目带序列
- 关于表单回车自动提交的讨论
- Angular Route数据结构里常用字段使用方法一览
- jpa获取session_JPA 2 | 获取联接以及我们是否应该使用它们
- 201521145048《Java程序设计管理》第一周学习总结
- java切面获取异常日志_spring aop 配置切面,记录系统异常存入log日志
- Java虚拟机(五)——程序计数器
- 02-linux安装nodejs
- cmake错误:Could not find a package configuration file provided by 的一种解决方法
- 您的 App 包含 NSUserTrackingUsageDescription,这表示您将会请求追踪用户。要在
- python语言在ansys的应用_Python语言在ANSYS的应用10讲-掌握SCDM脚本封装及ACT向导开发...
- 爬虫与反爬虫,永恒的道高一尺魔高一丈
- 杰理之微信语音前2S声音小修改【篇】
- 房价基本上决定于货币政策.----看中国货币发行量增长
- 数据结构查找-7-3 词频统计 (30 分)
- 进一步的飞鸽传书官方网站消息
- 红旗linux如何硬盘安装教程,红旗Linux硬盘安装攻略
热门文章
- dataGridView1.DataSource多增加列,数据不进自己规定的列?
- js 判断 ““,null,undefined
- 怎么在Java里辨别小数_求教java中如何判断一个数是不是小数,求详细代码及解释...
- 充值后的充值金额提交到账户金额中
- java 去系统运行时间,JAVA WEB获取系统运行时间
- android 服务设置在哪里,如何在Android中为我的服务设置“控制面板”?
- linux磁盘空间回收,linux磁盘空间满了后怎么去判定哪个地方占了多大的空间并回收...
- pg库和mysql的优缺点_MySQL与PostgreSQL的实际性能比较
- c语言黑色星期五公式,求黑色星期五问题~
- mysql自动备份 linux_Linux下MySQL数据库自动定时备份