【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文件报错解决问题 ...
随机推荐
- python模块导入(包)
模块 关注公众号"轻松学编程"了解更多. 1.1. 模块的概述 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里的代码就会越来越长,越来越不容易维护. 为了编写可维 ...
- P1098 字符串的展开
P1098 字符串的展开 刷新三观的模拟题 题意描述 太长了自己去看吧. 算法分析 模拟题分析你*呀! 写这篇题解的唯一原因是:三目运算符用的好的话,可以让百行大模拟变成30行水题. 代码实现 #in ...
- 在一个递增数组的rotate变换中找target
Search in Rotated Sorted Array Suppose an array sorted in ascending order is rotated at some pivot u ...
- linux文本模式和文本替换功能
linux文本有:正常模式,编辑模式,可视化模式,命令模式. 正常模式进入编辑模式下的快捷键: i --光标当前位置输入 a --光标位置后输入(append) I --行首输入 A --行尾输入 ...
- HotSpot源码分析之C++对象的内存布局
HotSpot采用了OOP-Klass模型来描述Java类和对象.OOP(Ordinary Object Pointer)指的是普通对象指针,而Klass用来描述对象的具体类型.为了更好理解这个模型, ...
- eclipse 和 myeclipse 字符编码设置
需要设置的几处地方为: Window->Preferences->General ->Content Type 所有 Default encoding 设置为UTF-8 Window ...
- Python_字符串_方法
#字典#把字符串中的字母提取出来改为大写并计数 a="aAsmr3idd4bgs7Dlsf9eAF" b1=[x for x in a if x.isalpha()] b=''.j ...
- C# 简易的串口监视上位机实现
实现上位机和下位机之间的通信,通常使用的是串口通信,接下来实现一个通过上位机和串口调试助手来完成串口通信测试. 首先创建一个WInfrom窗体应用工程文件,创建过程可参考https://www.cnb ...
- mysql之数据库备份
1.可视化工具Navicat for mysql进行操作数据库备份 (1)备份数据库 (2)将备份的数据库进行加载
- [web安全原理分析]-SSRF漏洞入门
SSRF漏洞 SSRF漏洞 SSRF意为服务端请求伪造(Server-Side Request Forge).攻击者利用SSRF漏洞通过服务器发起伪造请求,就这样可以访问内网的数据,进行内网信息探测或 ...