【MySQL篇】Navicat导入SQL文件报错终极解决方案
面对大数据库文件(一般50M以上),使用Navicat导入的时候容易出现[ERR]2006等报错问题,此文提供了几种办法,包括修改MySQL的配置参数在网上也有很多详细教程介绍过,但此文精彩处在于前面几种都不行的情况下,通过修改Navicat配置参数,来完成数据库大文件的导入!!!---【suy】
一、不勾选“每个运行中运行多重查询”
第一建议尝试的方法,可快速检验。

(一)成功->那就恭喜你了!!!下面的没你事了
(二)继续报错
常见下面三种情况报错,那就继续尝试”第二、第三“的几种方法!
1)显示部分成功,有部分数据
2)显示部分成功,无数据(实际没有导入)
3)显示全部出错,无数据

二、修改MySQL配置
(一)“my.ini”配置文件修改
找到MySQL安装目录下的my.ini配置文件,查找修改max_allowed_packet参数,再增加wait_timeout、interactive_timeout两项参数,详细如下。
1、修改max_allowed_packet参数、增加两项参数
max_allowed_packet:用来控制其通信缓冲区的最大长度。是mysql允许最大的数据包(默认大小4M),遇到大的数据库文件导入时经常报错;
wait_timeout:# 服务器关闭非交互连接之前等待活动的秒数;
interactive_timeout:服务器关闭交互式连接前等待活动的秒数;
两个值可自定义,但如果设置时间太短,容易超时后出现MySQL server has gone away [ERR]2006错误;
(注意:需要同时设置wait_timeout和interactive_timeout才会生效;如果报“too many connections”的错误,可以对这两个参数进行适当调小些。)
max_allowed_packet=2000M
wait_timeout=2880000
interactive_timeout = 2880000

2、修改支持中文字符集编码
检查是否是中文编码不支持的原因,客户端默认的字符集default-character-set参数不支持中文,可以设置成gbk或utf8来支持中文。

修改对应的编码
default-character-set=utf8
character-set-server=utf8
*注意:每次修改参数后,必须重新启动MySQL服务才会有效。
(二)数据库导入位置不对
需要在“表”上右键导入。这步主要是排查数据库导入位置不对而造成的报错!
(导入图解:【MySQL篇】Navicat导入MySQL数据库图解教程。)
三、修改Navicat的"max_allowed_packet"参数
上面都试了还不行,往往都是Navicat的配置问题。
路径:工具(T)->服务器监控->MySQL->变量->max_allowed_packet;
//英文版:Tools->Server Monitor->MySQL->Variables->max_allowed_packet;

记得先在左侧勾选“当前数据库”,才会显示右侧变量的属性表,再在变量里寻找max_allowed_packet,将其值改大,改为最大值!!!如果超过他的值,会提示并自动设为最大值。

这时候,一般勾选“每个运行中运行多重查询”也能成功导入数据库,如果不行就去掉勾选。

导入成功后,接着在表上右键再刷新下数据库。

