我有一个名为dbBACKUP.sql的mysql转储,名为152MB。它有成千上万的记录。我使用以下命令导入它:
mysql -u root -p --default-character-set=utf8 phpbb3 < dbBACKUP.sql在提供根目录的密码后,我转到phpmyadmin检查导入到数据库的数据。我注意到总行数和总大小的变化(以MB为单位)导入的数据量缓慢增加,直到看起来每次刷新phpmyadmin都没有任何变化。
我相信这可能是服务器的内存问题。是否有任何配置设置允许增加MySQL使用的内存。甚至有什么解决方案来提高这个任务的性能?
这发生在我自己的桌面上,基于Windows 7 64位。Mysql服务器为5.6.16
发布于 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/
-- 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;发布于 2014-05-03 11:06:24
尝试使用源代码命令,而不是重定向sql文件。
mysql -u root -p --default-character-set=utf8
use phpbb3
source /full/path/to/your/dbBACKUP.sql发布于 2017-04-10 08:12:28
另外,您还必须为客户机和守护进程mysqld服务器更改它。更改mysqld部分下的my.cnf或my.ini文件并设置max_allowed_packet=1000M,或者在连接到同一服务器的MySQL控制台中运行这些命令:
set global net_buffer_length=1000000000;
set global max_allowed_packet=1000000000;对数据包大小使用一个非常大的值,因为它们以字节为单位,然后重新启动MySQL服务器。
https://stackoverflow.com/questions/23440800
复制相似问题