12

我得到了一个非常大的 mysql 备份文件。它大约是 630 MB……我猜有人认为将图像存储在数据库中是个好主意……无论如何,我需要以某种方式在 MySQL 中恢复数据。但由于文件大小,我无法完成它。

起初我尝试用 MySQL Workbench 来做。但是当我尝试导入文件时,它给了我以下错误:

无法分配 xxxxx 字节来读取文件 C:\backup.sql

然后我尝试通过命令提示符进行操作。我输入了以下内容cmd

C:\> mysql -u user -pPassword database < C:\backups.sql

这最终给了我以下警告:

ERROR 2006 (HY000) at line 68230: MySQL server has gone away

猜猜这也是因为大文件?

我对如何恢复数据没有其他想法。这仍然可能吗?

4

2 回答 2

12

增加wait_timeout和/或interactive_timeout应该有帮助。首先检查当前值:

C:\> mysql -hlocalhost -uroot -proot

mysql> SHOW VARIABLES LIKE 'wait_timeout';

如果这非常低(例如 30 秒),则增加它(例如 5 分钟):

mysql> SET SESSION wait_timeout = 300;
mysql> SET SESSION interactive_timeout = 300;

然后执行你的 SQL 文件:

mysql> \. database.sql
于 2013-01-04T17:01:30.213 回答
3

我有一个 3.5G 的转储文件,我尝试使用 PhpMyAdmin 和 MySql 工作台导入它,但没有成功。所以我只是用控制台来运行它

# mysql -u user_name -pYour_passwd your_db < your_dump.sql

效果很好

于 2015-02-02T09:43:52.750 回答