mysql编码转换工具_mysql编码转换搞定

按照下面做法,终于成功了!庆祝,纪念......

背景:某个系统的mysql数据库dnname采用默认的latin1字符集,系统升级需要将所有数据转换成utf-8格式,目标数据库为newdbname(建库时使用utf8)

方法一:

步骤一 命令行执行:mysqldump --opt -hlocalhost -uroot -p*** --default-character-set=lantin1 dbname > /usr/local/dbname.sql

步骤二将 dbname.sql文件中的create table语句的CHARSET=latin1改为CHARSET=utf8

步骤三在dbname.sql文件中的insert语句之前加一条'set names utf8;'

步骤四将dbname.sql转码为utf-8格式,建议使用UltraEditor,可以直接使用该编辑器的'转换->ASCII到UTF-8(Unicode编辑)',或者将文件另存为UTF-8(无BOM)格式

步骤五命令行执行:mysql -hlocalhost -uroot -p*** --default-character-set=utf8 new_dbname < /usr/local/dbname.sql

总结:这种方法有个致命之处就是当数据中有大量中文字符和其他特殊符号字符时,很有可能导致在[步骤五]时报错导致无法正常导入数据,如果数据库比较大可以分别对每张表执行上述步骤

方法二(推荐大家使用):

为了解决第一种方法中总结时说到的问题,在网上苦苦查找了一天资料才东拼西凑的搞出一个比较稳妥的解决方法

步骤一将待导出的数据表的表结构导出(可以用Phpmyadmin、mysqldump等,很简单就不说了),然后将导出的create table语句的CHARSET=latin1改为CHARSET=utf8,在目标库newdbname中执行该create table语句把表结构建好,接下来开始导出-导入数据。命令:

4f1150b881333f12a311ae9ef34da474.png./mysqldump-d DB_Dig>/usr/local/tmp/tables.sql

步骤二 命令行:进入mysql命令行下,mysql -hlocalhost -uroot -p*** dbname

步骤三执行SQL select * from tbname into outfile '/usr/local/tbname.sql';

步骤四 将tbname.sql转码为utf-8格式,建议使用UltraEditor,可以直接使用该编辑器的'转换->ASCII到UTF-8(Unicode编辑)',或者将文件另存为UTF-8(无BOM)格式

步骤五 在mysql命令行下执行语句 set character_set_database=utf8;  注:设置mysql的环境变量,这样mysql在下一步读取sql文件时将以utf8的形式去解释该文件内容

步骤六 在mysql命令行下执行语句 load data infile 'tbname.sql' into table newdbname.tbname;

注意:千万不要忘了第四步

采用第二种方法,所有数据均正常导入,且格式转换成功没有乱码。

参考:http://blog.csdn.net/guoguo1980/archive/2008/01/28/2070701.aspx

--------------------

WE准高手

posted on 2008-06-11 16:54 大卫 阅读(8851) 评论(8)  编辑  收藏 所属分类: 数据库

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/529011.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

es6去除重复项_Excel的去除重复项你真的明白原理吗?浅尝去除重复项的函数奥秘...

Excel函数学习&#xff1a;悟空百问の009&#xff1a;去除重复项的深入思考我们经常整理一些数据&#xff0c;数据不可以动原数据&#xff0c;又需要进行数据分析处理&#xff0c;整理&#xff0c;数据汇总&#xff0c;如何快速的找到这些重复的值&#xff0c;这成了我们很头疼…

unit类型是什么?_面试官虚晃一枪:项目中有用过锁吗?能解释一下什么是AQS?...

1 前言锁是用来控制多个线程访问共享资源的方式&#xff0c;一般来说&#xff0c;一个锁能防止多个线程同时访问共享资源(但是有些锁可以允许多个线程并发的访问共享资源&#xff0c;如读写锁)。在以前&#xff0c;Java程序是靠synchronized来实现锁功能的&#xff0c;而在Java…

