Я пытаюсь импортировать файл .bz2 в базу данных MySql, но получаю эту ошибку:
Fatal error: Out of memory (allocated 386400256) (tried to allocate 378535937 bytes) in C:\wamp\apps\phpmyadmin4.6.4\libraries\plugins\import\ImportXml.php on line 90
Я пробовал так много решений, включая повышение upload_max_filesize
, memory_limit
а также post_max_size
Любая помощь могла бы быть полезна!
Если вы можете, используйте MySQL напрямую без PHP:
wget http://dumps.wikimedia.org/enwiki/latest/enwiki-latest-page.sql.gz
wget http://dumps.wikimedia.org/enwiki/latest/enwiki-latest-category.sql.gz
wget http://dumps.wikimedia.org/enwiki/latest/enwiki-latest-categorylinks.sql.gz
wget http://dumps.wikimedia.org/enwiki/latest/enwiki-latest-redirect.sql.gz
wget http://dumps.wikimedia.org/enwiki/latest/enwiki-latest-pagelinks.sql.gz
wget http://dumps.wikimedia.org/enwiki/latest/enwiki-latest-langlinks.sql.gz
gzip -d enwiki-latest-page.sql.gz
gzip -d enwiki-latest-category.sql.gz
gzip -d enwiki-latest-categorylinks.sql.gz
gzip -d enwiki-latest-redirect.sql.gz
gzip -d enwiki-latest-pagelinks.sql.gz
gzip -d enwiki-latest-langlinks.sql.gz
# Don't need this if MySQL is configured correctly.
# SET GLOBAL innodb_file_per_table = 1;
# SET GLOBAL general_log = 'OFF';
# SET FOREIGN_KEY_CHECKS=1;
# SET GLOBAL character_set_server = utf8mb4;
# SET NAMES utf8mb4;
CREATE DATABASE wiki_en; USE wiki_en;
# Don't need this if MySQL is configured correctly.
# ALTER DATABASE wiki_en CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;
mysql -u root -p wiki_en < enwiki-latest-page.sql
mysql -u root -p wiki_en < enwiki-latest-redirect.sql
mysql -u root -p wiki_en < enwiki-latest-category.sql
mysql -u root -p wiki_en < enwiki-latest-categorylinks.sql
mysql -u root -p wiki_en < enwiki-latest-pagelinks.sql
mysql -u root -p wiki_en < enwiki-latest-langlinks.sql
# Indicative filesizes:
# -rw-r--r-- 1 root root 35G Jun 2 07:01 enwiki-latest-pagelinks.sql
# -rw-r--r-- 1 root root 13G Jun 2 07:45 enwiki-latest-categorylinks.sql
# -rw-r--r-- 1 root root 4.3G Jun 2 11:08 enwiki-latest-page.sql
# -rw-r--r-- 1 root root 900M Jun 2 11:03 enwiki-latest-langlinks.sql
# -rw-r--r-- 1 root root 378M Jun 2 11:10 enwiki-latest-redirect.sql
# -rw-r--r-- 1 root root 117M Jun 2 11:03 enwiki-latest-category.sql
Если вы действительно должны использовать PHP, вам нужно установить предел памяти для PHPMyAdmin (см. этот ответ), а также убедитесь, что вы запускаете MySQL выше.
Других решений пока нет …