总结
纸上得来终觉浅,绝知此事要躬行---陆游。
| 名称 | 时间 |
|---|---|
| 最后编辑日期: | 2020 年 12 月 03 日 |
【MySQL篇】Navicat导入SQL文件报错终极解决方案的更多相关文章
- mysql 导入SQL文件报错
----MySQL导入数据的时候,总是报错,本地测试都没办法测试---- 导出SQL文件正常, 在导入SQL文件的时候, 报错-----大部分数据表导入成功, 个别的失败 在网上看到很多建议: 建议别 ...
- MYSQL 编码方式 ------导入 .sql 文件 报编码错误
在做计量泵上位机时,利用MYSQL存储数据,建表hisruninfo(计量泵历史运行数据表). 表格式为utf8,查过数据库 格式 同样为utf8 导入该hisruninfo.sql文件时,并没有报错 ...
- mysql小知识点汇总---(时间与时间戳的转换, 修改mysql用户名密码, navicate 导入sql文件报错 1153)
1. 时间与时间戳的转换 1.1 时间戳转时间 FROM_UNIXTIME(add_time, '%Y-%m-%d') 1.2 时间转时间戳 UNIX_TIMESTAMP('2015-04-29') ...
- 导入sql文件报错:1071 Specified key was too long; max key length is 767 bytes
ref: https://stackoverflow.com/questions/1814532/1071-specified-key-was-too-long-max-key-length-is-7 ...
- MySQL命令行导入sql文件时出现乱码解决方案
Note: sql> source F:weibo.sql(执行相关sql文件) sql> select * from sina into outfile "/weibo.txt ...
- Navicat运行sql文件报错out of memory
下载并安装mysql workbench:
- Sqoop- sqoop将mysql数据表导入到hive报错
sqoop将mysql数据表导入到hive报错 [root@ip---- lib]# sqoop import --connect jdbc:mysql://54.223.175.12:3308/gx ...
- 导入json文件报错,TypeError expected string or buffer
导入json文件报错,TypeError expected string or buffer 原因:用字符串赋值后,python会把双引号转换为单引号 import json data = [{&qu ...
- 【SQLServer2008】之如何导入mdf,ldf文件、导入.mdf文件报错解决问题以及如何获得Authenticated Users 权限
一.如何导入mdf,ldf文件: 链接:http://jingyan.baidu.com/article/09ea3ede21258cc0afde3943.html 二.导入.mdf文件报错解决问题 ...
随机推荐
- scrapy反反爬虫
反反爬虫相关机制 Some websites implement certain measures to prevent bots from crawling them, with varying d ...
- Python_环境搭建_jupyterNotebook的使用
# @ Author : Collin_PXY # 虚拟环境的创建及Jupyter Notebook的基本使用 # Anaconda 和 Jupter Notebook的使用: # 首先得需要安装 A ...
- JavaScript变量污染
定义过多的全局变量,有可能造成全局变量冲突,这种现象称为变量污染. 全局变量在全局作用域内外都是可见的.若是已经声明了一个全局变量,再以相同的关键字和标识符重新声明全局变量,后者的赋值会替代前者的赋值 ...
- AI时代,还不了解大数据?
如果要问最近几年,IT行业哪个技术方向最火?一定属于ABC,即AI + Big Data + Cloud,也就是人工智能.大数据和云计算. 这几年,随着互联网大潮走向低谷,同时传统企业纷纷进行数字化转 ...
- ubutun 服务器配置jupyter notebook
由于能力有限,学习机器学习时候发现,自己的电脑带不起来,所以想起了服务器,选择的是阿里的ubutun服务器,所以希望能够 使用jupyter notebook,看到网上一大片,配置和好久,才成功,在这 ...
- tcpack--3快速确认模式- ack状态发送&清除
ACK发送状态的转换图 ACK的发送状态清除 当成功发送ACK时,会删除延迟确认定时器,同时清零ACK的发送状态标志icsk->icsk_ack.pending ACK发送事件主要做了:更新快速 ...
- linux绑定盘符
[root@centos6 ~]# udevadm info -q path -n /dev/sdb [root@centos6 ~]# udevadm info -q path -n /dev/sd ...
- Elasticsearch 第八篇:数据类型 Array、Nested、Object 的设计与应用
h2.post_title { background-color: rgba(43, 102, 149, 1); color: rgba(255, 255, 255, 1); font-size: 1 ...
- 转载 数据库优化 - SQL优化
判断问题SQL判断SQL是否有问题时可以通过两个表象进行判断: 系统级别表象CPU消耗严重IO等待严重页面响应时间过长应用的日志出现超时等错误可以使用sar命令,top命令查看当前系统状态. 也可以通 ...
- tp5 上传图片(自定义图片路径)
控制器调用 /** * [goods_addimg 图片上传] * @return [type] [description] */ public function addimg(){ if (requ ...