sql导入数据时总是报错,详见下图,请大神指导如何处理?文件格式改过多个版本,也没有空格或符号

sql导入数据时总是报错,详见下图,请大神指导如何处理?文件格式改过多个版本,也没有空格或符号,第1张

错误提示是列0 的问题,你的图中列0没有显示出来,

排查以下:

列0中是不是有空值,表中字段列0是否允许空。

列0是不是主键或外键,如果是练习或开发库,把约束去掉试试。

如果是主键,是否有重复,是否有空值,

如果是外键,对应的外键是否存在。

mysql导入sql文件报错的原因

1.在讨论这个问题之前,先介绍一下什么是“大数据量sql文件”。

导出sql文件。

导入mysql sql文件出错的原因,导入数据库出错的原因。

选择数据库-右键单击并选择转储SQL文件-选择结构和数据。保存文件db_mras.sql文件。

2.导入sql文件。在MYSQL中新建一个数据库db_mras。

导入mysql sql文件出错的原因,导入数据库出错的原因。

选择database——右击并选择“运行SQL文件”——选择文件db_mras.sql并运行它。

现在发现 *** 作失败,提示错误“MySQL服务器已经不在了”。为了解决这个问题,提出了以下解决方案:

这个错误意味着客户端和mysql之间的链接断开了,通常是因为sql运行时间太长或者sql文件太大。

排除问题原因:

(1)mysql服务宕机。

运行命令:显示全局状态,如“正常运行时间”;如果uptime的值很大,说明最近没有重启mysql服务。如果日志中没有相关信息,说明服务没有重启,可以排除这种可能。

(2)mysql链接超时

运行命令:显示像“% timeout”这样的全局变量;检查运行结果中wait_timeout的值,一般为28800。意味着mysql链接在误 *** 作28800秒后会被关闭。

(3)mysql文件过大

运行命令:显示像“max _ allowed _ packet”这样的全局变量;检查max_allowed_packet的值作为运行结果。如果太小,就需要调整。

解决方法:

在mysql的my.ini文件末尾添加以下文字:wait _ timeout = 2880000interactive _ time = 2880000max _ allowed _ packet = 16M

其中max_allowed_packet表示控制缓冲区的最大长度。wait_timeout表示无 *** 作环节的等待时间。

修改以上参数后重启mysql服务。

检查修改是否成功:运行命令:显示' % timeout '之类的全局变量;显示全局变量,如“max _ allowed _ packet”;

如果找不到my.ini文件,可以运行命令:MySQL–help | grep my . ini查找文件路径。

如果以上方法不能解决你的问题,你还需要检查一下你的mysql文件安装盘是否有足够的空间。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9983739.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存