首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未导入大型mysql转储

问未导入大型mysql转储
EN

Stack Overflow用户
提问于 2014-05-03 05:49:41
回答 3查看 5.7K关注 0票数 4

我有一个名为dbBACKUP.sql的mysql转储,名为152MB。它有成千上万的记录。我使用以下命令导入它:

代码语言:javascript
复制
mysql -u root -p --default-character-set=utf8 phpbb3 < dbBACKUP.sql

在提供根目录的密码后,我转到phpmyadmin检查导入到数据库的数据。我注意到总行数和总大小的变化(以MB为单位)导入的数据量缓慢增加,直到看起来每次刷新phpmyadmin都没有任何变化。

我相信这可能是服务器的内存问题。是否有任何配置设置允许增加MySQL使用的内存。甚至有什么解决方案来提高这个任务的性能?

这发生在我自己的桌面上,基于Windows 7 64位。Mysql服务器为5.6.16

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-05-03 11:27:56

我搜索了一下google,发现了一个可能对你有帮助的博客:http://cmanios.wordpress.com/2013/03/19/import-a-large-sql-dump-file-to-a-mysql-database-from-command-line/

代码语言:javascript
复制
-- connect to database
mysql -u root -p

-- set network buffer length to a large byte number.
set global net_buffer_length=1048576;

-- set maximum allowed packet size to a large byte number.
set global max_allowed_packet=1073741824;

-- set read buffer size to a large byte number.
set global read_buffer_size=2147479552;

-- disable foreign key checking to avoid delays,errors and unwanted behaviour 
SET foreign_key_checks = 0;

-- import your sql dump file
source C:\[your_path]\dbBACKUP.sql

-- enable foreign key checking after import
SET foreign_key_checks = 1;
票数 4
EN

Stack Overflow用户

发布于 2014-05-03 11:06:24

尝试使用源代码命令,而不是重定向sql文件。

代码语言:javascript
复制
mysql -u root -p --default-character-set=utf8
use phpbb3
source /full/path/to/your/dbBACKUP.sql
票数 3
EN

Stack Overflow用户

发布于 2017-04-10 08:12:28

另外,您还必须为客户机和守护进程mysqld服务器更改它。更改mysqld部分下的my.cnf或my.ini文件并设置max_allowed_packet=1000M,或者在连接到同一服务器的MySQL控制台中运行这些命令:

代码语言:javascript
复制
    set global net_buffer_length=1000000000; 
    set global max_allowed_packet=1000000000;

对数据包大小使用一个非常大的值,因为它们以字节为单位,然后重新启动MySQL服务器。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23440800

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档