我想问一下 Ubuntu 20.04 上 mysqldump 的问题(我正在使用 DBeaver,但所有应用程序以及从控制台转储时都存在同样的问题)。
我在讨论中找到了有关此问题的几个帖子,但没有什么能帮助我。
我能够从本地主机 (MySQL) 转储数据库,但无法从生产中转储 MariaDB 数据库。我尝试从更多主机转储数据库,但问题是一样的:Error 2013
以下是 DBeaver 的完整mysqldump
响应:
/usr/bin/mysqldump --column-statistics=0 --routines --add-drop-table --disable-keys --extended-insert -u myuser --host=myhost --port=3312 mydatabase
Task 'MySQL dump' started at Sat Apr 03 22:07:43 CEST 2021
mysqldump: Got error: 2013: Lost connection to MySQL server at 'reading final connect information', system error: 0 when trying to connect
Task 'MySQL dump' finished at Sat Apr 03 22:07:43 CEST 2021
2021-04-03 22:07:43.715 - IO error: Process failed (exit code = 2). See error log.
2021-04-03 22:07:43.716 - java.io.IOException: Process failed (exit code = 2). See error log.
at org.jkiss.dbeaver.tasks.nativetool.AbstractNativeToolHandler.validateErrorCode(AbstractNativeToolHandler.java:214)
at org.jkiss.dbeaver.tasks.nativetool.AbstractNativeToolHandler.executeProcess(AbstractNativeToolHandler.java:194)
at org.jkiss.dbeaver.tasks.nativetool.AbstractNativeToolHandler.doExecute(AbstractNativeToolHandler.java:254)
at org.jkiss.dbeaver.ext.mysql.tasks.MySQLNativeToolHandler.doExecute(MySQLNativeToolHandler.java:47)
at org.jkiss.dbeaver.tasks.nativetool.AbstractNativeToolHandler.lambda$0(AbstractNativeToolHandler.java:60)
at org.jkiss.dbeaver.runtime.RunnableContextDelegate.lambda$0(RunnableContextDelegate.java:39)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122)
mysqldump
配置:
[mysqldump]
quick
quote-names
max_allowed_packet = 1024M
非常感谢大家的帮助。
答案1
因此,这是相关的错误:
mysqldump: Got error: 2013: Lost connection to MySQL server at 'reading final connect information', system error: 0 when trying to connect
这意味着当 MySQL Dump 工具连接到远程 MySQL 服务器时,它无法从服务器获取连接信息 - 远程 MySQL 将您弹出,或者它没有监听外部连接。
默认情况下,MySQL 服务器和 MariaDB 会不是监听外部连接。您必须先配置它们以监听外部连接(盲目这样做之前您必须考虑一系列安全问题!),然后才能使用mysql
或mysqldump
任何通过这些协议进行通信的工具(DBeaver、DataGrip 等)连接到远程服务器/主机。