为了防止mysql数据库导入导出数据出现筹码,我们一般会先对数据库进行字符编码集设置,希望此方法对大家所有帮助。
解决方法:
开始-->运行-->cmd -->进入dos命令窗体:(如果命令无法执行,请将mysql的安装路径放到系统变量path的最前面)
1. 数据库表中字段的字符集设置 。show create table TableName 或 show full columns from tableName。
mysql> show create table t1;
+——-+————————————
| Table | Create Table
+——-+————————————
| t1 | CREATE TABLE `t1` (
`id` int(11) NOT NULL,
`c1` varchar(30) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=gbk |
+——-+————————————
1 row in set (0.00 sec)
mysql> show full columns from t1;
+——-+————-+—————-+——+—–+-
| Field | Type | Collation | Null | Key |
+——-+————-+—————-+——+—–+-
| id | int(11) | NULL | NO | PRI |
| c1 | varchar(30) | gbk_chinese_ci | YES | |
+——-+————-+—————-+——+—–+-
2 rows in set (0.00 sec)
mysql>
2. 当前联接系统参数 show variables like ‘char%’
mysql> show variables like ‘char%’;
+————————–+—————-
| Variable_name | Value
+————————–+—————-
| character_set_client | gbk
| character_set_connection | gbk
| character_set_database | latin1
| character_set_filesystem | binary
| character_set_results | gbk
| character_set_server | latin1
| character_set_system | utf8
| character_sets_dir | C:Program File
+————————–+—————-
8 rows in set (0.00 sec)
mysql>
1. 中文,请确保 表中该字段的字符集为中文兼容:
big5 | Big5 Traditional Chinese
gb2312 | GB2312 Simplified Chinese
gbk | GBK Simplified Chinese
utf8 | UTF-8 Unicode
mysql导出命令:
1.mysqldump -hlocalhost -P3306 -uroot -p123456 --default-character-set=gb2312 mysql>F:/pushingdb.sql
mysql导入命令:
1.mysql -uroot -p123456 --default-character-set=gb2312 test<F:/pushingdb.sql
注:root表示数据库用户名,123456表示数据库密码,mysql表示数据库名称,F:/pushingdb.sql表示导出到本地的位置;
如果直接修改mysql修改字符集,我们只要在命令就是使用mysql的命令
mysql> SET character_set_client = utf8 ;
mysql> SET character_set_connection = utf8 ;
发表于2017-04-10 21:55 0楼
mysql数据库导入最好还是把数据备份文件上传到服务器本身,然后从本地导入,远程导入会出现导入ASCII错误提示,我自己的网站就被坑过,从本地导入就OK