windows中mwdumper导入zhwiki的数据
我使用的是MWDumper is a quick little tool for extracting sets of pages from a MediaWiki dump file.导入mediawiki中的中文数据包.
首先需要强调的是download下的mwdumper.jar包,已经不能导入新版本的了,需要下载http://csomalin.csoma.elte.hu/~tgergo/wiki/mwdumper.jar这里的才能欲行,在windows下还是gui可视化界面,操作比较方便;
第二、运行时需要安装jdk1.5或以上,提示server/jvm.dll找不到,把java/jdk/jre/bin/server文件夹拷贝到java/jre/bin目录
第三、sql语法错误,查看mysql的数据库是否默认为utf8;
第四、 Duplicate entry主键重复,需要把要导入的表和字段字符集修改为 binary,或者是表中已有数据:
ALTER TABLE TEXT DEFAULT CHARACTER SET BINARY;
ALTER TABLE page DEFAULT CHARACTER SET BINARY;
ALTER TABLE revision DEFAULT CHARACTER SET BINARY;
delete from page;
delete from revision;
delete from text;
第五、字段太长被截取
Exception in thread "main" java.io.IOException: com.mysql.jdbc.MysqlDataTruncati
on: Data truncation: Data too long for column ‘rev_comment’ at row 809
at org.mediawiki.importer.XmlDumpReader.readDump(Unknown Source
解决办法:ALTER TABLE revision MODIFY COLUMN rev_comment BLOB NOT null
第六、性能提示:
max_allowed_packet = 128M
innodb_log_file_size = 100M
导入前先去掉 表的主键和索引;
把mysql的二进制日志先关掉;
自己导入900多万条数据,总共花费3个多小时.
欢迎转载,请注明出处:亲亲宝宝