浏览器里面看到的表单数据映射到python_python爬虫入门01:教你在 Chrome 浏览器轻松抓包...

通过python爬虫入门&#xff1a;什么是爬虫&#xff0c;怎么玩爬虫&#xff1f;我们知道了什么是爬虫也知道了爬虫的具体流程那么在我们要对某个网站进行爬取的时候要对其数据进行分析就要知道应该怎么请求就要知道获取的数据是什么样的所以我们要学会怎么抓咪咪&#xff01;哦…

c#二叉树 取叶子节点个数_两种类似但是原理不同的算法求二叉树的所有叶子节点和...

技术提高是一个循序渐进的过程&#xff0c;所以我讲的leetcode算法题从最简单的level开始写的&#xff0c;然后到中级难度&#xff0c;最后到hard难度全部完。目前我选择C语言&#xff0c;Python和Java作为实现语言&#xff0c;因为这三种语言还是比较典型的。由于篇幅和精力有…

所有的service报红但不报错_从一个应用报错来看centos系统的/tmp目录自动清理规则...

概述分享最近应用碰到的一个奇怪bug&#xff0c;一开始以为是代码上的问题&#xff0c;找了一段时间发现居然是因为系统的一个自动清理规则导致&#xff0c;下面一起来看看吧~一、应用报错&#xff1a;logwire.core.exceptions.GeneralUnhandledException: 服务端未处理异常...…

springboot中接口实例化_AngularJs中控制器的定义,实例化,作用域范围

AngularJs中控制器的定义&#xff0c;实例化&#xff0c;作用域范围基于AngularJS入门与进阶(江荣波 著)这本书的笔记AngularJS 1.x的demoAngularJS1.x和Angular2,4,5是不一样的两个东西&#xff0c;构建方式&#xff0c;语法&#xff0c;都很多不同AngularJs控制器定义与实例化…

高斯核函数参数确定_高斯过程

之前看过高斯过程(GP)&#xff0c;不过当时也没太看懂&#xff0c;最近花时间认真研究了一下&#xff0c;感觉总算是明白咋回事了&#xff0c;本文基于回归问题解释GP模型的思想和方法。文中的想法是自己思考总结得来&#xff0c;并不一定准确&#xff0c;也可能存在错误性。为…

uniapp光标自动定义到文本框_特检自动化行吊静力检测方案

主要测量功能使用徕卡测量开发的Windows版数据传输软件&#xff0c;通过蓝牙连接徕卡DISTO&#xff0c;经过简单的测量周期设置&#xff0c;即可实现自动化的距离检测。测量数据还可以输出Excel&#xff0c;甚至可以实时发送至PC运行的第三方软件中&#xff0c;这么强大的软件还…

安装python时需要勾选_一体化污水处理设备安装时需要注意事项

一体化污水处理设备用于处理生活污水和低浓度有机污水&#xff0c;它基本上采用机电完全封闭的结构&#xff0c;不需要专业人员进行管理。它方便且易于清洁&#xff0c;因此引起了很多关注。一体化污水处理设备的安装方法通常为三种&#xff1a;地埋式&#xff0c;地上式和半地…

oracle驱动maven报错_在Maven仓库中添加Oracle JDBC驱动

由于Oracle授权问题&#xff0c;Maven3不提供Oracle JDBC driver&#xff0c;为了在Maven项目中应用Oracle JDBC driver,必须手动添加到本地仓库。一.首先要得到Oracle JDBC Driver2.通过Oracle的安装目录获得&#xff0c;位置在“{ORACLE_HOME}jdbclibojdbc14.jar”二.手动安装…

python3.6程序_python3.6如何生成exe程序

PyInstaller的原理简介PyInstaller其实就是把python解析器和你自己的脚本打包成一个可执行的文件&#xff0c;和编译成真正的机器码完全是两回事&#xff0c;所以千万不要指望成打包成一个可执行文件会提高运行效率&#xff0c;相反可能会降低运行效率&#xff0c;好处就是在运…

