Mysql导入大容量SQL文件数据问题
2016-05-06 15:49
225 查看
MySQL在通过导入sql文件可能会出现下面二个问题:
1.如果sql文件过大,会出现"MySQL server has gone away"问题;
2.如果sql文件数据有中文,会出现乱码
解决问题:
问题1:出现MySQL server has gone away"问题,是因为mysql默认的"max_allowed_packet"变量值过小.
查看目前配置
show VARIABLES like '%max_allowed_packet%';
显示的结果为:
+--------------------+---------+
| Variable_name | Value |
+--------------------+---------+
| max_allowed_packet | 1048576 |
+--------------------+---------+
说明目前的配置是:1048576/1024/1024 = 1M
修改max_allowed_packet值:
方法1: SET GLOBAL max_allowed_packet = 500*1024*1024;(经测试无效)
方法2: 直接修改配置文件,重启mysql
windows中修改my.ini文件,在linux中修改my.cnf文件.
C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.5\my.ini(安装mysql时的,指定的数据文件目录)
重启mysql后,在查看修改后的max_allowed_packet值
问题2:登录时指定字符集编码
mysql -uroot -P3308 -p123456 - -default-character-set=utf8 (-P是指指定端口号)
最后通过source命令 即可成功导入:
source E:ydj\test.sql
1.如果sql文件过大,会出现"MySQL server has gone away"问题;
2.如果sql文件数据有中文,会出现乱码
解决问题:
问题1:出现MySQL server has gone away"问题,是因为mysql默认的"max_allowed_packet"变量值过小.
查看目前配置
show VARIABLES like '%max_allowed_packet%';
显示的结果为:
+--------------------+---------+
| Variable_name | Value |
+--------------------+---------+
| max_allowed_packet | 1048576 |
+--------------------+---------+
说明目前的配置是:1048576/1024/1024 = 1M
修改max_allowed_packet值:
方法1: SET GLOBAL max_allowed_packet = 500*1024*1024;(经测试无效)
方法2: 直接修改配置文件,重启mysql
windows中修改my.ini文件,在linux中修改my.cnf文件.
C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.5\my.ini(安装mysql时的,指定的数据文件目录)
重启mysql后,在查看修改后的max_allowed_packet值
问题2:登录时指定字符集编码
mysql -uroot -P3308 -p123456 - -default-character-set=utf8 (-P是指指定端口号)
最后通过source命令 即可成功导入:
source E:ydj\test.sql
相关文章推荐
- mysql source导入多个sql文件和较大文件及在线互转
- MySql避免重复插入记录方法
- mysqldump对数据库进行备份导入
- MySQL多表查询
- MYSQL必知必会读书笔记 第十四章 使用子查询
- mysql 中 character set 与 collation
- MYSQL 查询表列数
- Mysql学习笔记1
- MySQL查看数据库、表的占用空间大小
- MYSQL必知必会读书笔记 第十二和十三章 分组数据
- windows版mysql配置--my.ini
- mysql更改最大打開文件數
- Ubuntu下mysql的安装以及简单的命令操作
- MySQL 子查询 EXISTS 和 NOT EXISTS
- MYSQL show engine等实用 command
- /usr/bin/ld: cannot find -lmysqlclient
- mysqldb模块
- MySQL学习4:Windows 64位操作系统下使用MySQL
- ubuntu安装mysql
- mysql建表属性不能为关键字