簡體   English   中英

如何將大型wikipedia sql文件導入mysql數據庫?

[英]How to import a large wikipedia sql file into a mysql database?

我需要一個帶有“主題”的數據庫表,所以我下載了wikipedia的類別的sql文件(enwiki-latest-category.sql.gz, http ://dumps.wikimedia.org/enwiki/latest/)

該文件為74MB(解壓縮),但mysql限制為32MB。 我該如何導入這個文件?

順便說一句:我嘗試了bigdump(http://www.ozerov.de/bigdump/),但似乎也有32MB的導入限制。

您可以將其拆分為32MB並單獨導入。 它不應該太耗費時​​間。

如果您在Windows桌面上安裝了mysql,我可能會想要嘗試一些瘋狂的東西。

請在本地mysql框中執行以下步驟

  • 步驟01)將文件enwiki-latest-category.sql.gz解壓縮到enwiki-latest-category.sql

  • 步驟02) CREATE DATABASE mycat;

  • 步驟03)`mysql -u ... -p ... -Dmycat <enwiki-latest-category.sql

  • 步驟04)導出類別的CREATE TABLE

    mysqldump -u ... -p ... --no-data mycat category> category_00.sql

  • 步驟05)將數據轉儲為10個部分。 由於AUTO_INCREMENT為134526529,因此將其舍入為135000000(1.35億)。 一次轉儲20%(2700萬)

只需使用針對cat_id--where選項運行5個mysqldump

mysqldump -u... -p... --no-create-info mycat category --where="cat_id <=  27000000"                         | gzip > category_01.sql.gz
mysqldump -u... -p... --no-create-info mycat category --where="cat_id  >  27000000 AND cat_id <=  54000000" | gzip > category_02.sql.gz
mysqldump -u... -p... --no-create-info mycat category --where="cat_id  >  54000000 AND cat_id <=  81000000" | gzip > category_03.sql.gz
mysqldump -u... -p... --no-create-info mycat category --where="cat_id  >  81000000 AND cat_id <= 108000000" | gzip > category_04.sql.gz
mysqldump -u... -p... --no-create-info mycat category --where="cat_id  > 108000000"                         | gzip > category_05.sql.gz

上傳這6個文件,解壓縮並按順序加載。

試試看 !!!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM