如何在MySQL中导入超大的sql文件?

     小伙伴们在开发过程中,有时候会遇到新环境数据迁移问题,需要把之前的数据库导入到新环境,其中一种方式就是通过导入sql文件。我们可以在客户端sqlyog或者navicat中直接导入(此种方式比较慢),也可以通过source命令导入(速度会比较快)。

      但是,如果我们的sql文件过大,比如超过了1G,导入过程可能会遇到一些问题,比如“Out of memory”(内存不足)或者“mysql server has gone away”(一般是操作sql文件时间过长,导致超时,client端和mysql server端连接断开),辛苦导入半天看到这个错误,小伙伴们此时内心或许会各种xx了!

      此处给小伙伴们分享一下解决此问题的一个解决方案:

      1.找到mysql的配置文件,在linux上是my.conf,在windows叫my.ini

       2.修改配置文件中的max_allowed_packet(每次最大接收数据包的大小),默认为1K,此处改为1G即1024M。

          max_allowed_packet=1024M

       3.使用mysql -uroot -p密码,进入mysql,然后输入命令查看参数是否更改:

     show VARIABLES like '%max_allowed_packet%';

如何在MySQL中导入超大的sql文件?_第1张图片

    4.重启mysql服务

    5.使用命令mysql -uroot -p密码,重新登录mysql,然后使用命令use 数据库名,选择对应的数据库

    6.使用命令source 文件路径 即可开始导入sql文件,慢慢等待吧!

 

 

 

 

 

 

 

你可能感兴趣的:(如何在MySQL中导入超大的sql文件?)