java切片_ java中一个极其强悍的新特性Stream详解(非常实用)

java8中有两个非常有名的改进&#xff0c;一个是Lambda表达式&#xff0c;一个是Stream。如果我们了解过函数式编程的话&#xff0c;都知道Stream真正把函数式编程的风格引入到了java中。这篇文章由简入繁逐步介绍Stream。一、Stream是什么从名字来看&#xff0c;Stream就是一个…

java获取网络图片_有了这50套Java毕设项目(源码 案例),offer拿到手软,无偿分享...

简介:又到了开学季&#xff0c;不少人都很是烦恼&#xff0c;手把手教你做Java毕设项目&#xff0c;有教程视频源码100套随意选择&#xff0c;试试手&#xff01;&#xff01;列举其中2个系统大纲在线考试系统1&#xff0e;综述网络考试系统的项目背景及国内外发展现状&#xf…

linux将日期和日历信息追加到文件中_Linux常用指令

常用指令 1、帮助指令 man [指令或者配置文件] help 指令 2、文件目录类指令 1、pwd 功能:显示当前工作目录的绝对路径 2、ls [选项] [目录或者文件] 功能:列出文件名和目录使用:ls -l 以列表的形式显示信息ls -a …

一个搜索框多个按钮_网站搜索栏设计指南:要不要?怎么设计?

在网站的设计过程中&#xff0c;搜索栏是一个很容易被忽略的部分&#xff0c;但用户却依赖它来寻找特定的信息。由于搜索栏是网站中最常用的元素之一&#xff0c;所以搜索栏的设计对用户体验有着重要的影响。网站是否需要搜索栏&#xff1f;搜索栏使用背后的思维和心理是帮助用…

状态机设计的一般步骤_浅谈状态机

来源&#xff1a;公众号【ZYNQ】ID &#xff1a;FreeZynq整理 &#xff1a;李肖遥本文目录前言状态机简介状态机分类Mealy 型状态机Moore 型状态机状态机描述一段式状态机二段式状态机三段式状态机状态机优缺点总结扩展-四段式状态机01. 前言状态机是FPGA设计中一种非常重要、…

java中default_Java 中关于default 访问权限的讨论

Java中关于成员变量访问权限问题一般书中会给出如下表格&#xff1a;简单地描述一下表中的内容&#xff1a;用private 修饰的成员变量只能在类内部访问&#xff1b;用default修饰的成员变量可以再内部访问&#xff0c;也可以被同个包(同一目录)中的类访问&#xff1b;default修…

java 输出当月日历_java 实现打印当前月份的日历

实现当前日历的打印&#xff0c;当前日期用*来表示。关键得出这个月的第一天是星期几。基姆拉尔森计算公式W (d2*m3*(m1)/5yy/4-y/100y/400) mod 7在公式中d表示日期中的日数1&#xff0c;m表示月份数。y表示年数。注意1&#xff1a;在公式中有个与其它公式不同的地方&#xff…

xmlhttprequest 跨域_跨域资源共享(CORS)安全性

跨域资源共享(CORS)安全性背景 提起浏览器的同源策略&#xff0c;大家都很熟悉。不同域的客户端脚本不能读写对方的资源。但是实践中有一些场景需要跨域的读写&#xff0c;所以出现了一些hack的方式来跨域。比如在同域内做一个代理&#xff0c;JSON-P等。但这些方式都存在缺陷&…

java 图片识别 tess4j_图像文字识别(四):java调用tess4j识别图像文字

转自&#xff1a;https://blog.csdn.net/a745233700/article/details/80203340javajava调用tess4j识别图像文字Tesseract-OCR支持中文识别&#xff0c;而且开源和提供全套的训练工具&#xff0c;是快速低成本开发的首选。前面记录过在java中调用tesseract-orc&#xff0c;该方法…