老鹰之歌的学习笔记

一个人应养成信赖自己的习惯, 即使在最危急的时候, 也要相信自己的勇敢与毅力. ---Napoleon...

Mysql导入大SQL问题

mysql在通过导入sql文件可能会出现下面二个问题:
 
1.如果sql文件过大,会出现"MySQL server has gone away"问题;
 
2.如果sql文件数据有中文,会出现乱码  www.2cto.com  
 
解决问题:
 
问题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  www.2cto.com  
             windows中修改my.ini文件,在linux中修改my.cnf文件.
             C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.5\my.ini(安装mysql时的,指定的数据文件目录)
             

 
       重启命令在WIN下是:
   net stop mysql
   net start mysql
重启mysql后,在查看修改后的max_allowed_packet值
             

 
问题2:登录时指定字符集编码
            mysql -uroot -P3308 -p123456  - -default-character-set=utf8  (-P是指指定端口号)
            
         
最后通过source命令 即可成功导入:
              source  E:ydj\test.sql
 
             
阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/black_OX/article/details/17126173
上一篇git提交项目时候,忽略一些文件
下一篇Mysql几种索引类型的区别及适用情况
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