Mysql导入sql文件可能出现的问题

Mysql导入sql文件可能出现的问题

1、可能出现的错误

本地导入sql文件时,出现‘MySQL server has gone away‘的错误

2、问题分析:

‘MySQL server has gone away‘的问题意思就是指client和MySQL server之间的链接断开了。造成这样的原因一般是sql操作的时间过长,或者是传送的数据太大。mysql根据配置文件会限制server接受的数据包大小。有时候大量数据的插入和更新会受max_allowed_packet 参数限制,导致写入或者更新失败。

3、解决办法:

查看目前配置:show VARIABLES like ‘%max_allowed_packet%‘;

以上说明目前的配置是:1M(1024*1024)

4、修改方法

1)修改配置文件(永久生效,需要重启才能生效)

编辑mysql的配置文件my.ini或者my.cnf(不同环境,mysql配置文件的后缀名可能不同)

max_allowed_packet = 20M(最大可输入256M即256*1024*1024)

2)命令行修改 (临时生效,好处是不用重启mysql,下次重启失效)

在mysql 命令行中运行:

set  global max_allowed_packet = 20M(最大可输入256M),然后退出命令行,重启mysql服务,再进入。

在命令行下改配置项的时候使用set global或者set session,设置完查看如果不生效只需退出命令行重新进入。

3)有时如果文件太大,需要配置这三项:

interactive_timeout = 120

wait_timeout = 120

max_allowed_packet = 32M

原文地址:https://www.cnblogs.com/hld123/p/12708367.html

时间: 2024-11-29 02:29:39

Mysql导入sql文件可能出现的问题的相关文章

mysql 导入sql文件时 max_allowed_packet 选项的设置

mysql根据配置文件会限制server接受的数据包大小. 有时候大的插入和更新会受max_allowed_packet 参数限制,导致写入或者更新失败. 查看目前配置 show VARIABLES like '%max_allowed_packet%'; 显示的结果为: +--------------------+---------+ | Variable_name      | Value   | +--------------------+---------+ | max_allowed_

mysql导入sql文件过大或连接超时的解决办法

原文:mysql导入sql文件过大或连接超时的解决办法 前段时间出差在现场开发的时候,导入数据库老是出问题.最后发现了一个神奇sql语句交给实施,只要导入出错就把如下语句执行就可以了.至今屡试不爽. set global max_allowed_packet=100 000 000; set global net_buffer_length=100000; SET GLOBAL interactive_timeout=28800 000; SET GLOBAL wait_timeout=2880

MySQL导入.sql文件及常用命令(转)

MySQL导入.sql文件及常用命令 在MySQL Qurey   Brower中直接导入*.sql脚本,是不能一次执行多条sql命令的,在mysql中执行sql文件的命令: mysql> source   d:/myprogram/database/db.sql; 另附mysql常用命令: 一) 连接MYSQL: 格式: mysql -h主机地址 -u用户名 -p用户密码 1.例1:连接到本机上的MYSQL 首先在打开DOS窗口,然后进入mysql安装目录下的bin目录下,例如: D:/mys

Mysql导入Sql文件时报Error Code: 2013 - Lost connection to MySQL server during query

MySql 有时我们导入sql文件,文件过大,导致Error Code: 2013 - Lost connection to MySQL server during query这种错误 执行以下: [sql] view plain copy print? SHOW GLOBAL VARIABLES LIKE '%timeout'; SET GLOBAL net_write_timeout=28800; SET GLOBAL net_read_timeout=100; SET GLOBAL con

MySQL导入.sql文件及常用命令

在MySQL Qurey   Brower中直接导入*.sql脚本,是不能一次执行多条sql命令的,在mysql中执行sql文件的命令: mysql> source   d:/myprogram/database/db.sql; 另附mysql常用命令: 一) 连接MYSQL: 格式: mysql -h主机地址 -u用户名 -p用户密码 1.例1:连接到本机上的MYSQL 首先在打开DOS窗口,然后进入mysql安装目录下的bin目录下,例如: D:/mysql/bin,再键入命令mysql -

MySQL导入SQL文件及常用命令

  在MySQL Qurey   Brower中直接导入*.sql脚本,是不能一次执行多条sql命令的,在mysql中执行sql文件的命令: mysql> source   d:/myprogram/database/db.sql; 另附mysql常用命令: 一) 连接MYSQL: 格式: mysql -h主机地址 -u用户名 -p用户密码 1.例1:连接到本机上的MYSQL 首先在打开DOS窗口,然后进入mysql安装目录下的bin目录下,例如: D:/mysql/bin,再键入命令mysql

使用DOS命令给mysql导入sql文件

总结一下用DOS命令操作mysql数据库的方法.之前没重视起来.现在发现这种方式挺快捷的.尤其是在服务器上没有mysql的图像化管理工具的时候. (1)首先要保证可以用命令行访问数据库,就是要在环境变量里配置一下path.把mysql文件夹的bin的路径写到path里: (2)然后 mysql -uroot -proot 注意后面不能加分号!!!: 用这种方式进入mysql数据库: (3)然后进入到要修改的数据库,比如要修改shop, use shop; use的意思大概是可以使用数据库了. (

Docker MySQL 导入sql文件

这里Docker MySQL容器名是:mysql56 要操作的sql文件是:backup.sql 查看MySQL容器名称 docker ps 拷贝sql文件到MySQL容器里 docker cp backup.sql mysql56:/backup.sql 进入MySQL容器 docker exec -it mysql56 bash 查看backup.sql [email protected]:/ls backup.sql ... 执行sql导入 mysql -uroot -p${you pwd

mysql导入sql文件过大或连接超时的解决的方法

前段时间出差在现场开发的时候,导入数据库老是出问题.最后发现了一个奇妙sql语句交给实施,仅仅要导入出错就把例如以下语句运行就能够了.至今屡试不爽. set global max_allowed_packet=100 000 000; set global net_buffer_length=100000; SET GLOBAL interactive_timeout=28800 000; SET GLOBAL wait_timeout=28800000 以上语句的解释: –max_allowe