在DBeaver mysql获取错误时,尝试导入大型SQL数据库文件

vltsax25  于 2023-04-10  发布在  Mysql
关注(0)|答案(5)|浏览(809)
C:\Program Files\MySQL\MySQL Server 5.7\bin\mysql.exe --host=localhost --port=3306 -u root nd7b265_rahetbally
Task 'MySQL script' started at Sun May 31 09:53:09 MST 2020
ERROR 2013 (HY000) at line 118827: Lost connection to MySQL server during query
Task 'MySQL script' finished at Sun May 31 09:53:13 MST 2020
2020-05-31 09:53:13.363 - IO error: Process failed (exit code = 1). See error log.
2020-05-31 09:53:13.363 - java.io.IOException: Process failed (exit code = 1). See error log.
    at org.jkiss.dbeaver.tasks.nativetool.AbstractNativeToolHandler.executeProcess(AbstractNativeToolHandler.java:182)
    at org.jkiss.dbeaver.tasks.nativetool.AbstractNativeToolHandler.doExecute(AbstractNativeToolHandler.java:237)
    at org.jkiss.dbeaver.tasks.nativetool.AbstractNativeToolHandler.lambda$0(AbstractNativeToolHandler.java:52)
    at org.jkiss.dbeaver.runtime.RunnableContextDelegate.lambda$0(RunnableContextDelegate.java:39)
    at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122)
vbopmzt1

vbopmzt11#

只需将连接设置从--host=localhost更改为--host=127.0.0.1
对我很有效。

1cklez4t

1cklez4t2#

通过右键单击DB〉SQL编辑器〉新建SQL脚本
执行以下查询:

set global net_buffer_length=1000000; 
set global max_allowed_packet=1000000000;

https://stackoverflow.com/a/18979736

vptzau2j

vptzau2j3#

OutOfMemoryError通常在Java虚拟机(JVM)已用完可分配的内存时发生。要在DBeaver中修复此问题,您可以尝试增加分配给JVM的内存。
找到dbeaver.ini文件:
在Windows上,它位于DBeaver安装目录(例如C:\Program Files\DBeaver)。在macOS上,右键单击DBeaver应用程序,单击“显示包内容”,然后导航到Contents/Eclipse。在Linux上,它位于/usr/share/dbeaver目录或您安装DBeaver的目录中。在文本编辑器中打开dbeaver.ini文件。
在文件中查找以下行:

-Xms64m
-Xmx1024m

这些值指定JVM的初始和最大内存分配。-Xms选项设置初始堆大小,-Xmx选项设置最大堆大小。
通过修改这些值来增加内存分配。例如,您可以将它们更改为:

-Xms128m
-Xmx2048m

此更改将初始堆大小设置为128 MB,最大堆大小设置为2048 MB(2 GB)。
将更改保存到dbaver.ini文件并关闭它。
重新启动DBeaver以使更改生效。
如果仍然遇到OutOfMemoryError,请尝试进一步增加-Xmx值。但是,请记住,为DBeaver分配过多内存可能会导致系统上的其他应用程序内存不足。请确保根据系统的可用内存分配合理的内存量。

qvtsj1bj

qvtsj1bj4#

在mysql客户端程序中,你可以配置maxallowedpacket如下。

在MySQL服务器上,max_allowed_package位于mysqld.conf(mysql5.7版本)中

如果数据库大小大于7GB,则必须使用256MB作为post https://stackoverflow.com/a/35599592

yb3bgrhw

yb3bgrhw5#

我通过添加这些线解决了它
wait_timeout = 28800 interactive_timeout = 28800 max_allowed_packet=100M
under [mysql] section

相关问题