我转储了一个Mediawiki实例使用的MySQL数据库。我将此数据库迁移到另一台计算机并重新安装了Mediawiki。旧机器仍在运行并获得新帖子。如何仅将这些新帖子迁移到新计算机?如果只是进行新转储并将其迁移到新机器,它会起作用吗?
答案 0 :(得分: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