论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
数据库
›
SqlServer
›
解决:Navicat导入sql脚本时报2006
解决:Navicat导入sql脚本时报2006
一给
金牌会员
|
2024-6-22 12:49:17
|
显示全部楼层
|
阅读模式
楼主
主题
813
|
帖子
813
|
积分
2439
目录
问题复现
缘故原由分析
解决办法
问题小结
1) MySQL 服务宕了
2) mysql连接超时
3) mysql请求链接进程被主动kill
4) Your SQL statement was too large.
问题复现
今天在用Navicat 16.0.6导入.sql文件时,运行一半就报错了。错误如下:
[Err] 2006 - MySQL server has gone away
复制代码
缘故原由分析
sql文件运行堕落,第一反应就是文件内容过大,后来发现是navicat软件默认限制了上传sql语句的大小,修改方法很简单。
解决办法
1、打开
工具--> 服务器监控-->mysql
如下图所示:
2、选择
变量 ,
找到
max_allowed_packect
,修改它的值为
999999448
即可。
如下图所示:
问题小结
在导入sql脚本过程中出现2006错误的情况很多,以下收集几种情况作为参考:
1) MySQL 服务宕了
判断是否属于这个缘故原由的方法很简单,进入mysql控制台,查看mysql的运行时长大概查看MySQL的报错日志,看看有没有重启的信息—— 如果uptime数值很大,表明mysql服务运行了很久了。说明近来服务没有重启过。 如果日志没有相干信息,也表名mysql服务近来没有重启过,可以继承查抄下面几项内容。
mysql> show global status like 'uptime';
+---------------+--------+
| Variable_name | Value |
+---------------+--------+
| Uptime | 125695 |
+---------------+--------+
1 row in set (0.00 sec)
复制代码
2) mysql连接超时
即某个mysql长连接很久没有新的请求发起,到达了server端的timeout,被server强行关闭。 此后再通过这个connection发起查询的时间,就会报错server has gone away (大部分PHP脚本就是属于此类)
mysql> show global variables like '%timeout';
+-----------------------------+----------+
| Variable_name | Value |
+-----------------------------+----------+
| connect_timeout | 10 |
| delayed_insert_timeout | 300 |
| have_statement_timeout | YES |
| innodb_flush_log_at_timeout | 1 |
| innodb_lock_wait_timeout | 50 |
| innodb_rollback_on_timeout | OFF |
| interactive_timeout | 28800 |
| lock_wait_timeout | 31536000 |
| net_read_timeout | 30 |
| net_write_timeout | 60 |
| rpl_stop_slave_timeout | 31536000 |
| slave_net_timeout | 60 |
| wait_timeout | 28800 |
+-----------------------------+----------+
13 rows in set (0.01 sec)
复制代码
wait_timeout 是28800秒,即mysql链接在无操作28800秒后被自动关闭
3) mysql请求链接进程被主动kill
这种情况和缘故原由二相似,只是一个是人为一个是MYSQL自己的动作
mysql> show global status like 'com_kill';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| Com_kill | 10 |
+---------------+-------+
1 row in set (0.00 sec)
复制代码
4) Your SQL statement was too large.
当查询的结果集凌驾 max_allowed_packet 也会出现如许的报错。定位方法是打出相干报错的语句。 用select * into outfile 的方式导出到文件,查看文件大小是否凌驾 max_allowed_packet ,如果凌驾则必要调解参数,大概优化语句。
mysql> show global variables like 'max_allowed_packet';
+--------------------+----------+
| Variable_name | Value |
+--------------------+----------+
| max_allowed_packet | 20971520 |
+--------------------+----------+
1 row in set (0.00 sec)
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
一给
金牌会员
这个人很懒什么都没写!
楼主热帖
C++面试八股文:std::array如何实现编 ...
嵌入式 Linux 内核驱动开发【The first ...
软件开发中,如何为你的代码构建三层防 ...
零基础入门 Java 后端开发,有哪些值得 ...
手把手教你如何使用kali破解wifi密码( ...
上古神兵,先天至宝,Win11平台安装和配 ...
你真的了解二叉树吗?(上篇) ...
京东云TiDB SQL优化的最佳实践 ...
3.2操作系统(基本分页存储管理的基本 ...
day04-视图和视图解析器
标签云
挺好的
服务器
快速回复
返回顶部
返回列表