在开发过程当中会常常用到mysql导出导入中文表,本文将详细介绍其如何使用,须要的朋友能够参考下
1、先针对utf8导出:
(1)导出源数据库的全部表:mysql
mysqldump -u root -p密码 --socket=mysql.sock --default-character-set=utf8 --set-charset=utf8 --hex-blob --databases 数据库名 > utf8.sql
(2)修改sql文件,删除文件头中包含的建立数据库的命令
(3)登陆目标数据库
mysql -uroot -p密码 --default-character-set=utf8 --socket=mysql.sock -A
注意:必需要指定字符集登陆,并且,指定的字符集要和导出时指定的字符集相一致
(4)删除数据库(若是有的话)
drop database 数据库名;
(5)建立数据库并保存为utf8存储格式,并导入 sql
create database 数据库名 charset=utf8; use 数据库名; source utf8.sql;
这块导入后,中文表可能有乱码。因此,要用下面的方法,导入中文表。数据库
2、导出导入中文表:socket
#导出 mysqldump -u root -p密码 --socket=mysql.sock --default-character-set=gbk --set-charset=gbk --hex-blob 数据库名 表名1 表名2 …… > gbk.sql #导入(导入表时,若是表已经存在,会先删除再导入,因此,不用事先删除已经存在的表) mysql -uroot -p密码 --default-character-set=gbk --socket=mysql.sock -A <<EOF use 数据库名; source gbk.sql EOF