Mysql导入大容量SQL文件数据问题

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%';
显示的结果为:

说明目前的配置是: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是指指定端口号)
posted @ 2015-06-24 09:46  残星  阅读(1106)  评论(0编辑  收藏  举报