2014-10-29 73 views
1

我倾倒了一个Mediawiki的一个实例使用的MySQL数据库。我将这个数据库迁移到另一台机器并重新安装了Mediawiki。旧机器仍在运行并获得新帖子。我如何才能将这些新帖子迁移到新机器?如果只是做一个新的转储并将其迁移到新的机器,它将工作?如何仅将新帖子从一个Mediawiki MySQL迁移到另一个?

+0

importDump.php应该不会重新导入修订表中已存在的修订。 – Nemo 2015-10-18 20:12:50

回答

1

如果有你的新维基没有编辑,你可以先走一步,再次进行完全转储/进口:

在你的旧服务器:

mysqldump --user=USERNAME --password=PASSWORD --host=DB.MYWIKI.COM wikidb > dbdump.sql 

在新的服务器:

mysql --user=USERNAME --password=PASSWORD wikidb < dbdump.sql 

这将覆盖现有的所有表。

如果出于某种原因需要导出/导入晚于特定日期修订的页面,可能最容易使用the Recent Changes API来获取最近更改的所有页面的列表,例如, action=query&list=recentchanges&rcprop=title,然后通过Special:Export导出这些页面。您将得到一个XML转储,然后您可以通过Special:Import导入。当进行转储,你甚至可以指定你只想在某个日期之后的变化,如:

https://en.wikipedia.org/w/index.php?title=Special:Export&pages=Main_Page%0AStack%20overflow&offset=2014-10-27T20:25:56Z&limit=5 

注名字将会与奇分隔符:%0A。进行导出时,请参阅https://www.mediawiki.org/wiki/Manual:Parameters_to_Special:Export以获取更多选项

相关问题