mysql导入大sql文件

之前一直都是在线转移数据,或者直接考data目录,也有干过多个sql文件导入。最近接了个兼职,发了个sql文件,两百多兆。

phpmyadmin最多是只支持2m的,在网上看到一种方法,修改UploadDir参数
比如说修改:
$cfg['UploadDir'] = 'import';
然后在phpmyadmin根目录下新建import目录,然后把sql文件放进去。这个时候phpmyadmin导入的时候,就会多一个选项,从服务器选取,试了下,两百多兆的还是不行,几十兆的还是可以的。

navcat也试了下,也是会超时。

想想就只剩下命令行了。
G:\xampp\mysql\bin>
mysql -uroot -p123456 ds160_com_new < E:\weishenhuo\20151108\sql\sql.sql
屡屡报错,都想砸电脑了。网上看了下,指定了下编码
mysql -uroot -p123456 --default-character-set=utf8 ds160_com_new < E:\weishenhuo\20151108\sql\sql.sql
正常,导到一大半还是报错,mysql超时。

Mysql> show variables like “%timeout%”;
interactive_timeout,wait_timeout
发现这些值都设置的蛮大的,28800(即默认的8个小时),没道理超时啊。

检查my.ini
max_allowed_packet=1M
改为 400M
max_allowed_packet=400M
再次测试,已经可以全部导入成功了。

网上还有人加下面这句:
skip-name-resolve
--skip-name-resolve选项启动mysqld来禁用DNS主机名查找。然而,在这种情况下,你只可以使用MySQL中的授权表中的IP号,会加快数据的连接响应速度。

source应该也可以了,此时。

更多请点击:http://www.webyang.net/Html/web/article_186.html

相关推荐