如何在phpmyadmin中导入5 GB MySQL Dump文件

时间:2015-05-15 09:31:26

标签: php mysql

我想导入大约5 GB的sql文件。但它在加载时造成问题。有没有办法上传它而不拆分sql文件?

我试图通过终端导入,但也有很多错误。

请帮助我。

3 个答案:

答案 0 :(得分:2)

很可能您无法在PHPMyAdmin上导入5GB数据库。试试BigDump。您可以下载here。步骤如下所述。

Download and unzip bigdump.zip on your PC.

Open bigdump.php in a text editor, adjust the database configuration and dump file encoding.

Drop the old tables on the target database if your dump doesn’t contain “DROP TABLE” (use phpMyAdmin).

Create the working directory (e.g. dump) on your web server

Upload bigdump.php and the dump files (*.sql or *.gz) via FTP to the working directory (take care of TEXT mode upload for bigdump.php and dump.sql but BINARY mode for dump.gz if uploading from MS Windows).

Run the bigdump.php from your web browser via URL like http://www.yourdomain.com/dump/bigdump.php.

Now you can select the file to be imported from the listing of your working directory. Click “Start import” to start.

BigDump will start every next import session automatically if JavaScript is enabled in your browser.

Relax and wait for the script to finish. Do NOT close the browser window!
IMPORTANT: Remove bigdump.php and your dump files from your web server.

否则尝试命令行

mysql -u user_name -p database_name < path/to/the/file.sql

答案 1 :(得分:1)

如果你的apache没有启用最大文件大小5GB而不能导入这么大的文件。

使用php big dump工具我见过的最好的。它的免费和开源

http://www.ozerov.de/bigdump/

答案 2 :(得分:1)

方法1: - 如果您不熟悉命令行,并且您真的想要坚持使用GUI样式导入,那么您可以使用BigDump(http://www.ozerov.de/bigdump/)。

  • 我用了一次,但已经有一段时间了。根据我的记忆,你将下载一个名为bigdump.php的文件(附带一些说明)并将其放在你的网络服务器上,目录中的MySQL数据库转储文件太大而无法通过PHPMYADMIN导入。
  • 然后使用您的浏览器导航到它 - 类似http://your-website.com/bigdump.php

如果您熟悉命令行并使用基于Linux的系统,那么您可以使用如下代码:

mysql -u USERNAME -p DATABASENAME < FILENAME.sql
  • 在运行此命令之前,需要存在数据库和用户(具有数据库权限)。
  • 注意我从其他来源复制了上述命令。我总是这样做我的转储和恢复:DUMP:mysqldump -u DB_USER -h DB_HOST -pDB_PASSWORD DB_NAME | gzip -9&gt; DB_NAME.sql.gz恢复:gunzip&lt; PATH_TO_DUMP / DB_NAME.sql.gz | mysql -u DB_USER -pDB_PASSWORD DB_NAME

最后,也是最痛苦的,您可以选择将单个表或表组转储到足够小的转储中。然后通过PHPMYADMIN一次恢复这些单独的转储。

你也可以接近第二种方法:

方法2: - 你可以:

  • 增加memory_limit
  • 增加post_max_size
  • 增加max_execution_time
  • 完成所有这些后,
  • 必须重新启动Apache。
  • 或使用Big Dump