将SQL文件导入MySQL数据库时遇到1118错误的解决方法

Chenry.r 2024-10-15 21:28:46编程技术
199

在数据库管理过程中,将SQL文件导入MySQL数据库是一项常见且重要的任务。然而,许多用户在执行这一操作时遇到了1118错误,这不仅影响了工作的顺利进行,也带来了不少困惑。本文旨在深入探讨这一问题的原因,并提供一系列有效的解决方案,帮助用户顺利解决1118错误,确保数据的正确导入。

mysql数据库

一、 问题描述

提示:具体错误如下

[ERR] 1118 - Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.

二、 原因分析

与发送SQL文件的同事沟通他说可能是他用的MySQL版本是5.7的而我用的是8.0的版本的问题,具体是否后边我也没有做验证了

网上搜索的原因大致是说

“在执行创建表或者增加字段时,发现row size长度过长,会导致出现以下错误”

三、 解决方案

1、执行以下SQL语句,查看严格模式是否是开启

// 查看严格模式是否是开启(这里在Navicat新建查询里运行也是一样的)
show variables like '%innodb_strict_mode%';

2、执行后如果为ON,则需要关闭

Variable_name			Value
innodb_strict_mode		ON

3、找到MySQL的配置文件位置

我的位置如  D:\Users\Work\Software\MySql\MySQL Data\my.ini,可查看系统变量找到安装目录。

右键编辑,在[mysqld]配置项下面新增一行

//在[mysqld]下面新增
innodb_strict_mode=0

4、保存,然后重启MySQL服务

// 再次执行以下SQL语句,查看严格模式是否是关闭

show variables like '%innodb_strict_mode%';
Variable_name			Value
innodb_strict_mode		OFF

如果为OFF,则说明执行成功。再导入试试,我就是使用此方法解决,导入就没问题了!

总结

通过本文的探讨,我们了解了在将SQL文件导入MySQL数据库时遇到1118错误的常见原因,主要是由于INSERT语句中的数据行超过了表的最大行数限制。并提供了详细的解决方法。希望本文能够帮助用户顺利解决1118错误,提高数据导入的成功率和效率。在未来的数据库管理过程中,合理规划表结构和数据导入方案,将有助于避免类似问题的发生。

sql文件 mysql数据库
THE END
ZhanShen
把烦恼扔进夕阳里,和星星一起沉沦。

相关推荐

MySQL使用CONCAT()函数实现字符串拼接的方法详解
在数据库操作中,字符串拼接是一个常见且实用的需求。MySQL 提供了多种字符串处理函数,其中 CONCAT() 函数是最常用的一种。它可以帮助我们轻松实现字符串的拼接操作。本文将...
2025-01-16 编程技术
159

mysql数据库中的limit和offset使用方法详解
MySQL作为最流行的开源关系型数据库管理系统之一,提供了多种工具和语法来高效地管理和查询数据。其中,LIMIT 和 OFFSET 是两个非常有用的子句,用于分页显示查询结果。本文将...
2025-01-15 编程技术
165

MySQL中DATEDIFF()函数的使用方法及示例详解
MySQL提供了多种内置函数来简化这一过程,其中DATEDIFF()函数是一个非常常用的工具。它可以用来计算两个日期之间的天数差异,这对于数据分析、报表生成以及各种业务逻辑的实现...
2025-01-13 编程技术
164

MySQL中Update与Select结合使用的多种方式详解
MySQL 提供了多种方式将UPDATE和SELECT语句结合使用,以实现从一个表中选择数据并更新另一个表中的记录。本文将详细介绍几种常见的结合使用UPDATE和SELECT的方法,包括内连接...
2025-01-12 编程技术
170

MySQL配置文件my.cnf与my.ini的路径及区别详解
对于MySQL用户而言,熟悉并理解其配置文件——特别是my.cnf(在非Windows系统中)和my.ini(在Windows系统中)的路径及区别,是优化数据库性能、提升安全性的重要一步。本文将深入...
2025-01-09 编程技术
179

Mysql占用CPU过高经常100%的原因及解决方法
MySQL作为广泛使用的关系型数据库管理系统,其性能优化一直是数据库管理员和开发人员关注的焦点。然而,在实际应用中,MySQL的CPU使用率有时会异常升高,甚至达到100%,严重影...
2025-01-08 编程技术
174